]>
git.ipfire.org Git - people/ms/pakfire.git/log
Michael Tremer [Tue, 9 Mar 2021 22:36:16 +0000 (22:36 +0000)]
packager: Make filename accessible through extra function
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 9 Mar 2021 22:18:36 +0000 (22:18 +0000)]
packager: Return the filename of the result file
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 9 Mar 2021 22:00:02 +0000 (22:00 +0000)]
dist: Add basic C implementation
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 9 Mar 2021 18:22:56 +0000 (18:22 +0000)]
packager: Create a helper function to create files in tarball
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 9 Mar 2021 18:10:52 +0000 (18:10 +0000)]
packager: Set creation time and ownership for files
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 9 Mar 2021 18:09:53 +0000 (18:09 +0000)]
packager: Write format using buffer helper function, too
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 9 Mar 2021 18:01:09 +0000 (18:01 +0000)]
packager: Write package metadata
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 9 Mar 2021 17:04:27 +0000 (17:04 +0000)]
packager: Set installsize to total size of the filelist
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Mar 2021 23:36:18 +0000 (23:36 +0000)]
archive: Constify flags
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Mar 2021 23:34:28 +0000 (23:34 +0000)]
archive: Do not extract fflags
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Mar 2021 23:32:37 +0000 (23:32 +0000)]
packager: Correctly resolve UIDs/GIDs
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Mar 2021 23:16:36 +0000 (23:16 +0000)]
packager: Move creating reader into an extra function
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Mar 2021 23:12:55 +0000 (23:12 +0000)]
packager: Use reader and import all attributes except fflags
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Mar 2021 22:40:12 +0000 (22:40 +0000)]
packager: Remove writing a filelist to the package
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Mar 2021 22:32:35 +0000 (22:32 +0000)]
file: Split time into ctime and mtime
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Mar 2021 22:21:23 +0000 (22:21 +0000)]
file: Keep type in mode_t and remove file type check functions
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Mar 2021 22:05:46 +0000 (22:05 +0000)]
file: Drop unused dirname/basename functions
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Mar 2021 22:04:45 +0000 (22:04 +0000)]
file: Store the absolute path
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Mar 2021 21:51:01 +0000 (21:51 +0000)]
file: Rename "name" to "path"
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Mar 2021 12:47:07 +0000 (12:47 +0000)]
packager: Import all file attributes from archive entry
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Mar 2021 12:13:43 +0000 (12:13 +0000)]
files: Add reference to Pakfire for files and filelists
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Mar 2021 11:58:13 +0000 (11:58 +0000)]
files: Statically allocate name, user and group
This avoids many malloc() and free() calls.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Mar 2021 11:44:43 +0000 (11:44 +0000)]
archive: extract: Set groups correctly
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Mar 2021 11:33:52 +0000 (11:33 +0000)]
archive: extract: Set user permissions correctly
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Mar 2021 01:38:39 +0000 (01:38 +0000)]
archive: Read file attributes from archive
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Mar 2021 01:29:33 +0000 (01:29 +0000)]
db: Check for errors after INSERT
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Mar 2021 00:16:31 +0000 (00:16 +0000)]
archive: Store OpenSSL context in main struct
This avoids allocating and freeing a new context for every file that is
being hashed.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 7 Mar 2021 23:56:59 +0000 (23:56 +0000)]
archive: Compute BLAKE2 checksum when extracting files
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 7 Mar 2021 18:11:01 +0000 (18:11 +0000)]
packager: Add filelist
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 7 Mar 2021 18:10:07 +0000 (18:10 +0000)]
file: Add function to copy attributes from stat()
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 7 Mar 2021 17:33:13 +0000 (17:33 +0000)]
file: Fix potential memory leaks
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 7 Mar 2021 17:07:45 +0000 (17:07 +0000)]
packager: Use definition for format file name
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 7 Mar 2021 17:06:32 +0000 (17:06 +0000)]
packager: Append payload to archive
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 7 Mar 2021 17:05:31 +0000 (17:05 +0000)]
packager: Store file handle to payload file
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 6 Mar 2021 16:02:25 +0000 (16:02 +0000)]
packager: Add function that starts putting the whole archive together
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 6 Mar 2021 15:15:07 +0000 (15:15 +0000)]
packager: Add a function that adds a file to the payload
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 6 Mar 2021 11:39:07 +0000 (11:39 +0000)]
packager: Check if archive_write_new() was successful
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 5 Mar 2021 18:07:47 +0000 (18:07 +0000)]
packager: Setup an area for writing the payload
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 5 Mar 2021 17:27:04 +0000 (17:27 +0000)]
packager: Add some basic tests
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 5 Mar 2021 17:18:11 +0000 (17:18 +0000)]
packager: Add scaffolding
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 5 Mar 2021 17:03:17 +0000 (17:03 +0000)]
parser: package: Set build host and time
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 5 Mar 2021 16:51:21 +0000 (16:51 +0000)]
parser: Add more string attributes to the package
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 5 Mar 2021 16:37:43 +0000 (16:37 +0000)]
parser: Assign a UUID to generated packages
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 5 Mar 2021 16:19:10 +0000 (16:19 +0000)]
parser: Add function to create package
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 5 Mar 2021 16:18:17 +0000 (16:18 +0000)]
parser: Fix type of logging callback function
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 5 Mar 2021 11:43:51 +0000 (11:43 +0000)]
Drop transifex configuration
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 5 Mar 2021 11:28:47 +0000 (11:28 +0000)]
Remove old shell module
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 5 Mar 2021 11:20:26 +0000 (11:20 +0000)]
_pakfire: Drop version_compare
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 4 Mar 2021 23:45:26 +0000 (23:45 +0000)]
util: Drop some unused functions
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 4 Mar 2021 23:29:22 +0000 (23:29 +0000)]
packages: Drop base module
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 4 Mar 2021 23:20:20 +0000 (23:20 +0000)]
Drop old lexer module
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 4 Mar 2021 23:13:19 +0000 (23:13 +0000)]
packages: Drop makefile module
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 4 Mar 2021 22:51:05 +0000 (22:51 +0000)]
builder: Fall back into a shell if build fails
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 4 Mar 2021 22:50:23 +0000 (22:50 +0000)]
builder: Invoke a bash with --login
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 4 Mar 2021 22:05:40 +0000 (22:05 +0000)]
builder: Send build script output to logger
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 4 Mar 2021 22:03:21 +0000 (22:03 +0000)]
_pakfire: Remove the trailing newline before passing to python
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 4 Mar 2021 22:02:07 +0000 (22:02 +0000)]
execute: Pass string length to logging function
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 4 Mar 2021 18:46:56 +0000 (18:46 +0000)]
execute: Log something if the logging callback failed
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 4 Mar 2021 18:34:53 +0000 (18:34 +0000)]
_pakfire: Translate log levels to Python
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 4 Mar 2021 17:17:00 +0000 (17:17 +0000)]
parser: Drop unused function
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 4 Mar 2021 17:13:57 +0000 (17:13 +0000)]
parser: Consolidate compiling regular expressions into one function
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 4 Mar 2021 17:00:50 +0000 (17:00 +0000)]
parser: commands: Don't be greedy when finding the closing bracket
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 4 Mar 2021 11:10:44 +0000 (11:10 +0000)]
builder: Refactor logging
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 3 Mar 2021 17:04:32 +0000 (17:04 +0000)]
parser: Capture the output of commands
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 3 Mar 2021 17:03:20 +0000 (17:03 +0000)]
util: Make pakfire_string_replace more robust on invalid inputs
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 3 Mar 2021 16:28:18 +0000 (16:28 +0000)]
execute: Add data pointer to logging callback
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 3 Mar 2021 15:59:25 +0000 (15:59 +0000)]
parser: Implement executing commands in %(...)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 3 Mar 2021 15:01:28 +0000 (15:01 +0000)]
parser: Use JIT for PCRE2
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 3 Mar 2021 14:46:54 +0000 (14:46 +0000)]
parser: Split expanding variables into separate function
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 3 Mar 2021 14:33:41 +0000 (14:33 +0000)]
parser: Use PCRE2 for regex matching
The regular expression is only compiled once per parser when it is being
needed and not every time we are searching for variables.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 3 Mar 2021 14:01:26 +0000 (14:01 +0000)]
libpakfire: Link against PCRE2 (8 bit)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 3 Mar 2021 11:47:01 +0000 (11:47 +0000)]
parser: expand: Tidy up some code
No functional changes
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 3 Mar 2021 11:46:27 +0000 (11:46 +0000)]
tests: makefile: Update test to latest parser changes
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 3 Mar 2021 11:43:20 +0000 (11:43 +0000)]
parser: Improve performance of expanding strings
By using pakfire_string_replace, all occurrences of a variable will be
replaced at once until no variables are being left.
It can still happen, that the same variable is being matched later again
(multiple times even), but it looks to me like adding any caching
mechanism adds a lot more overhead.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 3 Mar 2021 10:35:10 +0000 (10:35 +0000)]
parser: Add support for flags
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 3 Mar 2021 00:32:17 +0000 (00:32 +0000)]
util: Implement a function that replace patterns in a string
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 2 Mar 2021 22:09:18 +0000 (22:09 +0000)]
builder: Set BASEDIR in build environment
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 2 Mar 2021 22:08:35 +0000 (22:08 +0000)]
python: parser: Implement setting variables
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 2 Mar 2021 21:52:53 +0000 (21:52 +0000)]
builder: Run build scripts in all stages
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 2 Mar 2021 21:52:06 +0000 (21:52 +0000)]
python: Export pakfire_execute_script
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 2 Mar 2021 21:50:38 +0000 (21:50 +0000)]
execute: Activate environment earlier to write to ramdisks
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 2 Mar 2021 11:43:56 +0000 (11:43 +0000)]
parser: Split keys into name and namespace part
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 2 Mar 2021 11:42:05 +0000 (11:42 +0000)]
tests: Check and warn if an expected string is NULL
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 1 Mar 2021 19:47:19 +0000 (19:47 +0000)]
execute: Add function to execute a script
This has been moved from step
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 1 Mar 2021 18:19:16 +0000 (18:19 +0000)]
_pakfire: parser: Hold a reference to the parser object
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 1 Mar 2021 18:19:03 +0000 (18:19 +0000)]
_pakfire: archive: Remove debugging line
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 1 Mar 2021 18:05:01 +0000 (18:05 +0000)]
parser: Handle appending variables correctly
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 1 Mar 2021 18:01:27 +0000 (18:01 +0000)]
parser: Handle "export" keyword
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 1 Mar 2021 17:39:17 +0000 (17:39 +0000)]
parser: Fix reference counting
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 1 Mar 2021 17:09:44 +0000 (17:09 +0000)]
parser: Unref parent only when set
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 1 Mar 2021 17:09:05 +0000 (17:09 +0000)]
tests: Return number of failed test
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 1 Mar 2021 17:08:44 +0000 (17:08 +0000)]
parser: Have the merge() function return an integer
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 1 Mar 2021 16:55:07 +0000 (16:55 +0000)]
parser: Remove unused function
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 1 Mar 2021 16:46:22 +0000 (16:46 +0000)]
builder: Implement reading makefiles
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 1 Mar 2021 15:12:06 +0000 (15:12 +0000)]
parser: Create an error object when parsing failed
This can be used to report more details about the parsing error to the
user
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 1 Mar 2021 12:23:39 +0000 (12:23 +0000)]
parser: Handle lines continued with backslash
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 27 Feb 2021 12:52:44 +0000 (12:52 +0000)]
tests: makefile: Test if parsing macros works
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 27 Feb 2021 12:00:59 +0000 (12:00 +0000)]
Fix typo
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 27 Feb 2021 11:56:48 +0000 (11:56 +0000)]
_pakfire: Show path when mount/umount failed
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 27 Feb 2021 11:50:13 +0000 (11:50 +0000)]
parser: Allow empty lines after T_KEY to open a block
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>