]>
git.ipfire.org Git - pakfire.git/log
Michael Tremer [Fri, 20 May 2022 18:43:33 +0000 (18:43 +0000)]
execute: Drop capabilities
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 20 May 2022 18:06:25 +0000 (18:06 +0000)]
execute: Launch any containers in a new PID namespace
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 20 May 2022 18:01:44 +0000 (18:01 +0000)]
archive: Fix compression selection
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 20 May 2022 17:52:53 +0000 (17:52 +0000)]
shell: Allow passing extra packages to install
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 20 May 2022 17:34:28 +0000 (17:34 +0000)]
package: Don't return void
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 20 May 2022 17:34:16 +0000 (17:34 +0000)]
package: Simply empty string check
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 20 May 2022 17:09:41 +0000 (17:09 +0000)]
request: Drop support for groups
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 20 May 2022 15:56:27 +0000 (15:56 +0000)]
archive: Only activate the relevant decompressor
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 20 May 2022 15:55:03 +0000 (15:55 +0000)]
archive: Try being more robust against non-existant files
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 20 May 2022 15:54:49 +0000 (15:54 +0000)]
archive: Rename files inside the archive (again)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 20 May 2022 15:03:16 +0000 (15:03 +0000)]
packager: Do not dump JSON in pretty format
This is not pretty enough to be easily read on the CLI, so we can then
dump it as compact as possible.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 20 May 2022 15:01:37 +0000 (15:01 +0000)]
parser: Use special "evr" variable
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 17 May 2022 16:47:00 +0000 (16:47 +0000)]
package: Automatically erase empty epoch when setting evr
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 17 May 2022 16:24:52 +0000 (16:24 +0000)]
builder: Drop legacy Python build stuff
This has now all moved into the C library
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 17 May 2022 16:20:19 +0000 (16:20 +0000)]
execute: Ignore if epoll_wait() is being interrupted
This can happen if the process is receiving a signal and we should just
continue as usual.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 17 May 2022 15:50:27 +0000 (15:50 +0000)]
build: Make installing the source package an essential job
This should help that the solver does not suggest to not install the
source package. That does not seem to be the best advice here.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 17 May 2022 15:16:09 +0000 (15:16 +0000)]
archive: Parse filelist
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 17 May 2022 15:09:47 +0000 (15:09 +0000)]
tests: makefile: Dump all package information
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 17 May 2022 15:09:35 +0000 (15:09 +0000)]
tests: makefile: Check filelist length
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 17 May 2022 15:02:32 +0000 (15:02 +0000)]
tests: makefile: Add test for dist
This test tries to create a source package for a dummy package. We then
evaluate if we can read correct information back again.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 17 May 2022 14:14:26 +0000 (14:14 +0000)]
Revert "build: Allow build environments to be interactive"
This reverts commit
91b5b0472158835cf53b489134d4d2e53e717598 .
This is quite problematic because this flag is being used in multiple
ways. One version is that we take user input, the other one is that we
show progress bars on the terminal.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 17 May 2022 14:09:20 +0000 (14:09 +0000)]
packages: Add distribution information
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 17 May 2022 13:44:17 +0000 (13:44 +0000)]
packages: Add vendor to package metadata
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 17 May 2022 13:34:32 +0000 (13:34 +0000)]
package: Add source information
This patch adds support for storing the source package name, evr and
architecture in the metadata.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 17 May 2022 11:40:33 +0000 (11:40 +0000)]
packager: Explicitely pass struct pakfire on create
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 17 May 2022 11:39:57 +0000 (11:39 +0000)]
tests: Compile with correct CFLAGS
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 10 May 2022 16:06:01 +0000 (16:06 +0000)]
Revert "macros: Build for more modern processors only"
This reverts commit
547777ac363bc14975cd7ab77fed3fb160b904f4 .
The version of GCC that we currently have does not seem to support this
feature, yet.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 10 May 2022 15:45:37 +0000 (15:45 +0000)]
package: Drop installing self-provides
I have no idea what those do, and it seems to work without it.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 10 May 2022 15:40:49 +0000 (15:40 +0000)]
repo: Import any data into the pool
We cannot keep it separate because solving won't work properly any more.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 10 May 2022 14:09:03 +0000 (14:09 +0000)]
packager: Automatically set build host/time
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 10 May 2022 13:45:33 +0000 (13:45 +0000)]
archive: Read package information from JSON file
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 10 May 2022 13:30:38 +0000 (13:30 +0000)]
packager: Give better name to metadata file
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 10 May 2022 11:32:32 +0000 (11:32 +0000)]
packages: Write package metadata in JSON format
This is starting a new package format which should be easier to write
and parse than our own format. It should also be quite extensible.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 22:22:44 +0000 (22:22 +0000)]
package: Fix storing strings in repository
We tried to store all strings directly in the pool (I think) which is
not what libsolv liked. Any SOLV files written could not be re-read
which is fixed by this change which gives libsolv the chance to store
its strings wherever it wants.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 22:11:36 +0000 (22:11 +0000)]
tests: Drop all repo information from memory before read
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 21:04:00 +0000 (21:04 +0000)]
dependencies: Fix parsing
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 20:17:43 +0000 (20:17 +0000)]
build: Allow build environments to be interactive
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 20:14:34 +0000 (20:14 +0000)]
progressbar: Fix output
This was broken in
23b9395887ec464084ca57c23fbe8c012f467700 .
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 20:09:06 +0000 (20:09 +0000)]
tests: Fix build after callback changes
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 20:01:03 +0000 (20:01 +0000)]
build: Drop redundant interactivity flag
There is already a flag for this which can be used.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 17:59:29 +0000 (17:59 +0000)]
logging: Do not crash when log callback isn't set
This is now possible because we have a new function to modify the
callback.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 16:12:37 +0000 (16:12 +0000)]
callbacks: Rework them to be easier to pass around
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 10:04:51 +0000 (10:04 +0000)]
pakfire: Introduce confirm callback
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 09:33:50 +0000 (09:33 +0000)]
pakfire: Go back on callbacks
Instead of passing a giant struct will all sorts of callbacks, it is
probably more flexible if we would pass them individually.
However, the log callback should be initialized at the very beginning to
allow Pakfire to properly log from the very start.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 08:42:02 +0000 (08:42 +0000)]
pakfire: Add function to reset all callbacks
When we call pakfire from Python, we will pass some callbacks which we
will hold a reference to. If those are being freed but Pakfire isn't we
might call the freed callback.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 May 2022 08:28:09 +0000 (08:28 +0000)]
downloader: Replace snprintf by our own string function
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 8 May 2022 16:34:44 +0000 (16:34 +0000)]
db: Check for compatible architecture
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 7 Apr 2022 18:32:43 +0000 (18:32 +0000)]
macros: Build for more modern processors only
This patch enables pakfire to build for processors that have been
released after 2011 only.
It allows us to use modern processor features like SSE4.1, SSE4.2,
POPCNT, SSE3, and SSSE3.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 16:16:06 +0000 (16:16 +0000)]
db: Wrap erasing packages into a transaction, too
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 16:15:41 +0000 (16:15 +0000)]
file: Ignore if the file was already deleted
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 15:57:20 +0000 (15:57 +0000)]
db: Store a timestamp when the database was modified last
This is useful to detect whether things have changed since the database
was opened and whether things have to be re-read from it.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 14:46:13 +0000 (14:46 +0000)]
Implement a simple locking mechanism to avoid concurrent transactions
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:47:37 +0000 (13:47 +0000)]
configure: Fix appending flags to CFLAGS/LDFLAGS
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:25:22 +0000 (13:25 +0000)]
testsuite: Fix shadowed variables
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:23:50 +0000 (13:23 +0000)]
testsuite: Fix prototype declarations
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:20:31 +0000 (13:20 +0000)]
packagelist: Make helper function static
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:19:13 +0000 (13:19 +0000)]
transaction: Make pakfire_transaction_downloadsize static
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:18:34 +0000 (13:18 +0000)]
logging: Include header file
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:17:11 +0000 (13:17 +0000)]
keystore: Include header file
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:13:35 +0000 (13:13 +0000)]
pakfire: Do not attempt to call callbacks when not set
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:10:35 +0000 (13:10 +0000)]
parser: Reset r after no matches are found
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:10:20 +0000 (13:10 +0000)]
parser: Improve debugging output when expanding a value fails
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 13:01:01 +0000 (13:01 +0000)]
Fix shadowing any local variables
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 12:43:41 +0000 (12:43 +0000)]
Fix any invalid prototypes
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 12:39:30 +0000 (12:39 +0000)]
configure: Replace CFLAGS
All flags that are default or a decision by the operating system have
been removed and we only enable a bunch of warnings that will help us to
write better code.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 12:39:08 +0000 (12:39 +0000)]
configure: Ask for a modern C compiler
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 12:29:55 +0000 (12:29 +0000)]
configure: Enable -fno-semantic-interposition if possible
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 12:23:33 +0000 (12:23 +0000)]
Make pakfire non-interactive by default
This feels a lot more logical in the code. Most of the time Pakfire will
be used in a non-interactive mode and therefore making it optional is
the better choice.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 12:10:35 +0000 (12:10 +0000)]
transactions: Do not confirm when running on non-interactive mode
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 12:10:08 +0000 (12:10 +0000)]
archive: Do now show progressbar when running in non interactive mode
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 12:06:30 +0000 (12:06 +0000)]
transactions: Use callbacks to show status & progress
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 12:00:02 +0000 (12:00 +0000)]
callbacks: Only copy when data is set
When callbacks was a struct but some pointers where NULL it could happen
that we attempt to call that NULL pointer.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 11:59:10 +0000 (11:59 +0000)]
python: Make callbacks available from Python
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 11:47:42 +0000 (11:47 +0000)]
callbacks: Change progress from double to integer
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 9 Dec 2021 10:51:52 +0000 (10:51 +0000)]
pakfire: Introduce callbacks
These can be used to inform any calling applications about the status
of Pakfire.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 20:49:58 +0000 (20:49 +0000)]
pakfire-builder: build: Add --non-interactive switch
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 20:46:44 +0000 (20:46 +0000)]
pakfire-builder: build: Drop private network option
This is always on by default and cannot be turned off.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 19:07:23 +0000 (19:07 +0000)]
pakfire-builder: Remove forgotten comment
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 19:06:35 +0000 (19:06 +0000)]
pakfire-builder: Remove --mode parameter
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 19:05:49 +0000 (19:05 +0000)]
pakfire-builder: Remove --private-network switch
I do not see why we would need this here.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 19:03:23 +0000 (19:03 +0000)]
pakfire-builder: shell: Remove option to install additional packages
This should work inside the chroot with a functioning pakfire.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 18:57:10 +0000 (18:57 +0000)]
pakfire: Don't throw an exception if execute fails
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 18:49:16 +0000 (18:49 +0000)]
man: Document all pakfire commands
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 18:27:33 +0000 (18:27 +0000)]
man: Document command line switches
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 18:19:36 +0000 (18:19 +0000)]
pakfire: Refactor printing errors to console
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 18:19:10 +0000 (18:19 +0000)]
pakfire: Fix enabling/disabling repository when they don't exist
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 17:28:58 +0000 (17:28 +0000)]
pakfire: execute: Add --non-interactive switch
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 16:24:27 +0000 (16:24 +0000)]
pakfire: Add some useful output and return code to "check"
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 16:13:44 +0000 (16:13 +0000)]
pakfire: Import logging module
This is being used later on, but was unfortunately not imported
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 16:11:19 +0000 (16:11 +0000)]
_pakfire: Fix deprecation warning for PyBuildValue that uses #
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 16:03:48 +0000 (16:03 +0000)]
_pakfire: archive: Raise proper exception when file could not be read
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 15:41:58 +0000 (15:41 +0000)]
repo: Only delete files that start with prefix if requested
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 15:21:10 +0000 (15:21 +0000)]
archive: Accept if packages have no filelist
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 8 Dec 2021 15:20:43 +0000 (15:20 +0000)]
archive: Do not try to pass an empty filelist
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 7 Dec 2021 16:44:44 +0000 (16:44 +0000)]
util: Correctly find the first part before =, >, <, etc.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 7 Dec 2021 16:43:43 +0000 (16:43 +0000)]
util: Skip any dependencies starting with #
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 20 Nov 2021 16:32:06 +0000 (16:32 +0000)]
pakfire-builder: Forward shell exit code
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 20 Nov 2021 16:31:45 +0000 (16:31 +0000)]
archive: Add test for pakfire_archive_get_path/format
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 20 Nov 2021 16:16:42 +0000 (16:16 +0000)]
archive: Check if file exists after extraction
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 20 Nov 2021 16:14:27 +0000 (16:14 +0000)]
archive: Slightly refactor extraction and filelist test
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>