Juan RP
5f56b130fc
xbps-rindex/index-clean: fix a resouce leak (CID #98689 ).
2015-07-26 08:17:17 +02:00
Juan RP
7d7f08b559
xbps-rindex/sign: fix a resource leak (CID #98687 ).
2015-07-26 08:12:22 +02:00
Juan RP
9d70fcd8d0
xbps-rindex/index-clean: handle possible NULL pointer derefs (CID #98685 ).
2015-07-26 08:06:38 +02:00
Juan RP
97c8eb0c36
xbps-rindex: fix a double close (CID #98694 ).
2015-07-26 07:59:16 +02:00
Juan RP
55e9752aee
xbps-uhelper: fetch: print errors in stderr instead.
2015-06-22 20:03:40 +02:00
Juan RP
60c4eb7c7a
Merge pull request #103 from CMB/getopt
...
Use getopt_long instead of getopt, for musl.
2015-06-22 08:09:19 +02:00
Juan RP
22f982df77
xbps-uchroot: fix warning with old clang (hi travis).
2015-06-22 08:02:57 +02:00
Christopher Brannon
b1e6efeebe
Use getopt_long instead of getopt, for musl.
2015-06-21 07:06:18 -07:00
Juan RP
5ebd4a6dfb
xbps-uchroot: handle SIG{INT,TERM,QUIT} signals to cleanup temp masterdir.
2015-06-11 11:21:35 +02:00
Juan RP
d86cece411
xbps-rindex(1): add support to sign specific pkgs, not the whole repo.
...
See NEWS for more information.
2015-06-04 16:01:43 +02:00
Juan RP
6df2ff69fe
xbps-fbulk: add -h for usage().
2015-06-04 10:02:16 +02:00
Juan RP
07e8330936
xbps-install(1): added -U --unpack-only to only unpack pkgs, skips configuration.
2015-06-03 11:15:11 +02:00
Juan RP
b2dd18faba
configure: added --enable-fulldebug
to enable extra/expensive debug code.
...
This is mostly to avoid the allocation required by the externalization of the
transaction dictionary, which in some cases is huge.
This should reduce the massive memory usage required to inspect the externalized
dictionary.
2015-05-28 11:02:40 +02:00
Juan RP
769a997afb
Introduce xbps_plist_{array,dictionary}_from_file().
...
Those are a wrapper around xbps_{array,dictionary}_internalize_from_zfile()
that prints a debugging msg when the plist file cannot be internalized.
Update xbps to use these wrappers.
2015-05-28 10:15:05 +02:00
Juan RP
c4ed1b5845
xbps-pkgdb: if pkg metafile cannot be internalized print a proper errmsg.
2015-05-28 09:44:01 +02:00
Juan RP
42831b97d4
xbps-pkgdb: add two assertions.
2015-05-28 09:41:00 +02:00
Juan RP
c4184e64b0
xbps-fbulk: needs fcntl.h too.
2015-05-28 09:20:15 +02:00
Juan RP
18d4ee73ac
xbps-fbulk: wait3() is declared via _{GNU,BSD}_SOURCE with musl.
2015-05-28 09:18:32 +02:00
Juan RP
0027e54532
xbps-pkgdb.1: fix a mandoc -Wall warning.
2015-05-28 09:13:12 +02:00
Juan RP
b459e4542f
xbps-rindex: eliminate locking and update repo index immutable dicts.
2015-05-22 12:20:49 +02:00
Juan RP
fcdd71aac4
Move xbps utils manpages to the section 1 (user commands).
2015-05-16 09:46:10 +02:00
Juan RP
ff8569274f
Merge pull request #96 from GiedriusS/master
...
xbps-checkvars: add missing assertions after memory allocations
2015-05-11 09:54:21 +02:00
Giedrius Statkevičius
fe3cb72a5b
xbps-checkvars: add missing assertions after memory allocations
2015-05-10 21:17:39 +03:00
Juan RP
2c0e27a001
xbps-install: print required size and free size on ENOSPC.
2015-05-09 07:02:21 +02:00
Juan RP
2baf1ae101
xbps-uunshare: replace -D/-H/-S with -b src/dest and switch to getopt(3).
2015-05-06 11:40:19 +02:00
Juan RP
4a97810c0b
xbps-uchroot: assert that strdup() does not fail.
2015-05-06 11:38:06 +02:00
Juan RP
7d6d1805f3
xbps-uchroot: replace -D/-H/-S with -b src/dest and switch to getopt(3).
2015-05-06 11:24:47 +02:00
Juan RP
9f08ec5123
xbps-fbulk: added support to just building pkgs specified as arguments.
...
xbps-fbulk [options] void-packages [pkg pkgN]
2015-05-04 18:12:52 +02:00
Juan RP
6a087f5a1f
xbps-uchroot.8: document -t and detail -o.
2015-04-27 17:50:46 +02:00
Juan RP
93c85e8038
xbps-fbulk: simplify recollection of dependencies.
...
The changes I made to xbps-src show-build-deps now will print only
real source package names, without version components or virtual packages,
so that fbulk does not do any extra work.
2015-04-26 10:05:56 +02:00
Juan RP
149f48fb8e
xbps-uchroot: added -t option to mount a tmpfs for overlayfs.
2015-04-23 15:05:29 +02:00
Juan RP
46e6a00482
xbps-fbulk: check for xcode==2 to add it to "skipped".
2015-04-23 10:37:32 +02:00
Juan RP
31bf6c5309
xbps-uchroot: added -o <opts> to pass options to the temporary tmpfs mount.
2015-04-20 20:44:42 +02:00
Juan RP
7ea5a53cbd
xbps-fbulk: deps/foo just append the dependency pkgname.
2015-04-20 18:44:06 +02:00
Juan RP
4b608365e0
xbps-fbulk: split results into 4 categories: good, bad, skipped, deps.
...
- good (built successfully)
- bad (build failed)
- skipped (build skipped due to broken/only_for_archs)
- deps (build skipped due to dependencies)
2015-04-20 17:47:10 +02:00
Juan RP
e60ab98e2c
xbps-fbulk: added -a <cross-target> support.
2015-04-19 11:49:29 +02:00
Juan RP
d50a6866bc
xbps-uchroot: with -O, don't make tmpfs a private mount.
...
This seems to avoid the weird build issues with xbps-fbulk.
2015-04-16 19:07:40 +02:00
Juan RP
18e743daed
xbps-fbulk: declare usage() with __attribute__((noreturn)) to fix clang.
2015-04-16 10:40:26 +02:00
Juan RP
9199867df1
New utility: xbps-fbulk - a fast bulk builder for xbps.
...
This is a modified version of DragonFlyBSD's fastbulk utility, that
has been adapted for xbps/xbps-src and contains multiple improvements
like configurable logging path, skipping building non working packages
(broken/only_for_archs), etc.
A manual page will be pushed soon.
This is still WIP, it needs more changes to support building a customizable
set of packages and other additions.
2015-04-16 10:28:01 +02:00
Juan RP
bc97851fdb
xbps-query(8): do not truncate output if stdout is not a tty.
2015-04-15 18:40:34 +02:00
Juan RP
19fc88198a
xbps-uunshare.8: sync with reality.
2015-04-13 16:11:54 +02:00
Juan RP
f78c2986d4
xbps-uchroot: try to bind mount /proc if a new instance fails.
...
This should help uchroot to work in the travis-ci containers (hopefully).
2015-04-11 08:47:40 +02:00
Juan RP
3ef9350787
xbps-rindex/clean: simplify.
2015-04-09 12:14:03 +02:00
Juan RP
ea0f1731e3
xbps-uchroot: added -O to use overlayfs on tmpfs in a tempdir.
2015-03-26 03:15:17 +01:00
Juan RP
9a16283575
Introduce xbps_repo_{un,}lock() to serialize write access to repodata.
...
We use a simple file lock that is created with O_CREAT|O_EXCL.
This should fix the concurrency issues with multiple processes
running xbps-rindex -a/-c on the same repository/arch combo.
2015-03-25 12:00:59 +01:00
Juan RP
62b21a4f93
xbps-install/question.c: char is not enough for fgetc, use int (HI GOTTOX)
2015-03-21 09:45:29 +01:00
Enno Boland
1eeaa99438
utils: test for EOF on error, not for \0.
2015-03-14 00:41:39 +01:00
Enno Boland
507a9e338f
utils: small code cleanup.
2015-03-14 00:38:33 +01:00
Juan RP
52dae50075
xbps-uunshare: replace clone/exec with unshare/exec cmd.
...
There's no reason to clone and run cmd in the child, replace the
execution environment with cmd directly to avoid the child process.
2015-03-13 21:14:28 +01:00
Juan RP
519ea4001c
xbps-uunshare: fix typo in an error msg (thanks uggedal).
2015-03-12 19:05:05 +01:00
Juan RP
301b6d220e
xbps-uunshare: fix previous ( 15977278
).
2015-03-09 12:45:32 +01:00
Juan RP
1597727814
xbps-uunshare: do not fail if /proc/self/setgroups does not exist.
...
3.16 supports user_namespaces(7) but does not have /proc/self/setgroups.
Found by @cheneukirchen.
2015-03-09 12:34:57 +01:00
Juan RP
25f7228920
xbps-reconfigure: add -i/--ignore to usage; thanks @chneukirchen.
2015-03-08 10:22:15 +01:00
Juan RP
acb00d52e4
xbps-checkvers(8): fix manually added packages as arguments.
...
Regression introduced in the 0.44 changes.
2015-03-07 09:11:12 +01:00
Juan RP
77e83d4b17
xbps-uunshare: for compat with uchroot, use the uid/gid of the calling process.
...
... rather than setting this up for uid/gid 0.
2015-03-06 07:39:31 +01:00
Juan RP
3da2c3fdda
xbps-uunshare: silence a clang warning.
2015-03-05 19:24:33 +01:00
Juan RP
26944cf6be
xbps-uunshare: chdir to the correct dir for bind mounts.
2015-03-05 19:06:39 +01:00
Juan RP
a1d1b3e480
bin/Makefile: restrict xbps-uunshare(8) only on linux.
2015-03-05 18:46:01 +01:00
Juan RP
58e6d71d24
New utility: xbps-uunshare(8) - like xbps-uchroot(8) with user_namespaces(7).
2015-03-05 18:44:20 +01:00
Juan RP
927254c43e
xbps-rindex(8): fix -s short option (omitted in shortopts).
2015-03-03 16:10:03 +01:00
Juan RP
4922c808f4
Implemented feature #77 (Add package repository locked mode)
...
Close #77
2015-03-03 12:11:28 +01:00
Juan RP
db21c045d2
xbps-create(8): use fdatasync() rather than fsync().
...
The latter could be too expensive, and we only care for the data to be written
to the binary package because a bit later we rename() the temporary file,
which will ensure a data flush to disk.
2015-02-27 11:04:25 +01:00
Juan RP
04da57e4f9
xbps-pkgdb: when checking pkg files, ignore mtime with mutable files.
2015-02-27 10:38:50 +01:00
Juan RP
c712c99ced
xbps-pkgdb: exit with error if any test fails.
2015-02-26 12:01:20 +01:00
Juan RP
725ef2472d
xbps-uhelper: sync error messages with reality.
2015-02-23 16:56:47 +01:00
Juan RP
b909e8edc3
xbps-pkgdb: fix use-after-free introduced in 3855d2e
.
2015-02-23 08:26:20 +01:00
Juan RP
3855d2e2fb
xbps-pkgdb(8): check pkg file mtime (iff the obj is available).
2015-02-22 18:45:47 +01:00
Juan RP
2cae0cba01
xbps-create(8): store file mtime in metadata for upcoming changes.
2015-02-22 18:20:32 +01:00
Juan RP
3692ecb537
xbps-query/search: fix previous.
2015-02-20 11:07:35 +01:00
Juan RP
341e8a10ae
xbps-query/search: minor optimizations.
2015-02-20 11:01:18 +01:00
Juan RP
a05e039cce
Revert "Stop converting relative symlinks to absolute."
...
This reverts commit 9ae3638429
.
This change is ok, but cannot be used right now because all existing
binpkgs were created with an old xbps-create(8).
2015-02-19 11:11:58 +01:00
Juan RP
9ae3638429
Stop converting relative symlinks to absolute.
...
There's no reason to make them absolute, simply store in the metadata
the target file as is. This vastly simplifies the code and makes all
test pass correctly.
2015-02-19 11:04:34 +01:00
Juan RP
67eba7d912
Improve detection of target file in relative symlinks.
...
If xbps-create(8) did not guess the target file of relative symlinks for
some reason, just compare the current symlink and what's stored as is,
without converting it to absolute.
This might happen with dangling relative symlinks or existing binary
packages that were not created with a newer xbps-create(8).
2015-02-19 10:24:24 +01:00
Juan RP
05f879ec09
Introduce xbps_symlink_target() and use it in two places.
...
This code is now shared by xbps-pkgdb and libxbps/xbps-remove.
2015-02-19 09:47:09 +01:00
Juan RP
69e3a50e75
xbps-create: handle correctly another case of relative symlinks.
2015-02-19 09:44:09 +01:00
Juan RP
9c47bc0b1a
xbps-re{configure,move}: fix previous.
2015-02-18 17:02:50 +01:00
Juan RP
96b76c28e5
xbps-reconfigure: do not bother to print useless msgs about unknown states.
...
Those states are not meaningful for the application.
2015-02-18 16:56:34 +01:00
Juan RP
73c0d68acd
xbps-remove: do not bother to print useless msgs about unknown states.
...
Those states are not meaningful for the application.
2015-02-18 16:55:42 +01:00
Juan RP
3c34c300d1
xbps-create(8): record target file or relative symlinks correctly.
2015-02-18 14:55:54 +01:00
Juan RP
38e71e8e1c
xbps-checkvers: more fixes and new test cases.
...
- This now checks for vars that have refs to other vars:
pkgname=${_myvar}
- This now checks for unwanted garbage before assignment:
. ./source/file
pkgname=${_myvar}
- Misc tweaks to use my coding style.
2015-02-17 10:20:59 +01:00
Juan RP
7cdba2ed14
xbps-checkvers(8): fixed segfaults with missing vars on templates.
2015-02-16 18:53:45 +01:00
Juan RP
c0c3771965
xbps-remove.8: improve -F desc.
2015-02-16 11:19:09 +01:00
Juan RP
d607655371
libxbps: globally check for unresolved reverse dependencies.
...
Close #46 . See NEWS for more information.
2015-02-03 10:20:13 +01:00
Juan RP
1d0a8649da
bin/xbps-install/util.c: properly report pkgs to be removed.
2015-02-02 09:49:16 +01:00
Juan RP
0c208bb744
xbps-query(8): ownedby: do not follow symlinks and print target file too.
2015-01-29 17:32:14 +01:00
Juan RP
20276fc068
xbps-install: add additional actions to the column output.
...
- downgrade if new version in repos is less than installed one.
- reinstall if both versions are equal.
and additionally always print installed pkg version, irrespectively of
the transaction mode.
Close #72
2015-01-29 09:58:32 +01:00
Juan RP
e95300e952
xbps-install/util: print installed version in pkgs on hold mode.
2015-01-28 18:06:58 +01:00
Juan RP
9bc3275515
xbps-install/state_cb: log XBPS_STATE_UPDATE via syslog too.
...
This way the updates are also recorded via syslog.
2015-01-28 09:48:20 +01:00
Juan RP
d519ed3d15
xbps-checkvers: misc changes to fix issues I've found.
...
- Clear completely the rcv struct.
- Remove unapplicable free()a before assignment (wtf)
- Fix usage, -C expects a path to a directory not a filename.
- Remove obsolete xbps.conf handling, this is unnecessary (xbps.d(5)).
- Random tweaks after a quick inspection.
2015-01-22 18:44:39 +01:00
Juan RP
f11dc1a7b1
xbps-query.8: mention that -p is also accepted with -S (show/default mode).
2015-01-18 19:14:30 +01:00
Juan RP
94d0e4e131
xbps-query(8): --regex now matches EREs in case insensitive mode.
2015-01-18 17:50:26 +01:00
Juan RP
1251583154
xbps-{pkgdb,reconfigure}: flush pkgdb in case it was modified.
...
Regression introduced with the recent xbps_end() changes.
2015-01-17 12:06:13 +01:00
Juan RP
676888b5c1
xbps-query: optimize the search mode with --regex (compile ERE once).
2015-01-14 20:53:01 +01:00
Juan RP
8f1e7d9e55
question: accept enter key as default preset value.
2015-01-12 10:22:30 +01:00
Juan RP
f7142412c9
utils: implement issue #73 (only pay attention to the first char).
...
The answer can now just be 'y/Y' to accept it or 'n/N' to deny it.
Close #73
2015-01-11 16:52:04 +01:00
Juan RP
b23855f692
xbps_repo_close: only unlock the file lock if repo was opened as such.
...
If xbps_repo_open() was called with the lock arg set, xbps_repo_close()
will now unlock the repo file lock, without the need to set it.
This avoids the need to always unlock the file lock even if it wasn't
locked previously. This also introduceds an ABI/API break, but this
way it's cleaner.
2015-01-11 09:11:38 +01:00
Juan RP
9aaff4e2d0
xbps-dgraph: -m --metadata was documented but not enabled in getopt (oops).
2015-01-11 08:58:02 +01:00
Juan RP
d4a25b7ebf
xbps-remove: xbps_pkgdb_unlock -> xbps_end.
2015-01-10 19:26:24 +01:00
Juan RP
ee175a2a68
Improve xbps_end() and use it before exit(3)ing.
...
- Simplify xbps_repo_open::repo_get_dict().
- Use xbps_end() in the utils where necessary.
- Make xbps_end() call xbps_pkgdb_unlock() if necessary.
- Make xbps_end() release rpool resources.
- Make xbps_end() release resources from xbps_handle.
- Fixed 90% of reported leaks (still reachable at exit) from valgrind.
That was to silence valgrind's memcheck with --leak-check=full.
2015-01-10 19:11:31 +01:00
Juan RP
d98442d84e
xbps-{install,query}.8: absolute path in --repository is not a requirement now.
2015-01-10 12:02:20 +01:00