Commit Graph

53 Commits

Author SHA1 Message Date
Nathan Fisher
ab6e7441f1 Create Installer struct 2023-04-07 19:12:28 -04:00
Nathan Fisher
a07166375a Add Arch to Update struct 2023-04-06 18:47:53 -04:00
Nathan Fisher
8a06b3c628 Merge branch 'odin' of git.hitchhiker-linux.org:jeang3nie/hpk into odin 2023-04-04 22:52:42 -04:00
Nathan Fisher
8907831877 Update hpk-package 2023-04-04 22:52:19 -04:00
c099790f5a Remove .cargo from git 2023-04-04 20:18:29 -04:00
Nathan Fisher
082c215b44 Split out hpk-package into separate crate; Implement Repository::build() 2023-04-03 19:02:15 -04:00
9126e1da93 Version - use tuple types instead of structs for less verbosity 2023-04-01 11:02:29 -04:00
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
4d0dfc1df4 stubbed some methods for db interaction 2023-03-31 12:23:48 -04:00
bbb611c77c Added constants and functions for getting the effective database path
and cache directory
2023-03-31 11:39:20 -04:00
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
94eb94952f Merge branch 'odin' of git.hitchhiker-linux.org:jeang3nie/hpk into odin 2023-03-29 23:33:28 -04:00
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
0a94691685 Small tweak in message passing 2023-03-28 20:41:03 -04:00
3d0151610d Fix long filenames when creating tar header from metadata and filename
rather than path
2023-03-28 19:16:38 -04:00
4c80e08731 fix storing filenames longer than 100bytes in tar headers 2023-03-28 19:14:17 -04:00
749bac6876 Remove stdout message on writing package.ron 2023-03-28 17:53:44 -04:00
3a5174c521 Added len method to Creator 2023-03-28 17:34:14 -04:00
1160730e1f Moved cli binary and bootstrapper into separate crate 2023-03-28 16:57:13 -04:00
026e8599a5 Move cli into module rather than workspace member 2023-03-28 00:16:12 -04:00
e1f7fbe4fe Fix bugs in Creator so that it works now 2023-03-28 00:09:16 -04:00
3b88759665 Cleaned up imports from previous commit 2023-03-27 03:26:51 -04:00
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
33955fa836 Made completions generation more generic 2023-03-26 02:13:13 -04:00
e345ca6abb Add bootstrap binary 2023-03-26 01:43:32 -04:00
00e48a9f9a Fix ownership issues with previous commit 2023-03-25 18:03:51 -04:00
6c62f15a41 Add Update and Database types and begin forming infra for updating
packages
2023-03-25 17:59:53 -04:00
9d53c9f44d Fix some clippy lints 2023-03-25 17:04:50 -04:00
26af277e28 Create tar node for package.ron directly from in memory data 2023-03-25 16:51:58 -04:00
b9116951d5 Creating packages with the cli now working; 2023-03-25 15:15:13 -04:00
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
318968db4b Added package format description 2023-03-24 19:03:53 -04:00
311df4c349 Added README 2023-03-24 18:12:30 -04:00
46336cfaff Implement package specs files 2023-03-24 17:23:02 -04:00
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
d6982b70e8 Defined cli program options 2023-03-24 12:51:54 -04:00
c3324f203b Ran clippy 2023-03-23 14:53:43 -04:00
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
4f44290a48 Add optional owner to node creation from data 2023-03-23 14:09:18 -04:00
405ffd194f Add Archive struct to tar 2023-03-23 13:14:17 -04:00
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
953c3abbc9 impl TryFrom<&Path> for Plist 2023-03-22 00:01:57 -04:00
Nathan Fisher
634c19be51 Removed unused data structures 2023-03-21 14:33:38 -04:00