AgeCommit message (Collapse)Author
2018-08-29Makefile: Fix installation of makepkg.d/librefetch.confv20180829Luke Shumaker
It was installed by `make install`, but not `make install-libretools`.
2018-08-29librechroot make: Try harder to avoid inheriting the host's pacman configLuke Shumaker
- `-A`: Comment out the `Include = /etc/pacman.d/*.conf` line that is present in the /usr/share/pacman/defaults/ files since pacman 5.1.1-1.parabola4 - Pass --hookdir="$copydir/etc/pacman.d/hooks" to mkarchroot's pacman to avoid inheriting the host's hooks. I should maybe add tests for both of those things, but they both rely on the actual contents of /etc/pacman.d/...
2018-08-29libremakepkg: Remove old reference to /chrootprepareLuke Shumaker
That file hasn't been created since 646ac025 (2018-08-04).
2018-08-29Rely on Bash 4.4 empty array behaviorLuke Shumaker
2018-08-26test: librefetch: Fix to work with the new drop-in location.v20180826Luke Shumaker
This should have been part of the earlier commit. Oh well.
2018-08-26librechroot clean-pkgs: Do the right thing when libretools is installed in ↵Luke Shumaker
the chroot The /bin/chcleanup file that it installs will clash with the package-owned /usr/bin/chcleanup (since /bin is a symlink)
2018-08-26test: librechroot: Check whether chcleanup can install libretools [ci-skip]Luke Shumaker
2018-08-26librefetch: Drop a file in /etc/makepkg.d/ rather than editing makepkg.confLuke Shumaker
The librefetch-install program will stick around for a while (1 year; 2019-08-26) so that it can be used from a post_upgrade hook to remove the old edits, in order to seamlessly migrate people.
2018-08-26msgmergeLuke Shumaker
2018-08-15test/: Use `librechroot install-name` rather than `librechroot run pacman`v20180815Luke Shumaker
2018-08-15librechroot: Add --noconfirm to install-name, don't expect input.Luke Shumaker
2018-08-15librechroot,libremakepkg: Don't have stdin of nspawn be a TTY if we don't ↵Luke Shumaker
expect input If stdin is a TTY, systemd-nspawn will create a proxy PTY, and pump the data from real stdin through the proxy PTY. Because the PTY acts as a buffer, that means that it eats stdin, EVEN IF THE PROGRAM DOESN'T ACTUALLY READ IT. This is surprising to the user. We can't know if the command to `librechroot run` is going to read from stdin, but for most uses of librechroot we do know. So, set stdin to /dev/null for those cases.
2018-08-15librechroot: Fix typo in a commentLuke Shumaker
2018-08-15librechroot: Remove SYSTEMD-STDIN HACKLuke Shumaker
2018-08-13libreblacklist: Better diagnostic output on update failureLuke Shumaker
2018-08-07oopsLuke Shumaker
2018-08-07librechroot: Disallow flags overriding other flagsLuke Shumaker
This results in user confusion, like
2018-08-06chcleanup: Ignore depends of split packages, just look at pkgbasev20180806Luke Shumaker
2018-08-06chcleanup: Try preloading the scratch DB to speed things up.Luke Shumaker
2018-08-06chcleanup: Only use `pacman -T` filtering on DEPENDSLuke Shumaker
2018-08-06chcleanup: Tidy upLuke Shumaker
- Move a few lines around - Add comments - Don't bother checking [[ -n $TEXTDOMAIN ]]/TEXTDOMAINDIR, they're never set. - Put the pacman db at "$TEMPDIR/db", not "$TEMPDIR". - Create a pacman=() variable for storing all of our scratch flags - Drop the pkglist='' variable; expand it out where used Altogether, there should be no user-visible changes here
2018-08-06chcleanup: More informative output, use pacman -T to speed things upLuke Shumaker
2018-08-06librexgettext: Include the 'plain' command by defaultLuke Shumaker
I realized that it was missing. While we're at it, organize the defaults by their "origin".
2018-08-06chcleanup: Do the package list creating in tiersLuke Shumaker
This avoids something like a dep on 'systemd-tools' from resolving to 'notsystemd', causing a conflict with 'systemd' in 'base-devel', which had the 'systemd-tools' dep already filled. On the downside, this is much slower.
2018-08-06librechroot help: Clarify the usage of -w and -rLuke Shumaker
2018-08-04libremakepkg,chcleanup: Be stricter about network accessv20180804Luke Shumaker
Objectives: - Once the source package has been created, never run makepkg with networking enabled again, so that we can be 100% sure that the source package has all of the sources that we need. - Don't let makepkg edit the PKGBUILD (eg. by evaluating pkgver()) User-facing changes: - libremakepkg now disables networking during prepare() - libremakepkg no longer runs pkgver() - chcleanup (and thus `librechroot clean-pkgs`) now also installs packages Technical description of changes: - In devtools (and not really in this commit): * No longer split /chrootprepare off of /chrootbuild. The point of splitting it was that we'd have prepare() run from /chrootprepare and the rest later run from /chrootbuild, so that we could leave networking enabled during prepare() but not the rest. Now that we're disabling networking during prepare(), that's pointless. * Have download_sources create a source package (rather than having /chrootbuild create the source package at the same time that we create the binary package). We adjust the caller to temporarily set SRCPKGDEST to a temporary directory, so that we can get the file and control the filename when we move it in to the real SRCPKGDEST. - Have chcleanup install the dependencies. If we used the traditional `makepkg --sync` to install the dependencies, then we'd be breaking the "no networking for makepkg after source package creation" objective. chcleanup already has all of the logic necessary to accomplish this. If there's a discrepancy in chcleanup behavior and makepkg behavior, and makepkg thinks it needs to install something, then that just means we'll have to fix the bug in chcleanup, instead of letting it go for more than a year (*cough* *cough*). - Use files extracted from the source package (rather than files found in the current directory) to build the package. - We mount the temporary directory containing the extracted source package files read-only, to be sure that makepkg doesn't modify the PKGBUILD. This is necessary because --holdver only disables pkgver() if it's a VCS package.
2018-08-03test: libremakepkg: Add some failing tests [ci-skip]Luke Shumaker
2018-08-03po/es: msgmerge -Fi --update --previousLuke Shumaker
This results in a few fuzzy entries; it's just changing from %s to %q; I can merge those.
2018-08-03Merge branch 'fmt-locale'Luke Shumaker
2018-08-03po/es: msgmerge -Fi --update --previous # just updates line numbersLuke Shumaker
2018-08-03po/es: Run `msguniq -Fi` over all .po filesLuke Shumaker
This screws up the line-by-line translation (sorry!) But msgmerge without it is just not worth the time/effort.
2018-08-03Use Bash 4.4 @Q instead of %qLuke Shumaker
2018-08-03libremakepkg: Expand short flags to unshareLuke Shumaker
2018-08-03chcleanup: Expand short flags to pacmanLuke Shumaker
2018-08-03chcleanup: Consider _$CARCH depsLuke Shumaker
Also, don't parse PKGBUILD ourself; use .SRCINFO to extract information from the PKGBUILD.
2018-08-03test: librechroot: Add failing test case for chcleanup [ci-skip]Luke Shumaker
2018-08-03test: librechroot: Fix tragic typoLuke Shumaker
2018-07-31Merge branch 'master' of git:// Shumaker
2018-07-31updating translationOmar Vega Ramos
2018-07-31Merge branch 'fix-fuzzy'Luke Shumaker
2018-07-31fixup!Luke Shumaker
po/es/librelib.po: Use the "fuzzy" attribute to indicate that a translation needs updated, not a "FIXME" comment.
2018-07-31po/es: Fixup whitespaceLuke Shumaker
There are quite a few places where a line ends `foo"`, and the next line picks up `"bar`; with neither line containing a space separating "foo" from "bar". The results in the words getting munged together in to "foobar" rather than "foo bar". Here's how I searched for these: cat *.po|ruby -e 'puts"\n\s*"/, "\"\"")'|sed -r 's/^msg(str|id) """/msg\1 "/'|grep -vE '^msgstr\s+"Project-Id-Version:'|grep '\S""\S' There are 5 false-positives that are reflections of where msguniq decided to split a flag or path in the .pot file.
2018-07-31Begone with XBSLuke Shumaker
2018-07-17po/es/libretools.po: fix grammar and change some wordsDavid P
Signed-off-by: David P <>
2018-06-04improved spanish translationDavid P
Signed-off-by: David P <>
2018-06-02librechroot: Properly clean up temporary pacman.conf fileLuke Shumaker
2018-06-02librechroot: Remove the hack for -any packages differing between archesLuke Shumaker
db-import-pkg now makes sure that that doesn't happen.
2018-05-30libremakepkg: Fix it_fails_with_bad_signaturesv20180530Luke Shumaker
libremakepkg defined a cleanup() function, which overrode, which meant that exited with a '0' status.
2018-05-30libremakepkg: Fix it_succeeds_with_good_signaturesLuke Shumaker
Do this by syncing makepkg_args with makechrootpkg's default_makepkg_args; recent devtools have makechrootpkg not copy the keyring in to the chroot. This incorporates 3 commits from Arch devtools: 7ca4eb82d (2017-05-02): add --holdver 0cbc179d2 (2017-07-13): use long options; `-s`→`--syncdeps`, `-L`→`--log` 75fdff181 (2017-07-13): add --skipinteg
2018-05-30test/libremakepkg: Verify that it correctly handles source signatures [ci-skip]Luke Shumaker