Commit Graph
224 Commits
Author SHA1 Message Date
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 3f8468c660 fix(debian): build against rust-apt-0.7.0
1bcb7f8 bumped rust-apt from 0.5 to 0.7. This change made
Cache::packages(&self, &sort) a fallible function. The required change in
the Debian backend was missed.

This commit propagates the error in get_all_installed_packages and
get_explicitly_installed_packages for the Debian backend.

Fixes #64.
2024-03-26 14:22:00 +01:00
steven-omaha 4b7a497dda fix(review): typo 2024-03-24 20:57:32 +01:00
Mike Lloyd ad624bce70 Add 'apply' option to review 2024-03-23 23:34:36 -07:00
star-szr e1354438bb fix: minor typo in review text 2024-03-21 12:05:07 -04:00
steven-omaha 52f615324a chore: Release 2024-03-20 11:32:29 +01:00
steven-omaha 1bcb7f80cd chore(release): bump dependencies, update lockfile 2024-03-20 11:30:08 +01:00
steven-omaha 489074a897 chore: Release 2024-02-15 12:05:14 +01:00
innocentzero e7a10cc0ec fix(python): panic on empty pip_binary in config
Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-02-15 12:58:50 +05:30
steven-omaha 82bf880849 chore: Release 2024-01-28 08:18:35 +01:00
innocentzero 34a428f280 refactor(minor code changes) 2024-01-28 03:11:41 +05:30
innocentzero fb21691e64 fix(remove collection of dependencies)
https://github.com/steven-omaha/pacdef/pull/50#issuecomment-1912284202

Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-01-27 23:52:48 +05:30
innocentzero b8cfd9e24f feat(pipx support): Fully supports pipx features
Now able to support packages installed via pipx with the exception of
packages that do not provide a binary themselves. Install those
explicitly via `pipx install --include-deps <package>`.

Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-01-27 23:35:37 +05:30
innocentzero 2a7c5d5288 FIX refactored switches and output parsing
Removed inlined switches to a separate function for both explicit
installs and all installs and added a match statement to parse the
outputs accordingly.

Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-01-25 11:52:16 +05:30
innocentzero 242af523b4 FIX iterate through json generated by pipx
While it is now able to iterate through JSON created by pipx, it is
unable to read the JSON with the error `EOF while parsing a value
at line 1 column 0`

Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-01-24 20:21:05 +05:30
innocentzero 050a844bc2 feat(pipx support): Add support for pipx
This is a series of commits intended to add support for pipx in pacdef.
WIP.

Signed-off-by: innocentzero <isfarulhaque@proton.me>
2024-01-23 20:42:54 +05:30
steven-omaha ec1aab4b43 refact(ui): infallible conversion for u8 to char 2024-01-16 13:19:37 +01:00
steven-omaha b5cbcdce4b chore: Release 2023-12-26 17:56:53 +01:00
steven-omaha bcf43a8683 test(args): add negative test cases 2023-10-17 15:37:57 +02:00
steven-omaha 87a85b00dd test: add rstest crate, argument parsing tests 2023-10-17 15:21:19 +02:00
steven-omaha bfb2cb2bc6 chore: Release 2023-10-16 14:42:39 +02:00
steven-omaha 0fab8c11d4 feat(grouping): check duplicate packages in section
closes #47
2023-10-11 16:45:48 +02:00
steven-omaha 0381fc7525 fix(grouping): non-canonical ordering
The first attempt 02c44c92d0 caused
`Section.partial_cmp` and `Section.cmp` to call each other recursively.
That lead to a stack overflow when compiled without optimizations, and
an infinite loop when optimizations were enabled.

This commit now properly implements at first `Ord` for both `Section`
and `Group`, and from this derives `PartialEq` for each.
2023-10-10 16:34:25 +02:00
steven-omaha bd96a9074a Revert "fix(grouping): non-canonical ordering"
This reverts commit 02c44c92d0.
2023-10-10 16:31:29 +02:00
steven-omaha 87e2eddf64 chore: bump dependencies 2023-10-10 15:38:19 +02:00
steven-omaha becdb8f413 docs(core): add panics section 2023-10-10 15:32:14 +02:00
steven-omaha 02c44c92d0 fix(grouping): non-canonical ordering
clippy: incorrect_partial_ord_impl_on_ord_type
2023-10-10 15:28:28 +02:00
theo court c59f22a427 Fix typo 2023-08-07 18:04:24 +02:00
steven-omaha 73c041922f chore: bump dependencies 2023-07-06 12:55:58 +02:00
steven-omaha 3515d8bc0b chore: Release 2023-06-06 16:53:50 +02:00
steven-omaha d11467a318 docs(core): docstrings 2023-06-06 16:14:28 +02:00
steven-omaha f394ea8938 refact(core): remove get_group_file_paths... 2023-06-06 16:11:54 +02:00
steven-omaha d27a5d7540 docs(core): docstrings 2023-06-06 16:10:40 +02:00
steven-omaha 4843543a74 feat(export): docstrings, man, README, switches 2023-06-06 15:30:24 +02:00
steven-omaha 0610cd0731 feat(export): second move method 2023-06-06 15:30:24 +02:00
steven-omaha 0b7fcbbbd4 feat(export): core logic 2023-06-06 15:30:24 +02:00
steven-omaha f527125e59 feat(export): CLI, data structures 2023-06-06 15:30:24 +02:00
steven-omaha a7e36324dc refact(core): manual let else 2023-06-02 14:07:54 +02:00
steven-omaha a573cd18f8 refact: use clone instead to_owned 2023-06-02 14:05:17 +02:00
steven-omaha 1022db2d48 refact: replace match with if let else 2023-06-02 14:04:43 +02:00
steven-omaha 3b830e9b60 refact: unncessary wraps 2023-06-02 14:03:48 +02:00
steven-omaha c3f73cb4fa refact: unncessary wraps 2023-06-02 14:02:12 +02:00
steven-omaha 89fc17c473 refact(main): create_empty_config_file 2023-06-02 12:38:42 +02:00
TeeWallz 25ea8d99b9 Added call to create config directory 2023-06-01 20:27:32 +02:00
steven-omaha 3b8e8c180f fix(rust): handle missing crates file
When no packages have been installed yet using cargo-install, the rust
backend has errored out until now when trying to load the file. If the
file does not exist, we assume it is empty and that no packages have
been installed for cargo.
2023-05-31 13:08:46 +02:00
steven-omaha dcd85f0156 chore: update subcrate repository urls 2023-05-30 15:30:44 +02:00