Coder Social home page Coder Social logo

icodein / topgrade Goto Github PK

View Code? Open in Web Editor NEW

This project forked from topgrade-rs/topgrade

0.0 1.0 0.0 2.71 MB

Upgrade all the things

Home Page: https://topgrade-rs.github.io/

License: GNU General Public License v3.0

Shell 1.10% Emacs Lisp 0.14% Rust 98.34% Vim Script 0.39% KakouneScript 0.03%

topgrade's Introduction

Topgrade

GitHub Release crates.io AUR Homebrew

Demo

Introduction

Note This is a fork of topgrade by r-darwish to keep it maintained.

Keeping your system up to date usually involves invoking multiple package managers. This results in big, non-portable shell one-liners saved in your shell. To remedy this, Topgrade detects which tools you use and runs the appropriate commands to update them.

Installation

Packaging status

Other systems users can either use cargo install or the compiled binaries from the release page. The compiled binaries contain a self-upgrading feature.

Topgrade requires Rust 1.60 or above.

Usage

Just run topgrade.

Visit the documentation at topgrade-rs.github.io for more information.

Warning Work in Progress

Customization

See config.example.toml for an example configuration file.

Configuration Path

The configuration should be placed in the following paths depending on the operating system:

  • Windows - %APPDATA%/topgrade.toml
  • macOS and other Unix systems - ${XDG_CONFIG_HOME:-~/.config}/topgrade.toml

Remote Execution

You can specify a key called remote_topgrades in the configuration file. This key should contain a list of hostnames that have Topgrade installed on them. Topgrade will use ssh to run topgrade on remote hosts before acting locally. To limit the execution only to specific hosts use the --remote-host-limit parameter.

Contribution

Problems or missing features?

Open a new issue describing your problem and if possible provide a solution.

Missing a feature or found an unsupported tool/distro?

Just let us now what you are missing by opening an issue. For tools, please open an issue describing the tool, which platforms it supports and if possible, give us an example of its usage.

Want to contribute to the code?

Just fork the repository and start coding.

Contribution Guidelines

  • Check if your code passes cargo fmt and cargo clippy.
  • Check if your code is self explanatory, if not it should be documented by comments.
  • Make a pull request to the dev branch for new features or to the bug-fixes branch for bug fixes.

Roadmap

  • Add a proper testing framework to the code base.
  • Add unit tests for package managers.
  • Split up code into more maintainable parts, eg. putting every linux package manager in a own submodule of linux.rs.

topgrade's People

Contributors

0xmrtt avatar 9999years avatar akeshihiro avatar alexanderwillner avatar bors[bot] avatar br1ght0ne avatar derphilipp avatar divinegod avatar dottodev avatar drrlvn avatar ericmarkmartin avatar ermshiperete avatar funky185540 avatar guihkx avatar hugoh avatar idanski avatar jasikpark avatar lesnake04 avatar mcofficer avatar ncrazed avatar niheaven avatar openjck avatar paescuj avatar pan93412 avatar r-darwish avatar rm3l avatar smcavoy avatar tennox avatar tranzystorekk avatar xeruf avatar

Watchers

 avatar

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.