summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2019-03-28sogrep: don't be templated when it is not templatedEli Schwartz via arch-projects3-4/+6
Partition the Makefile targets to only clean configured files, and make the configured files be a subset of the bin programs. Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
2019-03-25Create a general READMEJelle van der Waa1-0/+24
Introduce a README which describes where to send patches and how to release a new version of devtools. Signed-off-by: Jelle van der Waa <jelle@vdwaa.nl>
2019-03-25makechrootpkg: keep *DEST, MAKEFLAGS & PACKAGERMatt Robinson1-1/+1
If makechrootpkg is called as non-root, the {SRC,SRCPKG,PKG,LOG}DEST, MAKEFLAGS and PACKAGER environment variables are lost in the call to check_root(). Add these to the passed keepenv list so that they are preserved instead.
2019-03-25arch-nspawn: get all mirrors from hostChristian Hesse1-6/+8
Now that pacconf gives us all mirrors we can use them, instead of just the first one. Signed-off-by: Christian Hesse <mail@eworm.de>
2019-03-17sogrep: remove duplicate sogrepJelle van der Waa2-98/+1
The rename of sogrep to sogrep.in failed to remove sogrep and adding it to .gitignore. Signed-off-by: Jelle van der Waa <jelle@archlinux.org>
2019-03-16doc: Add myself as maintainerJelle van der Waa1-0/+1
Signed-off-by: Jelle van der Waa <jelle@vdwaa.nl>
2019-03-16sogrep: rename to sogrep.in so make clean worksJelle van der Waa2-0/+98
make clean removes all .in converted files to a file without .in which in the make clean step is removed. So running make clean will remove sogrep since it's specified as BINPROGS. In the future this steps should be removed for sogrep since it is a standalone script. Signed-off-by: Jelle van der Waa <jelle@vdwaa.nl>
2019-03-16find-libdeps: fix indentation in caseJelle van der Waa1-1/+1
Signed-off-by: Jelle van der Waa <jelle@vdwaa.nl>
2019-03-16doc: add man pages for find-{libdeps,libprovides}Jelle van der Waa3-7/+33
Add a simple man page for find-libdeps and find-libprovides. Signed-off-by: Jelle van der Waa <jelle@vdwaa.nl>
2019-03-13doc: add Environment variables section to sogrepJelle van der Waa1-0/+11
Add a section about environment variables which influence sogrep's behaviour. Signed-off-by: Jelle van der Waa <jelle@vdwaa.nl>
2019-03-13doc: add man page for mkarchrootJelle van der Waa2-1/+48
2019-03-13crossrepomove: do not set svn propsetJelle van der Waa1-1/+0
svn propset's where determined to be non-reproducible and therefore where removed from svn. Don't introduce them when moving packages between repos. Signed-off-by: Jelle van der Waa <jelle@vdwaa.nl>
2019-03-13Add sogrepSven-Hendrik Haase4-3/+134
This is from Eli's dotfiles after he'd cleaned it up but never actually went ahead and made this PR. I figure it's time to add it.
2019-02-24remove arch rm as it's not really usefulJelle van der Waa4-23/+1
archrm is a not much more fancy rm -rf and therefore not really useful to ship.
2019-02-09conf: sync makepkg.conf with latest version from pacman packageLevente Polyak1-12/+11
2019-01-22ci: adding travis support for basic checkLevente Polyak1-0/+28
2019-01-22find-libdeps: in functions use return instead of continue to abortLevente Polyak1-1/+1
Even if continue would work, it does exactly the same as a return in the way this function is being used.
2019-01-22remove empty tree if "--verifysource" failedErich Eckner1-7/+3
makechrootpkg's download_sources() leaves a stray directory if "makepkg --verifysource" failed. We use "setup_workdir" instead of "mktemp -d", because this ensures the correct garbage collection. Signed-off-by: Erich Eckner <git@eckner.net>
2019-01-22Expand check_root keepenv variablesMorten Linderud1-1/+1
Les us source makepkg.conf settings from the environemnt. This also includes `GNUPGHOME` which is present in `makechrootpkg`, but not included in archbuild. Signed-off-by: Morten Linderud <foxboron@archlinux.org>
2018-09-09doc: add find-libprovides man pageJelle van der Waa1-0/+24
2018-09-09doc: Add checkpkg man pageJelle van der Waa2-1/+29
2018-09-09doc: Add lddd man pageJelle van der Waa5-2/+111
2018-05-31Version 2018053120180531Jan Alexander Steffens (heftig)1-1/+1
2018-05-31makechrootpkg: whitelist return code 14 from makepkgEli Schwartz via arch-projects1-0/+7
makepkg 5.1 implements error codes, and 14 means that installing the packages after they were built has failed. We don't care about this error and would like makechrootpkg to succeed regardless, e.g. for split packages that are mutually exclusive. Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
2018-05-29update makefile for current versionAllan McRae1-1/+1
Signed-off-by: Allan McRae <allan@archlinux.org>
2018-05-16Do not assume the makechrootpkg user's groupname is the same as the username20180528Eli Schwartz1-1/+1
chown support "$user:$group" but also "$user:" which infers $group rather than leaving it as root. This looks up the group name in cases where the default group is e.g. "users" and users do not get their own unique groups.
2018-05-13Proper fix for pacman-git returning file urls from the cacheEli Schwartz1-1/+2
It is much nicer to use a proper configuration parser to retrieve the primary mirror, rather than clever hacks using undocumented APIs, especially when their behavior as used then breaks in later releases. Fortunately, pacutils exists now and pacconf handles this quite elegantly. It has since been moved to pacman-git proper. Check if pacman-conf from a new enough version of pacman exists and fallback on pacconf from pacutils.
2018-05-13Revert "arch-nspawn: Work around pacman master returning file-URLs from the ↵Eli Schwartz1-1/+1
cache" This reverts commit eb6b0e3f11279b6512b1469ff042d2982eaaeef4. This never worked, as pacman-git returns file urls from the cache anyway and pacman stable doesn't have any problem at all. Having useless code which makes people think the issue is solved when it really isn't, is bloat, so remove it.
2018-05-13makechrootpkg: Do not copy the user keyring into the chroot.Eli Schwartz1-6/+1
Since commit 75fdff1811a0487f82c75b2e260da905102b4eea we no longer run integrity checks inside the chroot anyway, so this is no longer needed and will never be used.
2018-05-12makechrootpkg: add /etc/shadow entry for builduserEvangelos Foutras1-1/+2
Without it, sudo 1.8.23 will return an error: sudo: PAM account management error: Authentication service cannot retrieve authentication info
2018-03-24makechrootpkg: fix verifysource with pacman-gitEli Schwartz1-1/+1
In pacman-git commit d8717a6a9666ec80c8645d190d6f9c7ab73084ac makepkg started checking that the setuid/setgid bit could be removed on the $BUILDDIR in order to prevent this propagating to the packages themselves. Unfortunately, this requires the temporary builddir used during the --verifysource stage of makepkg, to be owned by $makepkg_user which was not the case as it is created as root using mktemp (and given world rwx in addition to the restricted deletion bit.) Obviously makepkg cannot chmod a directory that it does not own. Fix this by making $makepkg_user the owner of that directory, as should have been the case all along. (Giving world rwx is illogical on general principle. The fact that this is a workaround for makepkg demanding these directories be writable even when they are not going to be used for the makepkg options in question, is not justification for being careless.) Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
2018-03-24makechrootpkg: respect GNUPGHOMEEmiel Wiedijk1-2/+3
Previously, makechrootpkg hardcoded ~/.gnupg. Therefore, if a user uses a custom GPG home directory, the siganture checking would fail. Now makechrootpkg uses $GNUPGHOME, with a fallback to ~/.gnupg. Signed-off-by: Emiel Wiedijk <me@aimileus.nl>
2018-03-24Remove corepkg symlinkBartłomiej Piotrowski1-1/+0
While still possible with 'commitpkg core', there is a chance it will prevent accidental pushes straight to [core].
2018-01-21makechrootpkg: make sure that makepkg.conf is always parsed as textBartłomiej Piotrowski1-1/+1
2018-01-21makechrootpkg: Adjust to work properly with `set -e`Luke Shumaker1-1/+1
This worked properly until eab5aba.
2018-01-21lib/common.sh: Adjust to work properly with `set -u`Luke Shumaker1-1/+3
Support for working with `set -u` was broken by 94160d6. Egg on my face; I'm the one who wants `set -u` support, and I'm the author of that commit! libmakepkg does not work with `set -u`; but mostly because of the include guards! So we just need to temporarily disable `set -u` (nounset) while loading libmakepkg. Instead of introducing a new variable, just store the initial nounset status in _INCLUDE_COMMON_SH; rather than a useless fixed-string "true". While we're at it, disable POSIX-mode (just in case we're running as "sh" instead of "bash"), since libmakepkg uses bash-isms that won't parse in POSIX mode.
2018-01-21arch-nspawn: Remove pointless $(echo ...) subshellLuke Shumaker1-1/+1
2018-01-21arch-nspawn: make sure that makepkg.conf is always parsed as textLuke Shumaker1-1/+1
https://lists.parabola.nu/pipermail/dev/2017-June/005576.html
2018-01-21makechrootpkg: Fix anti-pattern when checking for enabled featuresEli Schwartz1-2/+2
Don't use error-prone logic e.g. foo=true; if $foo ... This completely fails to act as expected when the variable is unset because of unrelated bugs. While this merely causes the default behavior to be "false" rather than "true" in such cases, it is better to fail to enable explicitly requested behavior (which will be noticed by the user) than to simply upgrade to this behavior for free (which may not seem to have any obvious cause). Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
2018-01-21makechrootpkg: Fix unconditionally running namcapEli Schwartz1-1/+1
Fixes regression in 2fd5931a8c67289a8a4acd327b3ce99a5d64c8c7 $run_namcap will always be set to "" `if $not_a_var; then ...; fi` is always truthful when $not_a_var is unset or equal to "" and the `then` clause will always be run. I'm not sure why global state variables need to be cloned locally for their sole explicit purpose. But for now this patch implements the minimum necessary work to properly pass the "do I want namcap" variable into prepare_chroot() according to the current logic flow. Note that I have still not thorougly tested makechrootpkg. Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
2017-12-27Revert "makechrootpkg: Reopen console to assign the CTTY"Evangelos Foutras1-3/+0
This reverts commit ddd508efc083fc9beb6f2c96e2537521b31c1e6f. The underlying bug (FS#56529) was fixed in glibc 2.26-9.
2017-11-22Support reproducible buildsEli Schwartz3-5/+13
Recent development versions of makepkg support reproducible builds through the environment variable SOURCE_DATE_EPOCH. Pass this variable through makechrootpkg to makepkg when available. Also initialize SOURCE_DATE_EPOCH whenever running archbuild to enforce reproducible builds for repository packages. Signed-off-by: Eli Schwartz <eschwartz@archlinux.org> Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
2017-11-08Version 2017110820171108Bartłomiej Piotrowski1-1/+1
2017-11-08Remove i686 supportBartłomiej Piotrowski5-171/+13
2017-10-30use makepkg library instead of local function copiesLuke Shumaker1-93/+7
This mirrors dbscripts commit 625fa02 by Pierre Schmitz <pierre@archlinux.de> at 2017-04-18 14:20:49
2017-10-30makechrootpkg: Fix function usage commentsLuke Shumaker1-1/+1
A couple of the comments noting which globals are used by functions are outdated/wrong. - download_sources() : Remove USER from the list. It was always wrong. Originally, it should have been SUDO_USER (not USER), but I should have removed it entirely in 4f23609. - move_products() : Add SRCPKGDEST to the list. Though the commit adding the comment was only recently upstreamed (as 2fd5931), it originated in 2013 in a commit that has since been rebased many times. Anyway, in this rebasing, it missed move_products() starting to pay attention to SRCPKGDEST in fd1be1b (since nothing made git think there was a "conflict").
2017-10-30makechrootpkg: move init_variables() to be part of main()Luke Shumaker1-24/+20
The reason it wasn't moved before was just to keep the diffs (with --ignore-all-space) smaller, to make merging and rebasing work easier. Moving code around in a file tends to make that difficult. But, readability wise, it belongs in main().
2017-09-14makechrootpkg: Reopen console to assign the CTTYJan Alexander Steffens (heftig)1-0/+3
nspawn does not give us a controlling terminal, hence we ignore interrupts. Apparently this was lost in systemd at some point. Hack around this by reopening the console to make it the controlling terminal.
2017-09-14makechrootpkg: Prevent collecting coredumpsJan Alexander Steffens (heftig)1-0/+4
Coredumps from build chroots are not generally useful. Prevent them from being generated. Avoids a lot of annoyance from the GCC testsuite spawning lots of systemd-coredump processes. Just set the soft limit so the user can still raise it in the PKGBUILD if they insist.
2017-09-13Revert "arch-nspawn: Hack to give the inner process a controlling terminal"Jan Alexander Steffens (heftig)1-1/+1
Whoops, this will of course mess with nspawn arguments passed to arch-nspawn.