Commit Graph

441 Commits

Author SHA1 Message Date
Rebecca Turner
b31778bdd8 Add Sudo type (#221)
* Create `Sudo` type and `SudoKind` enum

* Fix build

* reformat

* Fix choco on windows

* Fix linux

* Fix linux more

* more fix stuff hehe hoho hahaha

* more fix stuff hehe hoho hahaha

Co-authored-by: Thomas Schönauer <37108907+DottoDev@users.noreply.github.com>
2022-11-25 22:19:32 +00:00
Julien ITARD
3c1dda0c39 Add RubyGems update (#217) 2022-11-24 19:21:03 +00:00
Ruben Molina
25c5057171 Add support for juliaup (#208)
* Add support for juliaup

* Update config.rs

* Change the position for Juliaup Step.

* Update generic.rs
2022-11-24 19:17:58 +00:00
Rebecca Turner
e456155562 Add pre_sudo option (#219)
* Add `pre_sudo` option
2022-11-24 19:15:43 +00:00
Rebecca Turner
8e9c3cc56a Add gup (#203) 2022-11-23 15:24:58 +00:00
Thomas Schönauer
7cdaefe3b0 --yes flag support on freebsd (#198)
* Adds freebsd yes flag support

* Fixes freebsd update functions

* Missing semicolon

* Adds Step dependency to freebsd.rs

* Change freebsd to status_checked
2022-11-23 15:24:58 +00:00
Rebecca Turner
41e2321b93 Use tracing (#174) 2022-11-23 15:24:58 +00:00
Thomas Schönauer
04a8d960a9 Revert " Fix unattended package upgrades on FreeBSD" (#188)
Revert " Fix unattended package upgrades on FreeBSD (#181)"

This reverts commit a0ad83a58b.
2022-11-23 15:24:58 +00:00
Yonas Yanfa
2c6a8f73fa Fix unattended package upgrades on FreeBSD (#181)
* Fix unattended package upgrades on FreeBSD

* Fix unattended package upgrades on FreeBSD

Co-authored-by: Thomas Schönauer <37108907+DottoDev@users.noreply.github.com>
2022-11-23 15:24:58 +00:00
Rebecca Turner
71883d7164 Fix tmux panic (#165)
Fix `tmux` sessions

This will create a new session named `topgrade`, `topgrade-1`,
`topgrade-2`, using the first nonexistent session name it finds. That
session will have a window in it named `topgrade` in which `topgrade` is
run. If `topgrade --tmux` is being run from within tmux, it won't attach
to the new tmux session. If the user is not currently in tmux, it will
attach to the newly-created session.

Co-authored-by: Thomas Schönauer <37108907+DottoDev@users.noreply.github.com>
2022-11-23 15:24:58 +00:00
Rebecca Turner
d4fe748814 Run fisher if fish -c 'type -t fisher' is OK (#172) 2022-11-23 15:24:58 +00:00
Rebecca Turner
2cbb7db66d Use color_eyre (#173) 2022-11-23 15:24:58 +00:00
Rebecca Turner
e84173be8f Add CommandExt trait (#146)
* Color CI output

* Improve `CommandExt`

* Add comments explaining `#[allow]`s

* Remove useless `dead_code` annotation

* Improve error messages

* Print errors when running a shell errors

* fixup! Remove useless `dead_code` annotation
2022-11-23 15:24:58 +00:00
Thomas Schönauer
bd34a3bcd4 Revert "10.2.0 release " (#215)
Revert "10.2.0 release  (#213)"

This reverts commit 13076fcef6.
2022-11-23 16:23:00 +01:00
Thomas Schönauer
13076fcef6 10.2.0 release (#213) 2022-11-23 15:18:09 +00:00
Rebecca Turner
55ba2d30c1 Quote arguments when executing in a shell (#118)
* Quote arguments when executing in a shell

Fixes #107

* Parse quotes in `tmux_arguments`

This makes it possible to encode spaces in arguments. Maybe the config
value should be an array instead?

* Print error causes

Co-authored-by: Thomas Schönauer <37108907+DottoDev@users.noreply.github.com>
2022-11-03 16:46:43 +00:00
pan93412
623a11cf21 refactor!(steps/node): make PNPM a separated step (#114) 2022-11-03 15:57:16 +01:00
Benjamin Stürz
f26e48acca OpenBSD support (#104) 2022-11-02 10:00:10 +00:00
Rebecca Turner
dc07144918 Add fundle step (#90) 2022-10-31 06:05:43 +00:00
Rebecca Turner
d8bac65317 Add rcm step (#91) 2022-10-31 06:05:12 +00:00
Rebecca Turner
18cec5c9fa Add ghcup step (#89) 2022-10-30 16:34:14 +00:00
LeSnake04
639c7fd422 feat: added distrobox (#76) 2022-10-26 22:12:38 +00:00
Thomas Schönauer
347372ca71 Resolves clippy errors, please review!!! (#60) 2022-10-23 11:34:30 +00:00
Thomas Schönauer
366a742d40 Added Protonup support 2022-10-14 16:46:21 +02:00
DottoDev
a9d5d24a35 Clean up OPAM if requested (#12)
OPAM has a built-in `clean` command that automatically
removes download caches, logs, and cleans the current
OPAM switch. We should call `opam clean` when the
cleanup flag is set.

Authored-by: Victor Song <vms2@rice.edu>
Approved-by: Thomas Schönauer <t.schoenauer@hgs-wt.at>
2022-10-10 20:24:41 +00:00
DottoDev
2d94eb974f feat: flag and config to skip notifications by jlucktay (#5)
* feat: flag and config to skip notifications

At the end of a run, topgrade normally sends a system notification.
This change adds a command-line flag and a config-file option to
disable this behaviour.

* fix: clippy issues

Also derive Eq where PartialEq is being derived.
https://rust-lang.github.io/rust-clippy/master/index.html#derive_partial_eq_without_eq

Authored-by: James Lucktaylor <jlucktay+github@gmail.com>
Approved-by: Thomas Schönauer <t.schoenauer@hgs-wt.at>
2022-10-10 20:21:20 +00:00
DottoDev
3f7614b885 feat: add support for bun (#7)
Authored-by: Matthieu Vion <contact@mvion.fr>
Approved-by: Thomas Schönauer <t.schoenauer@hgs-wt.at>
2022-10-10 20:16:13 +00:00
DottoDev
ffe8613b2e add pacdef support (#4)
Authored-by: arctic-penguin <arctic-penguin@users.noreply.github.com>
Approved-by: Thomas Schönauer <t.schoenauer@hgs-wt.at>
2022-10-10 20:09:24 +00:00
DottoDev
6bfdc4974b Add yarn support. Fix #958 (#15)
Authored-by: 0xMRTT <0xMRTT@tuta.io>
Approved-by: Thomas Schönauer <t.schoenauer@hgs-wt.at>
2022-10-10 20:08:11 +00:00
DottoDev
057fc3b533 Add step for updating Julia packages (#2)
* Add step for updating julia packages

* Appease clippy

Authored-by: Jules Bertholet <julesbertholet@quoi.xyz>
Approved-by: Thomas Schönauer <t.schoenauer@hgs-wt.at>
2022-10-10 18:29:56 +00:00
DottoDev
5dffa2c6cc Add new step: GNU Guix by JamesClarke7283 (#1)
* Added new step: guix (basic support)

* Fixed clippy errors and better practice, Thanks To guidence from @enchant97 <Leo Spratt>

* Removed accidental swp file, as pointed out by @strangelittlemonkey in pull request #982

Authored-by: James Clarke <james@james-clarke.ynh.fr>
Approved-by: Thomas Schönauer <t.schoenauer@hgs-wt.at>
2022-10-10 18:03:34 +00:00
Roey Darwish Dror
4e6f48caef Sparkle for updates (#950) 2022-06-17 11:10:21 +03:00
Roey Darwish Dror
85f96647a4 Don't make pnpm a seperate step (#944)
Fixes #938
2022-05-26 17:32:26 +00:00
Roey Darwish Dror
dcf58911bd Mac OS fails to upgrade Homebrew in custom location (#930)
Fixes #673
2022-05-13 17:59:13 +00:00
Roey Darwish Dror
c166d51fb8 Add --custom-command (#927)
* Add --custom-command
Fixes #922

* fix
2022-05-07 12:25:51 +00:00
Roey Darwish Dror
fdf03f6548 Support deb-get (#925) 2022-05-07 06:14:20 +00:00
Roey Darwish Dror
8e7fd6772d Add the --env flag (#926)
#915
2022-05-07 05:11:53 +00:00
morero
08e8b56b75 Add: Add new zsh plugin "zi" (#921) 2022-05-06 15:37:28 +00:00
Roey Darwish Dror
71ce5c8d30 Use rustls (fix #906) (#908) 2022-04-30 13:17:27 +00:00
Roey Darwish Dror
336f529410 "Ultimate vimrc" support (#904)
* "Ultimate vimrc" support
Fixes #856

* Fix

* fix
2022-04-23 12:39:58 +00:00
Roey Darwish Dror
14809322b4 Vagrant boxes (#905) 2022-04-23 12:09:54 +00:00
Marcin Puc
020a0619b8 Upgrade arg parsing to clap v3, take two (#900)
* Upgrade arg parsing to clap v3

* Bump Rust version in CI to 1.57.0

* Make clippy happy

Co-authored-by: Roey Darwish Dror <roey.ghost@gmail.com>
2022-04-23 13:35:06 +03:00
Aditya Alok
ff7a4f3df9 Fix building for Android, enable tlmgr updates (#896)
* fix(os/unix): cannot find `SkipStep` while building for android

ERROR: cannot find function, tuple struct or tuple variant `SkipStep`

Disable updating gnome extensions for Android.

Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>

* feat: enable `tlmgr` updates for android

Signed-off-by: Aditya Alok <dev.aditya.alok@gmail.com>
2022-04-22 23:20:17 +03:00
Roey Darwish Dror
d0e1212700 Don't run gnome shell extensions if unneeded (fix #835) (#893)
* Don't call gnome shell extensions if it's not registered in dbus (fix #835)

* fix

* Execute-elevated (#892)

* Introduce the execute elevated method (fix #885)

* fmt

* Fix nix with doas

* Bad import

* No gnome in macOS

* Unused imports
2022-04-11 20:15:18 +03:00
John Karahalis
e7485de501 Fix capitalization of GitHub 2022-04-04 09:35:38 +03:00
Roey Darwish Dror
13104a029c Add option to control the time display (fix #860) 2022-03-29 03:48:02 +03:00
Roey Darwish Dror
8dd2eb7532 Remove silnite (fix #873) 2022-03-29 03:18:03 +03:00
Armel Soro
ca4ffac6fb Add support for upgrading GitHub CLI Extensions 2022-03-23 22:31:58 +02:00
Funky185540
72ee6598a6 Upgrade podman/docker containers (#850)
* containers: Pull newer versions of containers

Allows topgrade to update a users containers. It will automatically skip
containers which come from the `localhost` repo as these are self-built.
Respects the version number the containers were initially checked out
with in order not to introduce semver-breaking changes.

Works with podman and docker.

* topgrade: Add 'containers' step

* containers: Ignore some errors for docker

This patch is needed to achieve compatibility between docker and podman.
In particular, docker doesn't store/tell the user from which repository
(i.e. `hub.docker.com`, or `registry.fedoraproject.org`) a container
originates. This has the side-effect, that self-built containers cannot
be distinguished from publicly available containers. Therefore this
patch introduces an exception to the error handling when pulling, by
scanning the output of the `docker pull` command. If it finds the
`registry does not exist` substring in the output, it will skip the
container but **NOT** consider the whole update step failed.

* containers: Skip '<none>' containers

that result from either intermediate products of a container build or
when images are dangling.

* steps: containers: simplify error handling

And don't return errors from within the "unknown container registry"
handling, since that would immediately terminate the whole update which
isn't intended.
2022-03-05 22:00:07 +02:00
Sven Hergenhahn
afa3171d99 Add zgenom zsh plugin manager (#862)
- add the required functionality for zgenom
 - fix the env::var for zinit - it should be ZINIT_HOME, not ZBXF, as
   this is also set in zgenom, but makes topgrade fail when zinit is not
   installed

Co-authored-by: Sven Hergenhahn <sven.hergenhahn@dm.de>
2022-03-05 22:00:07 +02:00