Commit Graph

438 Commits

Author SHA1 Message Date
Juan RP
878d2bf7e2 xbps-dgraph: only set rootdir it was set (fix #33). 2014-03-10 10:20:04 +01:00
Juan RP
0416b067d0 Use a POSIX lock for pkgdb and only issue pkgdb writes in exact points.
- Rather than using a POSIX named semaphore use a POSIX lock (lockf(3))
for pkgdb for writers. Writers that cannot acquire the pkgdb lock will
get EAGAIN rather then being blocked.

- Due to using a file lock we cannot write the pkgdb every time a package
is being unpacked, configured or removed. Instead pkgdb is only written
at the end of a specific point in the transaction (unpack, configure, remove)
or via xbps_pkgdb_unlock().
2014-03-04 14:37:10 +01:00
Juan RP
6335573180 NEWS: mention recent change to xbps-uhelper fetch by Gottox. 2014-03-04 14:35:05 +01:00
Juan RP
9101241b20 Fix pkg symlink removal introduced in the two phase package removal feature. 2014-02-26 10:05:19 +01:00
Juan RP
8c47021ec3 Fix #31 and add new test case to reproduce it. 2014-02-25 22:55:39 +01:00
Juan RP
f74bf1c1c8 New custom configuration file format that does not need confuse. 2014-02-25 16:42:52 +01:00
Juan RP
4d1cdcac0c Fix concurrency issues in pkgdb: only allow 1 write transaction at the same time.
This implementation relies on a POSIX named semaphore, which is also
required by xbps-rindex(8).
2014-02-23 08:23:14 +01:00
Juan RP
bc2bada045 NEWS: mention previous bugfix. 2014-02-23 08:17:51 +01:00
Juan RP
c9fd89a76a Post release version bump. 2014-02-21 09:35:51 +01:00
Juan RP
bd7713a8db NEWS: prepare for 0.32. 2014-02-21 09:33:53 +01:00
Juan RP
2fa0d56658 Fixed a xbps_pkgpattern_name() crash and a test to reproduce it (found by Gottox). 2014-02-15 01:26:42 +01:00
Juan RP
61fa9b8c7e Improve package removal by using a two phase approach: check and removal. 2014-02-09 11:54:49 +01:00
Juan RP
f97ea2b915 xbps-remove: make -O also remove signature files and skip pkgs with unmatched arch. 2014-02-07 03:50:30 +01:00
Juan RP
306fe4968e xbps-rindex: clear file permission bits before creating our named semaphore.
Due to the file permission bits (umask(3)) the semaphore wasn't created
with correct permissions.
2014-02-05 15:27:35 +01:00
Juan RP
9c124aa162 Post release bump. 2014-02-01 12:25:50 +01:00
Juan RP
7508678fa3 NEWS: prepare 0.31. 2014-02-01 10:45:08 +01:00
Juan RP
314386d3da NEWS: also mention the errno(3) propagation issue that I did fix yesterday. 2014-01-31 11:41:13 +01:00
Juan RP
f5e1fff93a xbps-rindex: use a POSIX named semaphore to avoid concurrency issues. 2014-01-31 11:35:31 +01:00
Juan RP
d08e76a386 Keep repo metadata if possible when updating repodata (xbps-rindex -a/-c).
API/ABI incompat changes, you've been warned.
2014-01-30 13:07:34 +01:00
Juan RP
c6cae9e6ef NEWS: mention recent xbps-rindex -c fix. 2014-01-30 12:54:43 +01:00
Juan RP
7ceb83cee7 NEWS: mention recent double free fix. 2014-01-28 21:01:39 +01:00
Juan RP
2bacf4887d Post release bump to 0.31. 2014-01-28 17:29:04 +01:00
Juan RP
aca6df5bba NEWS: prepare 0.30. 2014-01-28 17:27:06 +01:00
Juan RP
c03505b13e Fix #30 (segment fault in xbps-rindex) 2014-01-22 11:53:08 +01:00
Juan RP
72f37de770 Fix #29 (xbps-rindex does not sign repodata if no pkg has been signed) 2014-01-21 11:06:02 +01:00
Juan RP
e9bc52a01b Fix #28 (Verification fails due to missing signature). 2014-01-21 10:06:48 +01:00
Juan RP
16fc064aef Remove obsolete files also on package reinstalls (and downgrades). 2014-01-15 21:52:35 +01:00
Juan RP
98a3723902 Respect installation mode also on reinstall (and downgrade). 2014-01-15 16:17:41 +01:00
Juan RP
292be5c420 Make sure that all symlinks in a package are removed, not just dangling symlinks. 2014-01-12 17:10:07 +01:00
Juan RP
6570045cbb NEWS: prepare for 0.29. 2014-01-09 14:22:44 +01:00
Juan RP
278a58e841 NEWS: mention recent changes. 2014-01-09 11:42:07 +01:00
Juan RP
3397e6b0f4 Post-release bump to 0.29. 2014-01-03 11:09:42 +01:00
Juan RP
799ac1d5cb NEWS: update for 0.28. 2014-01-03 11:06:50 +01:00
Juan RP
ec0d38c469 Implement per pkg RSA signatures and on-demand repository access. 2013-12-24 10:43:55 +01:00
Juan RP
cdb04ff446 NEWS: update with recent changes. 2013-12-12 18:27:21 +01:00
Juan RP
4403caa434 Add repos set in xbps_handle::repositories to the top of the list.
That means that now xbps-install(8) and xbps-query(8) --repository
option does not override the repository list of a configuration file.
2013-12-04 16:59:15 +01:00
Juan RP
e86f9def03 xbps-rindex: fix #25 (--sign unnecessarily regenerates <arch>-repodata). 2013-11-30 08:04:37 +01:00
Juan RP
7c57918950 xbps-rindex(8): fix #24 and added an ATF test case. 2013-11-29 17:30:45 +01:00
Juan RP
de5bd83765 NEWS: prepare for 0.27 release. 2013-11-29 10:24:33 +01:00
Juan RP
dce26db1de libxbps: pkg remove: never remove base symlinks in the root directory.
The /bin, /sbin, /lib, /lib32, /lib64, /var/run symlinks should never be removed
in Void, so be safe and ignore the removal of them.

Added another test to the testsuite to verify its correctness.
2013-11-28 10:27:36 +01:00
Juan RP
2f1e108af5 NEWS: mention testsuite improvements. 2013-11-27 09:08:10 +01:00
Juan RP
8882b0215f Redo how the repository keys are stored.
- Repository keys are now stored in a new directory on metadir (/var/db/xbps):

	<metadir>/key>

- Repository keys are stored with the hex fingerprint of its RSA
  public key in a plist dictionary:

	<metadir>/keys/xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx.plist

- Drop xbps-rkeys(8) and merge its functionality into xbps-install(8) and
  xbps-query(8).

- xbps-query(8) -vL now shows some more details of remote repositories:

 3134 http://localhost:8000 (RSA signed, verified)
      Signed-by: Void Linux
      4096 60:ae:0c:d6:f0:95:17:80:bc:93:46:7a:89:af:a3:2d
   16 http://localhost:8000/nonfree (RSA signed, verified)
      Signed-by: Void Linux
      4096 60:ae:0c:d6:f0:95:17:80:bc:93:46:7a:89:af:a3:2d

Bump XBPS_API_VERSION.
2013-11-18 16:05:46 +01:00
Juan RP
41baf01cd1 NEWS: mention that issue #6 has been fixed. 2013-11-06 09:51:15 +01:00
Juan RP
c1fafcd339 Fix #20 and added an ATF test-case. 2013-11-05 09:56:36 +01:00
Juan RP
616d4420d2 xbps-rindex(8): fix #19. An ATF test-case will be imported later. 2013-11-02 11:34:55 +01:00
Juan RP
1fd164b88b NEWS: mention #18 has been fixed. 2013-11-01 18:09:41 +01:00
Juan RP
747f250202 unpack: apply correctly file permissions to existent files.
Will be backported to the 0.26.x branch.
2013-10-30 12:02:16 +01:00
Juan RP
3bb7168935 Merge branch '0.26.x' 2013-10-25 09:48:12 +02:00
Juan RP
43ba262976 NEWS: prepare for 0.26.1. 2013-10-25 09:46:26 +02:00
Juan RP
1c56e2342c xbps-uhelper: added 'real-version' action.
- This prints to stdout the version of an installed "real" package,
  not virtual. The 'version' action can be used to match any "real" and
  "virtual" package instead.
- Drop strcasecmp() to check actions and use strcmp() instead.
2013-10-25 09:43:42 +02:00
Juan RP
7b0e9967b1 xbps-uhelper: added 'real-version' action.
- This prints to stdout the version of an installed "real" package,
  not virtual. The 'version' action can be used to match any "real" and
  "virtual" package instead.
- Drop strcasecmp() to check actions and use strcmp() instead.
2013-10-22 09:56:55 +02:00
Juan RP
43b9be6046 xbps-rindex(8): added support for XBPS_PASSPHRASE env var.
- XBPS_PASSPHRASE (if set) will be supplied as passphrase when signing repos.
- Use the default OpenSSL passphrase cb when loading the private key.
2013-10-12 09:55:03 +02:00
Juan RP
c91050fc35 xbps-rindex(8): added -v --verbose option (mainly for -r mode). 2013-10-10 10:43:01 +02:00
Juan RP
a5ecaa493f New utility: xbps-rkeys(8) to manage RSA public keys. 2013-10-09 10:13:07 +02:00
Juan RP
14c20ece37 NEWS: xbps-rindex -c --clean mode removed. 2013-10-07 10:29:32 +02:00
Juan RP
8d5c48b861 Added support for the long awaited feature: RSA signed repositories. 2013-10-05 11:38:04 +02:00
Juan RP
0c16ebf4bf NEWS: prepare for 0.26. 2013-09-25 11:25:23 +02:00
Juan RP
4e0c933c7f NEWS: more tweaks. 2013-09-20 09:03:52 +02:00
Juan RP
14c3f40429 NEWS: sync with reality and misc tweaks. 2013-09-19 08:54:44 +02:00
Juan RP
27db8e89c4 xbps-query: replace -D --defrepo' option with -R' and `--repository=url'.
The argument in `--repository' is optional, therefore must be specified
with `=' to work. If no argument is specified, repository mode is enabled
preserving the repository list of configuration file.
2013-09-18 17:13:43 +02:00
Juan RP
2e5501b1a6 NEWS: note last changes. 2013-09-18 16:47:37 +02:00
Juan RP
98e1687ef5 Re-add all pkg metadata objects to the repository index. 2013-09-16 09:09:56 +02:00
Juan RP
4057e4961c Use C99 for loop initializers.
That means that a C99 compiler is now mandatory.
2013-09-15 10:06:49 +02:00
Juan RP
11fbffa241 Fix #14 from github (Removing recursively does not respect manual installation mode for dependencies). 2013-08-17 09:50:19 +02:00
Juan RP
776b94e6bc Remove PackagesOnHold from xbps.conf; use xbps-pkgdb -m hold|unhold instead.
To put a package on hold mode:
	$ xbps-pkgdb -m hold foo

To unhold the package:
	$ xbps-pkgdb -m unhold foo

To list packages on hold mode:
	$ xbps-query -H

This also close #12 from github.
2013-08-12 14:46:54 +02:00
Juan RP
9c9d5b58dd Assume 80 columns if TIOCGWINSZ ws.col is bogus (0). 2013-08-10 12:59:59 +02:00
Juan RP
8fa5f15cbb NEWS: update with recent changes. 2013-07-28 09:46:54 +02:00
Juan RP
432067de48 Remove three unused API functions. 2013-07-27 06:12:59 +02:00
Juan RP
20f2d10527 xbps-query(8): -L now prints all repos, including non working repos (close #11). 2013-07-26 11:42:52 +02:00
Juan RP
e0643acbb0 xbps-query(8): fixed some memleaks in local/remote ownedby mode. 2013-07-21 10:49:30 +02:00
Juan RP
bb0c3250b1 NEWS: mention regression in xbps-query(8). 2013-07-07 10:00:28 +02:00
Juan RP
ecd15b7d57 Check if an update for conflicting pkg is in the transaction for revdeps in vpkgs. 2013-07-05 10:09:32 +02:00
Juan RP
02e1958fac NEWS: prepare 0.25. 2013-07-05 08:01:37 +02:00
Juan RP
505a933097 Added support to verify reverse dependencies in a transaction.
See https://plus.google.com/106812073015308749022/posts/ZXMHimd8iKd
2013-06-27 16:52:31 +02:00
Juan RP
cccc9de7de NEWS: mention latest changes. 2013-06-20 12:19:48 +02:00
Juan RP
9c44411722 NEWS: mention recent changes. 2013-06-14 10:32:28 +02:00
Juan RP
6e6b7560f3 NEWS: mention xbps-dgraph changes. 2013-06-13 17:46:58 +02:00
Juan RP
734a2c3c2b xbps-query(8): added support to find revdeps for virtual pkgs in repository mode. 2013-06-11 16:18:40 +02:00
Juan RP
99be698979 Use a single file to store repository data.
This is just the starting point to extend repositories with PGP signatures.
2013-06-10 10:28:39 +02:00
Juan RP
d6605e1b97 xbps-create(8): calculate correctly target file for relative symlinks. 2013-05-27 10:27:55 +02:00
Juan RP
15b2258b77 xbps-pkgdb: fix issue #9 (remove old code that broke pkgdb mem vs disk comparisions). 2013-05-16 17:16:39 +02:00
Juan RP
cb15387bb8 Post release version bump. 2013-05-02 12:31:34 +02:00
Juan RP
956d0d8690 NEWS: update for 0.24. 2013-05-02 12:16:58 +02:00
Juan RP
53217fd51b xbps-rindex: added -f --force flag to forcefully register a pkg with -a --add. 2013-05-02 10:46:30 +02:00
Juan RP
30747b1c8b Post release bump to 0.24. 2013-04-19 10:44:13 +02:00
Juan RP
1503a83c89 NEWS: prepare 0.23. 2013-04-19 10:31:25 +02:00
Juan RP
5fd7565e6c xbps-install(8): -R now overrides the repository list set in a configuration file.
Now -R can be used independently if a configuration file exists or not.
2013-04-18 18:17:14 +02:00
Juan RP
68770053e9 xbps-rindex: fixed cleaning obsolete entries from index-files in clean mode (-c). 2013-04-06 21:30:31 +02:00
Juan RP
f6971727ac NEWS: mention latest bugfix. 2013-04-04 10:43:57 +02:00
Juan RP
8736ef6c5a xbps-create: fix issue #5 from github: initialize setlocale. 2013-04-01 10:49:25 +02:00
Juan RP
069f65a2a5 NEWS: mention 2 last items. 2013-03-26 10:56:01 +01:00
Juan RP
4411ff82ac Post release bump to 0.23. 2013-03-23 08:33:38 +01:00
Juan RP
ca6cfa252c NEWS: update for 0.22. 2013-03-23 08:24:34 +01:00
Juan RP
59006fe86c xbps-create: added --build-options option, mainly for xbps-src.
This expects a string with the list of used build options.
2013-03-23 08:18:06 +01:00
Juan RP
70b89a88cc xbps-query: make -o (ownedby) follow symlinks; close issue #4 from github. 2013-03-17 10:59:40 +01:00
Juan RP
7491c0e584 xbps-create: set root:root if e[gu]id == st.st_e[gu]id in package files.
The rational is that packages should have proper perms to be installed
globally in a system as root, and fakeroot is useless when generating
packages with xbps-create when it's statically build.
2013-03-15 09:31:15 +01:00
Juan RP
dd9cf9737b xbps-query: fix segfault when listing unexistent package files. 2013-03-13 23:15:42 +01:00
Juan RP
b5d141e28c When checking for obsolete files ignore unexistent files. 2013-03-13 22:08:13 +01:00
Juan RP
7fd3e23762 NEWS: another item. 2013-03-11 15:51:58 +01:00
Juan RP
fe922ace4c Merge portable proplib 0.6.3. 2013-03-09 16:41:40 +01:00
Juan RP
50ea03df2a Revert code to update xbps independently; I'll use another way to implement this. 2013-03-08 09:44:57 +01:00
Juan RP
7c1a0ac3e8 New pkgdb (0.21) and repo index (1.7) format, see NEWS for info. 2013-03-05 04:08:42 +01:00
Juan RP
4a52542a76 NEWS: mention musl compat. 2013-03-03 11:22:20 +01:00
Juan RP
c50cbf03c7 xbps-query: added support to query virtual packages in repository mode. 2013-03-02 19:10:13 +01:00
Juan RP
0c50c0bb2d xbps-pkgdb: new option -m --mode <auto|manual> to change pkg install mode. 2013-02-20 10:35:55 +01:00
Juan RP
3357683215 NEWS: some tweaks for latest item. 2013-02-19 14:57:57 +01:00
Juan RP
be1086f8fb xbps-query: -s, --search is able to find pkgs by matching virtual pkgnames. 2013-02-15 08:30:11 +01:00
Juan RP
3bb41a2662 xbps-query: changed -M (--list-orphans) shortopt to -O. 2013-02-13 15:47:46 +01:00
Juan RP
2b5d3bb8f4 libxbps: when resolving deps, ignore all of them that depend on the origin pkg. 2013-02-07 18:50:55 +01:00
Juan RP
e9e704d59a configure: use gcc --print-sysroot to behave correctly in cross builds. 2013-02-06 18:41:44 +01:00
Juan RP
d8769c4873 Workaround fix for 'xbps-install -yf xbps <-> xbps-git'. 2013-02-05 12:10:24 +01:00
Juan RP
004758b70f Mention latest fix to fully remove pkgs with broken symlinks. 2013-02-04 16:42:55 +01:00
Juan RP
fa1d543dfa Ignore package conflicts against themselves, due to virtual packages. 2013-02-02 14:34:55 +01:00
Juan RP
dcff876533 xbps-query: explicitly use -R for repository mode; otherwise local.
This closes #3 by radare.
2013-02-02 12:02:10 +01:00
Juan RP
5c1688944d xbps-install: make -f preserve conf files; use it twice to overwrite all files. 2013-02-02 11:30:42 +01:00
Juan RP
bdcdb9f1a0 xbps_fetch_file: don't check for file truncation if server answers with invalid info. 2013-02-01 13:40:27 +01:00
Juan RP
42e0f19bbe Fix package conflicts detection (regression from b9136c61c9). 2013-02-01 12:41:27 +01:00
Juan RP
303df5fc46 xbps-install: new flag -S,--sync and remove -s,--skip-sync.
-S: to explicitly synchronize remote repository index files.
-s: removed because it is now redundant and useless.
2013-01-31 10:44:33 +01:00
Juan RP
e6fcf87b50 NEWS: prepare for 0.20. 2013-01-24 09:39:16 +01:00
Juan RP
82a8263f37 xbps-rindex(8): fix crash in -r when a pkg cannot be removed. 2013-01-16 16:25:29 +01:00
Juan RP
fa40928026 xbps-install: don't treat EEXIST as an error when installing pkgs.
Thanks to pancake for the bug hunting.
2013-01-16 11:47:52 +01:00
Juan RP
b5bb1debe4 Partial revert of 5d59a15faf.
Error out if "pre-remove" script action fails, otherwise package is
removed but its files are still there (ouch).
2013-01-14 14:01:35 +01:00
Juan RP
5e613243ea NEWS: mention libfetch changes. 2013-01-13 21:11:33 +01:00
Juan RP
a4e3a489a1 Change some configure options to --enable-foo (static, debug, tests, etc). 2012-12-29 07:44:10 +01:00
Juan RP
ba12ba2689 NEWS: mention recent change when removing pkgs. 2012-12-29 07:43:02 +01:00
Juan RP
0f22579a34 libxbps: fixed regression executing "pre-remove" action in installed pkgs. 2012-12-28 10:42:13 +01:00
Juan RP
1fa3601893 xbps-create: added support for --shlib-{provides,requires} options. 2012-12-24 10:55:17 +01:00
Juan RP
9489f8a3dc Do not configure pkg if there's an update in transaction.
This fixes the following problem:

 - pkg is installed with state "unpacked".
 - There's an update of pkg in transaction.
 - xbps tries to configure the pkg because its state is "unpacked",
   therefore ignoring the update.
2012-12-20 12:08:55 +01:00
Juan RP
faf0fd6a08 xbps-query: print pkg state in -l, --list-packages mode. 2012-12-20 06:15:56 +01:00
Juan RP
fed10ff211 NEWS: mention xbps-reconfigure fix. 2012-12-20 06:04:28 +01:00
Juan RP
9d97d2952a NEWS: prepare 0.19. 2012-12-15 23:21:30 +01:00
Juan RP
bb877b0db7 xbps-rindex: -a does not remove outdated binpkgs anymore; use -r instead. 2012-12-15 11:13:32 +01:00
Juan RP
41f753248f xbps-rindex(8): remove obsoletes mode (-r) is now multithreaded. 2012-12-14 09:47:47 +01:00
Juan RP
a0443fc4ce xbps-rindex(8): clean mode (-c) is now multithreaded. 2012-12-14 04:59:47 +01:00
Juan RP
33a8150a98 xbps-pkgdb: checking all pkgs with -a/--all is now multithreaded. 2012-12-14 03:31:24 +01:00
Juan RP
db5da575a4 xbps-create: added support to add hardlinks. 2012-12-12 03:48:27 +01:00
Juan RP
298072ced3 xbps-rindex(8): in clean mode (-c) also remove entries with unmatched hash. 2012-12-03 11:05:37 +01:00
Juan RP
f45352dbf8 Added support for dynamic generation of revdeps for installed packages. 2012-11-30 17:40:52 +01:00
Juan RP
7584c4b3ef NEWS: set date to 0.18.1. 2012-11-26 23:34:41 +01:00
Juan RP
63dc8a8693 NEWS: update for 0.18.1. 2012-11-26 23:32:58 +01:00
Juan RP
79a31bb6bc xbps-query: implemented -X, --revdeps in repository mode. 2012-11-21 02:52:36 +01:00
Juan RP
a311294f0a libxbps: added support to "inject" vpkg config files at initialization time. 2012-11-19 15:42:24 +01:00
Juan RP
34bd49f85a New pkg metadata structure for 0.18. See the NEWS file for info. 2012-11-16 16:55:35 +01:00
Juan RP
a6c979295f NEWS: typo fix. 2012-11-12 17:09:29 +01:00
Juan RP
58333419a0 Shell wildcard patterns can now be used in the PackagesOnHold option. 2012-11-11 16:11:40 +01:00
Juan RP
52cef3e65f Update NEWS and TODO. 2012-11-06 11:11:13 +01:00
Juan RP
20078259e2 NEWS: mention latest changes. 2012-10-26 11:34:47 +02:00
Juan RP
9e11ea950a Do not inherit unneeded objs from trans dictionary onto pkg's pkgdb dictionary. 2012-10-25 09:29:56 +02:00
Juan RP
863f12e349 Improved finding obsolete files while upgrading pkgs. 2012-10-24 07:45:00 +02:00
Juan RP
922dbbb85b NEWS: mention recent changes. 2012-10-09 10:07:47 +02:00