Commit Graph

104 Commits

Author SHA1 Message Date
Nathan Fisher ee52bfb462 Add minitar test files; Remove creator and item modules; 2023-04-03 18:29:11 -04:00
Nathan Fisher 1e7d73bc28 Split from hpk crate 2023-04-02 18:51:12 -04:00
Nathan Fisher 9126e1da93 Version - use tuple types instead of structs for less verbosity 2023-04-01 11:02:29 -04:00
Nathan Fisher a1843cac33 Check for package upgrades in parallel; Search in packages in parallel; 2023-04-01 02:01:53 -04:00
Nathan Fisher 26be99f408 Completed 2/3 of methods added in previous commit; Added some tests; 2023-03-31 19:08:53 -04:00
Nathan Fisher 4d0dfc1df4 stubbed some methods for db interaction 2023-03-31 12:23:48 -04:00
Nathan Fisher bbb611c77c Added constants and functions for getting the effective database path
and cache directory
2023-03-31 11:39:20 -04:00
Nathan Fisher ccd163edf5 Remove `nativ_tls` option for ureq, as it greatly complicates cross
compiling
2023-03-31 01:03:54 -04:00
Nathan Fisher eae02ce616 Clean up imports after last commit 2023-03-30 19:07:12 -04:00
Nathan Fisher 71a87a506e Adjust `Creator` struct to use Vec<PathBuf> instead of Vec<DirEntry>;
Add `from_list` method for `Creator`
2023-03-30 18:43:11 -04:00
Nathan Fisher efb28a30e2 Fix for dependency resolution - take into account release number 2023-03-30 10:59:02 -04:00
Nathan Fisher 8b52ded12c Tweaked command line options; Fixed manpage installation paths; 2023-03-30 00:46:14 -04:00
Nathan Fisher 94eb94952f Merge branch 'odin' of git.hitchhiker-linux.org:jeang3nie/hpk into odin 2023-03-29 23:33:28 -04:00
Nathan Fisher 9f4d26b338 Added some db/repo methods; Add deny.toml; Replace `reqwests` with
`ureq` crate;
2023-03-29 23:31:59 -04:00
Nathan Fisher e8aead5365 Implement PartialEq and PartialOrd between SemVer and Rapid versioning 2023-03-29 00:18:49 -04:00
Nathan Fisher 1acf6f4051 Add `Rapid` versioning (ala Gnome, Firefox, Chrome) with single decimal 2023-03-28 23:58:18 -04:00
Nathan Fisher 4b7f5afa56 Added value hints for cli 2023-03-28 21:27:40 -04:00
Nathan Fisher efe77b97d8 Added progress bar styling 2023-03-28 21:18:55 -04:00
Nathan Fisher 0a94691685 Small tweak in message passing 2023-03-28 20:41:03 -04:00
Nathan Fisher cf9d6aa7e6 Add progress bars for package creation 2023-03-28 19:28:37 -04:00
Nathan Fisher 3d0151610d Fix long filenames when creating tar header from metadata and filename
rather than path
2023-03-28 19:16:38 -04:00
Nathan Fisher 4c80e08731 fix storing filenames longer than 100bytes in tar headers 2023-03-28 19:14:17 -04:00
Nathan Fisher 749bac6876 Remove stdout message on writing package.ron 2023-03-28 17:53:44 -04:00
Nathan Fisher 3a5174c521 Added `len` method to `Creator` 2023-03-28 17:34:14 -04:00
Nathan Fisher e8aa73bf9d Split off from `hpk` crate 2023-03-28 17:12:41 -04:00
Nathan Fisher 1160730e1f Moved cli binary and bootstrapper into separate crate 2023-03-28 16:57:13 -04:00
Nathan Fisher 026e8599a5 Move `cli` into module rather than workspace member 2023-03-28 00:16:12 -04:00
Nathan Fisher e1f7fbe4fe Fix bugs in `Creator` so that it works now 2023-03-28 00:09:16 -04:00
Nathan Fisher 3b88759665 Cleaned up imports from previous commit 2023-03-27 03:26:51 -04:00
Nathan Fisher 39b8664c9e Added package `Creator` struct, with `create` method to process package
entries fully multithreaded including compressing into the archive, as
well as passing messages through an mpsc::channel() interface for use in
a background thread in various frontends. Much better suited to task
than previous `create_package` function. Untested.
2023-03-27 03:18:20 -04:00
Nathan Fisher 33955fa836 Made completions generation more generic 2023-03-26 02:13:13 -04:00
Nathan Fisher e345ca6abb Add `bootstrap` binary 2023-03-26 01:43:32 -04:00
Nathan Fisher 00e48a9f9a Fix ownership issues with previous commit 2023-03-25 18:03:51 -04:00
Nathan Fisher 6c62f15a41 Add Update and Database types and begin forming infra for updating
packages
2023-03-25 17:59:53 -04:00
Nathan Fisher 9d53c9f44d Fix some clippy lints 2023-03-25 17:04:50 -04:00
Nathan Fisher 26af277e28 Create tar node for `package.ron` directly from in memory data 2023-03-25 16:51:58 -04:00
Nathan Fisher b9116951d5 Creating packages with the cli now working; 2023-03-25 15:15:13 -04:00
Nathan Fisher ffcd6820d0 Extend tar functionality to turn nodes and archives into byte vectors;
Implement package creation using those methods;
2023-03-25 12:28:44 -04:00
Nathan Fisher 318968db4b Added package format description 2023-03-24 19:03:53 -04:00
Nathan Fisher 311df4c349 Added README 2023-03-24 18:12:30 -04:00
Nathan Fisher 46336cfaff Implement package specs files 2023-03-24 17:23:02 -04:00
Nathan Fisher bc1f1ed082 Added `Hooks` enum; Add some doc comments for `Package`; Add some useful
fields to `Package` struct; Add more cli functionality;
2023-03-24 13:18:52 -04:00
Nathan Fisher d6982b70e8 Defined cli program options 2023-03-24 12:51:54 -04:00
Nathan Fisher c3324f203b Ran clippy 2023-03-23 14:53:43 -04:00
Nathan Fisher 85a85a3810 Add `Item` struct, which contains both a `tar::Node` and a plist entry.
This struct can be created from just a `Path` parameter, allowing to
read the data contained in a file only once during package creation or
extraction.
2023-03-23 14:43:25 -04:00
Nathan Fisher 4f44290a48 Add optional owner to node creation from data 2023-03-23 14:09:18 -04:00
Nathan Fisher 405ffd194f Add `Archive` struct to `tar` 2023-03-23 13:14:17 -04:00
Nathan Fisher a53cb726f9 Implement tar::Node creation from raw data + file metadata 2023-03-23 12:11:02 -04:00
Nathan Fisher faf574364a Add basic data structures to represent Tar archives 2023-03-22 18:50:20 -04:00
Nathan Fisher 953c3abbc9 impl TryFrom<&Path> for Plist 2023-03-22 00:01:57 -04:00