summaryrefslogtreecommitdiff
path: root/src/chroot-tools
AgeCommit message (Collapse)Author
2014-03-22Audit the authors and copyright years of files against git logsLuke Shumaker
2014-03-22Update libremakepkg to work with Bash 4.3 (and still work with 4.2)Luke Shumaker
2014-03-21Do an audit of copyright and license claimsLuke Shumaker
2014-03-20Fix issue #487; obey proxy settings when creating a chroot.Luke Shumaker
https://labs.parabola.nu/issues/487
2014-03-20Generalize the patching mechanism in the build system.Luke Shumaker
2014-03-06Update for the new version of systemdv20140306Luke Shumaker
2014-02-09libremakepkg: extract the source (prepare()) while the network is still onLuke Shumaker
2014-02-09fix `librechroot update`Luke Shumaker
2014-02-05libremakepkg: make sure the local repository exists before syncing pkgsv20140206Luke Shumaker
2014-02-05libremakepkg: fix installing dependencies that aren't in the paccacheLuke Shumaker
I can't figure out a reliable way to test this, as it depends on the host pacman cache.
2014-02-05librechroot update: correctly handle 'filesystem' upgradesLuke Shumaker
2014-02-02libremakepkg: fix network handlingv20140202Luke Shumaker
2014-02-02Makefiles: use .DELETE_ON_ERROR:Luke Shumaker
2014-02-02mkarchroot: don't let the environment affect pacstrapLuke Shumaker
2014-02-02librechroot: fix setting CHROOTEXTRAPKGLuke Shumaker
2014-02-02Normalize to use the string "Copyright (C)"Luke Shumaker
2014-02-02I forgot to bump the copyright year on all the files I've touched this yearLuke Shumaker
2014-01-20normalize to use >&2 instead of /dev/stderrLuke Shumaker
2014-01-19libremakepkg: Check the permissions of the bind-mounted directoriestesting-20140119Luke Shumaker
2014-01-19libremakepkg: (minor) refactor things to places that make a bit more senseLuke Shumaker
2014-01-19distcc-tool: fix a typo in a commentLuke Shumaker
2014-01-19distcc-tool: Fix quoting when embeddint a value in a stringLuke Shumaker
2014-01-19distcc-tool: get rid of string interpolation in usage()Luke Shumaker
2014-01-19libremakepkg: fix getopts string (I'm a dummy)Luke Shumaker
2014-01-19libremakepkg: actually support SRCPKGDEST, document LOGDEST supportLuke Shumaker
2014-01-18libremakepkg: support -r and -w flags, same as librechrootLuke Shumaker
Feature request: https://labs.parabola.nu/issues/458
2014-01-18librechroot: fix commentLuke Shumaker
2014-01-18I went comma-happy when writing librechroot:usage()Luke Shumaker
2014-01-05chroot-tools: make patch not reject new bugfix in devtools-parLuke Shumaker
2014-01-05update to the new devtoolsLuke Shumaker
2013-11-16makechrootpkg.sh: The delete message always said 'temporary copy'Luke Shumaker
2013-11-07libremakepkg: useless use of `cat`Luke Shumaker
2013-11-04normalize on "[[" instead of "["Luke Shumaker
2013-11-03librechroot: correct commentLuke Shumaker
2013-11-02librechroot: when detecting mount options, set LC_ALL instead of LANGLuke Shumaker
2013-10-30chcleanup: manually update repo.db instead of running `pacman -Sy`Luke Shumaker
2013-10-30librechroot: check argument countsLuke Shumaker
2013-10-26Merge pkgbuild-check-{nonfree,licenses}, add a summarize tool for it.Luke Shumaker
This should fix a number of bugs in those two scripts, and the summarize script simplifies aur and libremakepkg:hooks-check.sh
2013-10-26libremakepkg: configure [repo] to be first by default, not lastLuke Shumaker
2013-10-26librechroot: check that copydir isn't mounted nosuid/noexecLuke Shumaker
2013-10-26librechroot: die if stdin isn't a TTY, be more verbose about it.Luke Shumaker
2013-10-26librechroot+indent: Add in a bunch of extra '\r's to work-around the systemd bugLuke Shumaker
2013-10-15librechroot: (bugfix) Use the correct exit status if stdout isn't a TTY.v20131015Luke Shumaker
Because of the work-around for systemd-nspawn's buggy I/O, it was discarding the exit status if stdout wasn't a TTY. My work-around for *this* is to set -o pipefail.
2013-10-15libremakepkg: hooks-chcleanup: fix variable name causing it to not runLuke Shumaker
2013-10-07librechroot: If stdout isn't a TTY, pipe progs in the chroot through cat.Luke Shumaker
Also, warn if stdin isn't a TTY.
2013-10-07revert last commit, it makes systemd-nspawn not handle signals correctly.Luke Shumaker
I'm a fan of systemd-nspawn. I really am. It handles a lot of things the "right" way, so you don't have to. However, it handles PTYs and signals in an incredibly stupid way. Working around one is f---ed up by the other being wrong. Before I implemented the change that this reverts, this is what happens: systemd-nspawn> I need to create a PTY and proxy between it and stdio. I can specify a terminal size when doing this--I should set it to reflect the terminal I am connected to. systemd-nspawn> /dev/stdout: Are you a TTY? /dev/stdout> systemd-nspawn: No. ---- The correct thing to do here would be to either not set the size, ---- or set it to 80×24 systemd-nspawn> /dev/stdin: Are you a TTY? /dev/stdin> systemd-nspawn: Yes. systemd-nspawn> /dev/stdin: Great, what size are you? /dev/stdin> systemd-nspawn: I am X×Y. systemd-nspawn: libc: Please give me a PTY that is X×Y. ---- Why the f--- would you do this? The size only effects *output*. ---- If you don't know the characteristics of the output, set ---- reasonable defaults! Don't base it on the characteristics of the ---- input! My solution was to make /dev/stdin not be a TTY by closing it. This had the desired effect, but tripped up the signal handling. Here is how signals were handled before: systemd-nspawn> /dev/stdin: Are you a TTY? /dev/stdin> systemd-nspawn: Yes. systemd-nspawn> /dev/stdin: Great, please don't send SIGINT on C-c. I will handle it myself. *user presses C-c, systemd reads it* systemd-nspawn> child processes: here's a SIGINT. Here's what happens when I close, or do other things to make stdin not be a TTY: systemd-nspawn> /dev/stdin: Are you a TTY? /dev/stdin> systemd-nspawn: No. systemd-nspawn> /dev/stdin: Oh, OK. *user presses C-c, /dev/stdin interprets it* /dev/stdin> systemd-nspawn: Here's a SIGINT. systemd-nspawn> *dies, abandoning child processes* The clear correct thing to do would have been to *handle* SIGINT, and pass it along to the children.
2013-10-04libremakepkg: close stdin on most commands being sent through `indent`Luke Shumaker
Besides preventing interactive use, this prevents the program from knowing the size of the terminal.
2013-10-04librechroot/hook-chcleanup: look at /startdir/PKGBUILD, not /build/PKGBUILDLuke Shumaker
2013-10-04chcleanup: prevent searching PATH for PKGBUILDLuke Shumaker
2013-10-04conf.sh: generalize {get,set}_conf_makepkg to {get,set}_varLuke Shumaker