]>
git.ipfire.org Git - pakfire.git/log
Michael Tremer [Sat, 13 Feb 2021 16:34:31 +0000 (16:34 +0000)]
python: Add simply Parser module
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 13 Feb 2021 16:28:42 +0000 (16:28 +0000)]
pakfire: Skip deactivation when running in /
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 13 Feb 2021 15:40:09 +0000 (15:40 +0000)]
parser: Remove declaration limit and allocate memory dynamically
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 13 Feb 2021 15:31:20 +0000 (15:31 +0000)]
builder: Extract packages into the build environment
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 13 Feb 2021 15:05:41 +0000 (15:05 +0000)]
Drop unused compression module
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 13 Feb 2021 14:45:02 +0000 (14:45 +0000)]
system: Drop loads of unused mountpoint code
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 13 Feb 2021 14:39:46 +0000 (14:39 +0000)]
_pakfire: Drop unused sync() function
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 13 Feb 2021 14:36:44 +0000 (14:36 +0000)]
_pakfire: Drop unused constants
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 13 Feb 2021 14:18:06 +0000 (14:18 +0000)]
builder: Add mount/umount to _pakfire to avoid calling /bin/mount
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 13 Feb 2021 13:18:55 +0000 (13:18 +0000)]
builder: Remove ccache settings in environment
This is something that we should do elsewhere
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 13 Feb 2021 13:11:23 +0000 (13:11 +0000)]
builder: Do not lock build environments
This feels a bit unnecessary because the paths are being randomised
anyways and this might need to move into Pakfire().
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 13 Feb 2021 12:41:06 +0000 (12:41 +0000)]
Move populating /dev to libpakfire
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 12 Feb 2021 19:39:00 +0000 (19:39 +0000)]
mount: Allow execution from /tmp
Our scriptlets are being copied to this directory and won't work with
this bit set.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 12 Feb 2021 19:35:29 +0000 (19:35 +0000)]
Update translations
This patch updates the LINGUAS file with everything I could find in the
directory and gettext removed all file locations.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 12 Feb 2021 19:30:22 +0000 (19:30 +0000)]
libpakfire: Implement nested activation
To avoid that we mount and umount the entire environment over and over
again we mount it once for the transaction and keep a reference counter
to remember when to umount again.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 12 Feb 2021 19:23:01 +0000 (19:23 +0000)]
libpakfire: Add pakfire_activate/deactivate
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 12 Feb 2021 17:34:52 +0000 (17:34 +0000)]
arch: Null-terminate array
This changes nothing apart from that the code looks similar to other
places.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 12 Feb 2021 17:33:19 +0000 (17:33 +0000)]
arch: Add support for RISC-V 64
Just for fun
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 12 Feb 2021 17:19:08 +0000 (17:19 +0000)]
Drop unused filelist module
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 12 Feb 2021 17:11:45 +0000 (17:11 +0000)]
packages: Drop old code that read archives and installed packages
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 12 Feb 2021 17:01:29 +0000 (17:01 +0000)]
Drop unused progressbar module
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 12 Feb 2021 16:58:36 +0000 (16:58 +0000)]
Drop old repository template code
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 12 Feb 2021 16:55:56 +0000 (16:55 +0000)]
Remove unused python directory repository code
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 12 Feb 2021 16:51:44 +0000 (16:51 +0000)]
Drop PakfireServer
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 12 Feb 2021 16:45:43 +0000 (16:45 +0000)]
Drop unused arch.py
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 12 Feb 2021 16:43:08 +0000 (16:43 +0000)]
repo: Add function to scan repos for archives
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 11 Feb 2021 16:58:38 +0000 (16:58 +0000)]
tests: Prepare repository tests
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 11 Feb 2021 16:54:10 +0000 (16:54 +0000)]
pakfire: Rename local repository to @system
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 11 Feb 2021 16:35:26 +0000 (16:35 +0000)]
db: Read install time back from database
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 11 Feb 2021 16:21:09 +0000 (16:21 +0000)]
package: Give build_host/build_time proper names and types
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 11 Feb 2021 16:10:46 +0000 (16:10 +0000)]
packages: Capitalize headlines
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 11 Feb 2021 16:06:29 +0000 (16:06 +0000)]
relationlists: Sort before printing them
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 11 Feb 2021 15:44:37 +0000 (15:44 +0000)]
packages: Add weak dependencies supplements/enhances
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 11 Feb 2021 15:33:07 +0000 (15:33 +0000)]
packages: dump: Process dependencies in a big loop
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 11 Feb 2021 15:22:29 +0000 (15:22 +0000)]
packages: Truncate dependencies correctly at the markers
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 11 Feb 2021 14:59:15 +0000 (14:59 +0000)]
package: Use solvable_*_deparray instead of idarray
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 11 Feb 2021 14:49:43 +0000 (14:49 +0000)]
db: Time how long the import takes
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 11 Feb 2021 14:30:13 +0000 (14:30 +0000)]
pakfire: Improve performance when importing relation lists
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 11 Feb 2021 13:37:29 +0000 (13:37 +0000)]
Drop Python implementation of the local repository
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 11 Feb 2021 13:33:25 +0000 (13:33 +0000)]
request: Check whether installed repository is set
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 11 Feb 2021 13:09:36 +0000 (13:09 +0000)]
db: Load dependencies
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 11 Feb 2021 11:06:35 +0000 (11:06 +0000)]
package: Rename pakfire_package_create2 to pakfire_package_create
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 11 Feb 2021 11:04:18 +0000 (11:04 +0000)]
package: Keep a copy of the repository
This increases performance when the repository needs to be accessed
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 10 Feb 2021 15:23:33 +0000 (15:23 +0000)]
package: Rename pakfire_package_create to pakfire_package_create_from_solvable
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 10 Feb 2021 15:06:15 +0000 (15:06 +0000)]
db: Load filelists
To avoid running an extra query for the filelist, we simply have SQLite
concatenate the filelist and we split it again after.
It would have been nicer to use NUL to concatenate the string, but that
is unfortunately difficult in SQLite, so that we use newline and replace
it later so that we can only run memcpy() once instead of once per line.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 10 Feb 2021 11:47:51 +0000 (11:47 +0000)]
db: Import more text fields into the package database
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 9 Feb 2021 19:18:58 +0000 (19:18 +0000)]
db: Internalize repository after load
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 9 Feb 2021 19:05:09 +0000 (19:05 +0000)]
db: Load a couple of attributes for packages into repo
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 9 Feb 2021 18:18:22 +0000 (18:18 +0000)]
pakfire: Automatically create the installed repository
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 9 Feb 2021 18:12:28 +0000 (18:12 +0000)]
pakfire: Tidy up initialisation
The code that sets up the pool has now entirely moved into a separate
function.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Feb 2021 20:48:52 +0000 (20:48 +0000)]
libpakfire: Drop pakfire_strdup
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Feb 2021 20:41:17 +0000 (20:41 +0000)]
libpakfire: Drop pakfire_realloc
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Feb 2021 20:39:14 +0000 (20:39 +0000)]
libpakfire: Drop pakfire_malloc
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Feb 2021 19:32:16 +0000 (19:32 +0000)]
libpakfire: Drop pakfire_calloc
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 8 Feb 2021 19:27:17 +0000 (19:27 +0000)]
libpakfire: Drop pakfire_free
There is no point in using an own function to free any memory.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 7 Feb 2021 18:30:19 +0000 (18:30 +0000)]
libpakfire: Run scriptlets from database
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 7 Feb 2021 17:49:54 +0000 (17:49 +0000)]
scriptlets: Constify list of scriptlet types
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 7 Feb 2021 17:42:37 +0000 (17:42 +0000)]
db: Create a unique index over package UUIDs
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 7 Feb 2021 17:39:55 +0000 (17:39 +0000)]
db: Implement removing packages
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 7 Feb 2021 17:36:41 +0000 (17:36 +0000)]
db: Fix field number for vendor (and do not overwrite UUID)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 7 Feb 2021 17:11:12 +0000 (17:11 +0000)]
db: Add function which returns how many packages are installed
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 7 Feb 2021 17:03:12 +0000 (17:03 +0000)]
db: Add test for add_package()
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 7 Feb 2021 17:02:37 +0000 (17:02 +0000)]
repo: Do not call pakfire_repo_identical() without a repository
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 6 Feb 2021 17:41:01 +0000 (17:41 +0000)]
relationlists: Rename _count() and _get_clone()
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 6 Feb 2021 17:34:54 +0000 (17:34 +0000)]
relationlist: Refactor create
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 6 Feb 2021 17:05:03 +0000 (17:05 +0000)]
db: Import dependencies
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 30 Jan 2021 17:36:43 +0000 (17:36 +0000)]
libpakfire: db: Add scriptlets
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 30 Jan 2021 17:33:27 +0000 (17:33 +0000)]
libpakfire: scriptlets live in "scriptlets/"
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 30 Jan 2021 17:33:07 +0000 (17:33 +0000)]
libpakfire: archive: Do not break on successful memory allocation
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 30 Jan 2021 17:32:37 +0000 (17:32 +0000)]
libpakfire: scriptlets: Actually free on free()
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 30 Jan 2021 17:31:10 +0000 (17:31 +0000)]
libpakfire: execute: Call chdir("/") after chroot
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 30 Jan 2021 16:24:46 +0000 (16:24 +0000)]
libpakfire: scriptlets: Move them into an own data structure
We deal with scriptlets in several places and carrying them around as
loose pointers to some data is not very comfortable.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 30 Jan 2021 14:49:49 +0000 (14:49 +0000)]
libpakfire: db: Initialise r
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 30 Jan 2021 14:47:41 +0000 (14:47 +0000)]
libpakfire: db: Drop unused build_date column
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 30 Jan 2021 14:30:29 +0000 (14:30 +0000)]
libpakfire: Drop dependency on libgcrypt
This library was chosen as a lightweight and more easy to use
alternative to OpenSSL.
Unfortunately it does not seem to be up to standard in terms of
reliability, performance and most importantly security.
Therefore we are using OpenSSL which is the de-facto standard library,
well-audited and has a transparent development process.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 30 Jan 2021 14:26:17 +0000 (14:26 +0000)]
archive: Use OpenSSL instead of libcrypt to compute hashes
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 30 Jan 2021 12:22:15 +0000 (12:22 +0000)]
libpakfire: Link against OpenSSL
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 30 Jan 2021 12:18:19 +0000 (12:18 +0000)]
tests: Add a basic test for filelists
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 24 Jan 2021 16:49:32 +0000 (16:49 +0000)]
libpakfire: Drop filelists from packages
Filelists are now being allocated when needed.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 24 Jan 2021 16:43:13 +0000 (16:43 +0000)]
libpakfire: Remove dropped functions from symbols table
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 24 Jan 2021 16:41:23 +0000 (16:41 +0000)]
libpakfire: filelist: Implement sorting filelists
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 24 Jan 2021 16:34:30 +0000 (16:34 +0000)]
libpakfire: Refactor files
This used to be used to implement lists which was a right mess.
Lists are now filelists and files are now files only.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 24 Jan 2021 15:15:10 +0000 (15:15 +0000)]
libpakfire: filelist: Refactor filelist
The code that was written was not even used and has now been rewritten
in order to make it usable and to remove any linked-list stuff from
PakfireFile.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 24 Jan 2021 14:55:16 +0000 (14:55 +0000)]
libpakfire: filelist: Move object declaration into .c file
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 24 Jan 2021 14:54:12 +0000 (14:54 +0000)]
libpakfire: db: Add files to filelist
This is incomplete because we can currently not access some attributes
from the file object.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 23 Jan 2021 16:35:22 +0000 (16:35 +0000)]
libpakfire: steps: Make them independent from libsolv
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 23 Jan 2021 16:34:45 +0000 (16:34 +0000)]
libpakfire: db: Drop build_id column from INSERT statement
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 23 Jan 2021 16:20:49 +0000 (16:20 +0000)]
libpakfire: db: Add check function to check database integrity
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 22 Jan 2021 18:10:59 +0000 (18:10 +0000)]
tests: Add some tests for database
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 22 Jan 2021 18:08:56 +0000 (18:08 +0000)]
libpakfire: db: Fix typo in optimize
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 22 Jan 2021 18:03:55 +0000 (18:03 +0000)]
libpakfire: db: Fix reading settings
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 22 Jan 2021 17:24:01 +0000 (17:24 +0000)]
libpakfire: db: Drop old build_id column
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 22 Jan 2021 17:14:35 +0000 (17:14 +0000)]
libpakfire: db: Add packages to database when installed
This does not add any metadata, yet.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 22 Jan 2021 13:03:53 +0000 (13:03 +0000)]
libpakfire: db: Add foreign keys to tables
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 22 Jan 2021 12:10:52 +0000 (12:10 +0000)]
libpakfire: db: Add scriptlets table
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 22 Jan 2021 12:04:07 +0000 (12:04 +0000)]
libpakfire: db: Add files table
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 22 Jan 2021 10:25:35 +0000 (10:25 +0000)]
libpakfire: db: Add dependencies table
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 21 Jan 2021 19:51:36 +0000 (19:51 +0000)]
libpakfire: db: Create packages table
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 21 Jan 2021 19:39:55 +0000 (19:39 +0000)]
libpakfire: db: Self-populate schema
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 21 Jan 2021 11:34:37 +0000 (11:34 +0000)]
libpakfire: db: Set database to WAL mode
We disable autocheckpointing since we are expected to writer rather
large transactions and we would like to keep the database as compact as
possible, too. That is achieved by truncating the WAL log in the end
where the data is being copied into the main database and the WAL log
being emptied after.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>