Coder Social home page Coder Social logo

gotduc's Introduction

Tiny Driver Update Checker

A tiny (and multi-platform!) GPU update checker written in Golang.

Purpose

This package aims to create a quick and silent GPU driver upgrade experience. Where other packages want to continuously add features, we aim to only silently download and install the newest drivers for your GPU with very little system overhead.

Goals

  • windows compatible
  • linux compatible
  • nvidia compatible
  • amd compatible
  • intel compatible

Pipeline

To keep things actually tiny, we must adhear to a specific order of operations.

  • Get GPU information
  • Get locally installed driver version
  • Get newest online driver version
  • Compare driver versions, break if already on newest version
  • Ask user if they would like to defer, or download/install
  • If accept download, download newest driver to temp directory
  • Silently run installer as a clean installation

Known Issus

  • Have to use custom version of ghw
    • current online version does not properly pull driver info
    • see my pull request
  • Only features checked off in the Pipleine section are complete

Arguments (todo)

TDUC.go is designed to support the following arguments:

  • --dryrun: checks if drivers are to be updated, but does not install updates
  • --accept: automatically grants permission to install the newest driver (if there is one)
  • --silent: automatically grants permission to install the newest driver (if there is one) silently in the background

gotduc's People

Contributors

hingino avatar

Watchers

 avatar

gotduc's Issues

Implement Windows + Nvidia

Implement for Windows + Nvidia machines.

The best place to start is going to be Win+Nvidia as that is the configuration of the machine I started this project for

Steps

  1. Verify all steps in the pipeline are implemented
  2. Test on Windows machine

Implement Windows + Intel

Implement for Linux + Nvidia machines.

After Windows is implemented, I can move on to Linux systems

  1. Verify all steps in the pipeline are implemented
  2. Test on Linux machines
    • Ubuntu
    • Debian
    • Fedora
    • CentOS Stream
    • RHEL
    • Arch

Write hwinfo_test.go

hwinfo_test.go

I would like to have tests implemented as packages are completed. This is the first one.

Implement Linux + Nvidia

Implement for Linux + Nvidia machines.

After Windows is implemented, I can move on to Linux systems

  1. Verify all steps in the pipeline are implemented
  2. Test on Linux machines
    • Ubuntu
    • Debian
    • Fedora
    • CentOS Stream
    • RHEL
    • Arch

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.