Commit Graph
527 Commits
Author SHA1 Message Date
Samuel Talbot dbb14eb5b5 resolve issues 2024-04-05 08:43:57 +13:00
Samuel Talbot fd1ba3ff2a fix package info 2024-04-05 08:01:09 +13:00
Samuel Talbot 1db032dd5c clippy and formatting 2024-04-04 19:53:29 +13:00
Book-reader cf64bb0f72 improve regex and comment regex 2024-04-04 18:59:06 +13:00
Book-reader 9a8949227f add void backend to readme 2024-04-04 18:39:49 +13:00
Book-reader f947b8e56a add void backend 2024-04-04 17:34:46 +13:00
steven-omaha ceaccc8748 style(rustup): add empty lines 2024-04-03 17:51:13 +02:00
steven-omaha 99210e8599 refact(rustup): add todo 2024-04-03 17:50:56 +02:00
steven-omaha 98e6e7f2c6 refact(rustup): remove unused mut 2024-04-03 17:47:58 +02:00
steven-omaha 5f6384b6b3 refact(rustup): get_all_installed_packages 2024-04-03 17:46:34 +02:00
steven-omaha 937efc3782 refact(rustup): make_dependency panic
calling this would be a programming error, therefore a panic is warranted
2024-04-03 17:42:57 +02:00
steven-omaha 2952b7ba44 doc(template,bug): config yaml 2024-04-03 12:53:59 +02:00
steven-omaha 313493c0f4 doc(template): feature request 2024-04-03 12:32:36 +02:00
steven-omaha 7b21120144 doc(template,backend): implement checkbox 2024-04-03 12:26:07 +02:00
steven-omaha 78039738f1 doc(template): backend request 2024-04-03 12:20:04 +02:00
steven-omaha ee72e5fae3 doc(issue,bug): pacdef config file 2024-04-03 12:14:34 +02:00
steven-omaha 8766e75238 doc(issue-template): version shell render 2024-04-03 11:59:13 +02:00
steven-omaha 7905ec777b doc(issue-template): multiline value 2024-04-03 11:57:43 +02:00
steven-omaha 9ce6dfb3ce doc(issue-template): reproduction, formatting 2024-04-03 11:54:57 +02:00
steven-omaha 5ddc33a355 doc(issue-template): add bug report form 2024-04-03 11:42:01 +02:00
steven-omaha 743c9555bc doc(README): rustup 2024-04-03 09:44:19 +02:00
innocentzero cddb471719 chore(README): Update README with Rustup details
Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-04-03 06:35:40 +05:30
steven-omaha 94146e3c4c ci: build binary on release
Upon release of a new version, automatically build a separate version of
pacdef for each backend that requires a feature flag. Attach all the
artifacts to the Github release.

Implemented by @thechubbypanda. Fixes #58. PR in #63.
2024-04-02 22:36:10 +02:00
Keval Kapdee efe19d4e61 Fix tarball 2024-04-02 19:24:13 +01:00
innocentzero c9136a7941 chore(README): Update README with rustup
Update the README with information about rustup support, in particular
the different group file syntax.

Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-04-02 19:42:29 +05:30
steven-omaha 631a9afb7f feat(rustup): add rustup backend
This commit adds support for rustup and was provided by @InnocentZero.
The main change under the hood is that rustup packages require up to
three path elements, either 'toolchain/<VERSION>' or
'component/<VERSION>/<component>', where <VERSION> can be stable,
nightly, or any explicit rust version. This change was facilitated by
making Package::repo crate-public.

The README still needs to be updated.

Related to #54. Merges #55.
2024-04-02 15:04:34 +02:00
innocentzero a5a0765928 fix(rustup): Fix individual component uninstall
Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-04-02 17:36:00 +05:30
innocentzero 75709a7ed9 refact(rustup): Use match statements and bail
Use match statements for Option types and use bail! macro to utilize
recoverable errors.

Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-04-02 04:58:19 +05:30
innocentzero fd47659959 refact(rustup): Use bail instead of panic
Use anyhow::bail to return an Err type instead of panicking and exiting
the program.

Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-04-02 04:51:15 +05:30
innocentzero 6f92e66777 refact(rustup): Use RepoType instead of strings
Use RepoType enums instead of strings to match in various places.

Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-04-02 04:51:15 +05:30
innocentzero fc83c43997 refact(packaging): remove unused function
Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-04-02 04:51:15 +05:30
innocentzero 0c731fa54b refact(rustup): Apply clippy suggestions
Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-04-02 04:51:15 +05:30
innocentzero ff25f2f55d refact(rustup): Refactor component installation
Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-04-02 04:51:15 +05:30
innocentzero c03baf221f refact(rustup): change methods to functions
Remove the methods that don't require access to the backend into
separate functions rather than have them as methods.

Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-04-02 04:51:15 +05:30
innocentzero a963d6a2db refact(rustup): Remove clippy warnings
Clippy warnings were not enabled at the time of the previous commits.

Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-04-02 04:51:15 +05:30
innocentzero c7596f62b7 refact(rustup): Use anyhow::Error
Remove repeated instances of anyhow::Error and make the code sparser.

Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-04-02 04:51:15 +05:30
innocentzero 4e2ef50df7 fix(rustup): remove standalone components
This patch targets the removal of standalone components that are not
removed as a part of a toolchain. This was previously ignored.

Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-04-02 04:51:15 +05:30
innocentzero 97b4077b02 feat(rustup): Remove packages
Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-04-02 04:51:15 +05:30
innocentzero f9528241e7 refact(rustup): Refector install_packages
Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-04-02 04:51:15 +05:30
innocentzero fbedd6da49 feat(rustup): install packages
Rustup is now able to install toolchains and
components and works with multiple toolchains and
components for each toolchain.

Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-04-02 04:51:15 +05:30
innocentzero ea2c51620a refact(rustup): fetch installed toolchains and components
Refactor the functions used for fetching installed
components and toolchains.

Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-04-02 04:51:15 +05:30
innocentzero d4551a6a2b feat(rustup): add rustup as a module 2024-04-02 04:51:15 +05:30
innocentzero 1ad93cec96 refact(package.rs): Expose repo field publicly
Expose repo field publicly for install_packages in
rustup backend to utilize, otherwise very ugly
hacks need to be used to handle toolchains and
components.

Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-04-02 04:51:15 +05:30
innocentzero ccd108591f feat(rustup): Add rustup as a backend
Adds rustup as a backend for pacdef. Only works on
components listed for now.

Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-04-02 04:51:15 +05:30
steven-omaha 8cc4791a9c doc: bump MSRV to 1.74
required by clap
2024-04-01 14:21:25 +02:00
steven-omaha afa8e7f55a doc: remove invalid link 2024-04-01 14:08:58 +02:00
steven-omaha 9767cc374d doc: minimum supported apt version 2024-04-01 14:08:45 +02:00
steven-omaha e37cf03349 ci: enable tests for all features 2024-04-01 14:01:17 +02:00
steven-omaha 6bba968897 ci: build, clippy for all features 2024-04-01 13:58:21 +02:00
steven-omaha 9f6f758a8d ci: fail on any clippy warning 2024-04-01 13:31:26 +02:00