]>
git.ipfire.org Git - pakfire.git/log
Michael Tremer [Fri, 21 May 2021 10:32:28 +0000 (10:32 +0000)]
libpakfire: Set number of max open files to 512k
Following this: http://0pointer.net/blog/file-descriptor-limits.html
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 21 May 2021 10:01:51 +0000 (10:01 +0000)]
execute: Move faking architecture into libpakfire
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 21 May 2021 09:51:53 +0000 (09:51 +0000)]
execute: Move setting default environment into libpakfire
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 20 May 2021 18:57:44 +0000 (18:57 +0000)]
archive: Stop parsing filelist during extraction
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 20 May 2021 18:52:55 +0000 (18:52 +0000)]
filelist: Free file during scan
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 20 May 2021 18:40:28 +0000 (18:40 +0000)]
testsuite: Drop useless errno test
This raises loads of false positives
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 20 May 2021 18:33:34 +0000 (18:33 +0000)]
archive: Fix passing modified archive pointer
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 20 May 2021 18:22:58 +0000 (18:22 +0000)]
archive: Fix two refcounting issues with filelists
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 20 May 2021 18:12:28 +0000 (18:12 +0000)]
archive: Refactor reading files from the archive
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 20 May 2021 18:07:51 +0000 (18:07 +0000)]
archive: Only unref parser when it was set
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 20 May 2021 17:23:37 +0000 (17:23 +0000)]
archive: Make files sticky
We can now return to open the archive file once and keep it opened. This
makes files sticky and nobody can replace or delete a file
mid-transaction.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 20 May 2021 16:56:20 +0000 (16:56 +0000)]
tests: makefile: Set architecture to make creating a package successful
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 20 May 2021 16:54:46 +0000 (16:54 +0000)]
parser: Another attempt to fix refcounting
This allows tests to run without any problems, but there must be other
problems elsewhere.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 20 May 2021 16:50:34 +0000 (16:50 +0000)]
parser: Simplify passing parent parser to if statement evaluation
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 20 May 2021 14:07:42 +0000 (14:07 +0000)]
parser: Make exiting the expand function easier
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 20 May 2021 14:05:24 +0000 (14:05 +0000)]
parser: Correctly skip parantheses in commands
This regular expression handles balanced parantheses correctly so that
we will find all commands that use ().
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 20 May 2021 11:44:14 +0000 (11:44 +0000)]
builder: Simplify shell code
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 20 May 2021 11:34:44 +0000 (11:34 +0000)]
snapshots: Drop static list of excludes
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 20 May 2021 11:31:47 +0000 (11:31 +0000)]
snapshot: Do not archive any mountpoints
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 18 May 2021 15:36:08 +0000 (15:36 +0000)]
arch: Internalize function to check if the host is compatible
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 18 May 2021 15:31:43 +0000 (15:31 +0000)]
builder: No longer check if the host supports an architecture
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 18 May 2021 15:30:26 +0000 (15:30 +0000)]
cli: Allow passing the target architecture
This switch enabled Pakfire to bootstrap for a different architecture
than the host architecture.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 18 May 2021 15:24:09 +0000 (15:24 +0000)]
arch: Use buildtarget to make machine and append "-gnu"
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 18 May 2021 15:12:31 +0000 (15:12 +0000)]
arch: Cut off vendor if it has any spaces
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 17 May 2021 23:30:03 +0000 (23:30 +0000)]
arch: Use qemu emulator for foreign arches
This patch allows Pakfire to emulate any architecture that the host
system supports using binfmt_misc.
We bind-mount the interpreter into the chroot and execute everything as
normal.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 13 May 2021 18:15:38 +0000 (18:15 +0000)]
pakfire info: Add --long switch and --filelist
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 13 May 2021 18:09:42 +0000 (18:09 +0000)]
transaction: Show correct package order for upgrades/downgrades
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 13 May 2021 17:44:31 +0000 (17:44 +0000)]
execute: Do not close stdin in forked processes
Configure scripts try reading from this file descriptor and duplicating
it which will fail if stdin has been closed.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 13 May 2021 15:25:13 +0000 (15:25 +0000)]
archive: Drop duplicate and unused filelist parsing function
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 13 May 2021 15:23:06 +0000 (15:23 +0000)]
filelist: Make parsing more robust
This code is utterly broken and probably should be rewritten from
scratch.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 13 May 2021 14:27:33 +0000 (14:27 +0000)]
archive: Read legacy filelists
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 13 May 2021 14:26:28 +0000 (14:26 +0000)]
execute: Search for command if not given as absolute path
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 13 May 2021 12:55:40 +0000 (12:55 +0000)]
cli: execute: Log output to console
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 13 May 2021 12:14:28 +0000 (12:14 +0000)]
cli: Add execute command
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 13 May 2021 12:13:53 +0000 (12:13 +0000)]
pakfire: Do not overlay root mountpoint when path was given
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 13 May 2021 12:12:51 +0000 (12:12 +0000)]
cgroup: killall: Break if cgroup could not be opened
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 13 May 2021 11:57:41 +0000 (11:57 +0000)]
execute: Log errors when cgroup could not be created
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 11 May 2021 09:06:54 +0000 (09:06 +0000)]
cli: Pass configuration to Pakfire
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 4 May 2021 13:09:32 +0000 (13:09 +0000)]
Revert "archive: Drop parsing the filelist"
This reverts commit
1b970ec26ba977df90f233bb4d5106bf915848b8 .
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 4 May 2021 13:06:15 +0000 (13:06 +0000)]
tests: Free parser after test
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 4 May 2021 13:01:13 +0000 (13:01 +0000)]
parser: Attempt to fix refcounting problems
This is still leaking some references and I cannot bloody find out why
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 4 May 2021 09:33:38 +0000 (09:33 +0000)]
parser: Check if subparsers are set before freeing them
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 3 May 2021 21:45:39 +0000 (21:45 +0000)]
dist: Hard-code architecture of source packages
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 3 May 2021 21:45:13 +0000 (21:45 +0000)]
util: Ignore empty dependencies
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 3 May 2021 21:43:34 +0000 (21:43 +0000)]
parser: Correct pass down the parent parser
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 3 May 2021 20:29:09 +0000 (20:29 +0000)]
packager: Disable padding for Zstandard
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 May 2021 18:46:41 +0000 (18:46 +0000)]
parser: Make it re-entrant
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 May 2021 16:59:53 +0000 (16:59 +0000)]
parser: Move namespace & name to stack
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 May 2021 16:59:11 +0000 (16:59 +0000)]
testsuite: Show when errno is unintentionally set
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 May 2021 16:35:55 +0000 (16:35 +0000)]
test: arch: Fix build
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 May 2021 15:34:34 +0000 (15:34 +0000)]
dist: Set various default variables when reading makefiles
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 May 2021 15:33:58 +0000 (15:33 +0000)]
builder: Move console logger into logger module
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 May 2021 15:32:30 +0000 (15:32 +0000)]
arch: Make some functions private and write to stack
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 May 2021 15:29:08 +0000 (15:29 +0000)]
execute: Avoid calling read() multiple times when reading logs
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 May 2021 13:33:03 +0000 (13:33 +0000)]
transaction: Reload database after finishing transaction
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 May 2021 13:31:57 +0000 (13:31 +0000)]
util: Refactor pakfire_split_string
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 May 2021 13:19:20 +0000 (13:19 +0000)]
tests: packager: Fix build
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 1 May 2021 13:02:53 +0000 (13:02 +0000)]
builder: Add option to disable snapshots
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 30 Apr 2021 15:46:27 +0000 (15:46 +0000)]
cli: No longer import obsolete repository module
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 30 Apr 2021 15:36:56 +0000 (15:36 +0000)]
execute: Return 127 when a command could not be found
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 30 Apr 2021 15:36:09 +0000 (15:36 +0000)]
execute: Log the entire script
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 30 Apr 2021 15:25:30 +0000 (15:25 +0000)]
builder: Add a simple console log handler
This is quite similar to the stream handler but writes error messages to
stderr and everything else to stdout.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 30 Apr 2021 11:14:33 +0000 (11:14 +0000)]
archive: Do not try to compare empty arch
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 30 Apr 2021 11:14:10 +0000 (11:14 +0000)]
execute: Log correct exit code
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 30 Apr 2021 10:27:27 +0000 (10:27 +0000)]
ipfire3: Do not include architecture in local repository path
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 30 Apr 2021 10:25:30 +0000 (10:25 +0000)]
builder: Re-enable Build group
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 30 Apr 2021 10:25:16 +0000 (10:25 +0000)]
repo: Internalize all scanned content
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 30 Apr 2021 08:27:39 +0000 (08:27 +0000)]
request: Log what we are solving
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 30 Apr 2021 08:19:24 +0000 (08:19 +0000)]
Drop unused Step type
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 30 Apr 2021 08:17:36 +0000 (08:17 +0000)]
packager: Write package format for compatibility checks
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 30 Apr 2021 08:12:45 +0000 (08:12 +0000)]
packager: Add compression feature when compressed
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 30 Apr 2021 08:03:43 +0000 (08:03 +0000)]
dist: Use pakfire_string_* functions everywhere
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 30 Apr 2021 08:01:11 +0000 (08:01 +0000)]
util: Use our custom mktemp function everywhere
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 30 Apr 2021 07:53:25 +0000 (07:53 +0000)]
util: Add a unified function to parse dependencies
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 29 Apr 2021 23:08:42 +0000 (23:08 +0000)]
package: Reset title after first dependency line
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 29 Apr 2021 23:06:41 +0000 (23:06 +0000)]
package: Sort dependencies on dump
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 29 Apr 2021 22:51:04 +0000 (22:51 +0000)]
Drop all dropped functions from symbol table
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 29 Apr 2021 22:49:15 +0000 (22:49 +0000)]
Drop relations entirely
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 29 Apr 2021 22:33:06 +0000 (22:33 +0000)]
packages: Handle dependencies as strings
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 29 Apr 2021 21:14:22 +0000 (21:14 +0000)]
util: Add new dependency parsing function
This function can handle namespaces and has a better approach than the
brute-force one that we used before that tries to find operators like =,
>=, etc.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 29 Apr 2021 21:10:25 +0000 (21:10 +0000)]
pakfire: Add a custom namespace for features
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 29 Apr 2021 12:35:22 +0000 (12:35 +0000)]
builder: Use standard installation routine to install source packages
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 29 Apr 2021 11:42:55 +0000 (11:42 +0000)]
archive+snapshot: Be less verbose when extracting
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 29 Apr 2021 11:40:38 +0000 (11:40 +0000)]
archive: Choose sensible prefixes when extracting source packages
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 29 Apr 2021 11:21:40 +0000 (11:21 +0000)]
archive: Cache dummy package
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 29 Apr 2021 11:15:11 +0000 (11:15 +0000)]
archive: Use package for progressbar styling
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 29 Apr 2021 11:08:49 +0000 (11:08 +0000)]
pakfire: Always create a dummy repository
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 29 Apr 2021 10:51:07 +0000 (10:51 +0000)]
archive: Fix reading arch from legacy source packages
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 29 Apr 2021 10:46:36 +0000 (10:46 +0000)]
transaction: Fix download check
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 29 Apr 2021 10:15:34 +0000 (10:15 +0000)]
transaction: Change what type we get from libsolv
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 29 Apr 2021 10:09:13 +0000 (10:09 +0000)]
transaction: Move steps into transactions
There is no point to separate this into multiple files since we no
longer export the steps
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 29 Apr 2021 08:58:33 +0000 (08:58 +0000)]
transaction: Change type to struct
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 29 Apr 2021 08:50:47 +0000 (08:50 +0000)]
configure: Drop custom bison make rules
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 29 Apr 2021 08:38:33 +0000 (08:38 +0000)]
mount: Check list for duplicates to only umount everything once
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 27 Apr 2021 19:16:08 +0000 (19:16 +0000)]
test: Have cgroup test functions return success at the end
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 27 Apr 2021 19:14:39 +0000 (19:14 +0000)]
test: Enable using private stuff
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 27 Apr 2021 18:41:12 +0000 (18:41 +0000)]
tests: Create internal library for unit tests
Our shared library only exports very few symbols so that we can change
our internal ABI easily and presumably not many applications are going
to link against libpakfire anyways.
This makes it impossible to test any internal functions which are
inaccessible. This patch adds an internal library with all available
symbols which will be linked into the test binaries so that we can test
those functions without any acrobatics.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 27 Apr 2021 18:40:24 +0000 (18:40 +0000)]
tests: Use pakfire_config_unref instead of pakfire_config_free
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 27 Apr 2021 17:30:02 +0000 (17:30 +0000)]
_pakfire: Drop constants.h
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 27 Apr 2021 17:25:06 +0000 (17:25 +0000)]
_pakfire: Drop unused includes
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>