Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | check_block(): New function | P. J. McDermott | 2015-05-25 | 1 | -2/+9 |
| | |||||
* | lib/block.sh: Fix error()/get_msg() calls | P. J. McDermott | 2015-05-25 | 1 | -4/+4 |
| | |||||
* | block_mount(): Use get_vardata_dir() | P. J. McDermott | 2015-05-25 | 1 | -2/+2 |
| | |||||
* | lib/vardata.sh: New file | P. J. McDermott | 2015-05-25 | 2 | -0/+57 |
| | |||||
* | cmd/install: use block | P. J. McDermott | 2015-05-24 | 1 | -0/+1 |
| | |||||
* | cmd/build: Accept block device as root | P. J. McDermott | 2015-05-24 | 1 | -1/+14 |
| | |||||
* | cmd/install: Initialize ${dev} | P. J. McDermott | 2015-05-24 | 1 | -0/+1 |
| | |||||
* | cmd/install: Accept block device as root | P. J. McDermott | 2015-05-24 | 1 | -0/+10 |
| | |||||
* | cmd/opkg: Accept block device as root | P. J. McDermott | 2015-05-24 | 1 | -0/+12 |
| | |||||
* | cmd/shell: Accept block device as root | P. J. McDermott | 2015-05-24 | 1 | -0/+12 |
| | |||||
* | lib/block.sh: New file | P. J. McDermott | 2015-05-24 | 2 | -0/+86 |
| | |||||
* | prof_proteanos_configure_system_foreign(): Wrap long line | P. J. McDermott | 2014-12-03 | 1 | -1/+2 |
| | |||||
* | prof_proteanos_configure_system_native(): Check plat | P. J. McDermott | 2014-12-03 | 1 | -3/+7 |
| | | | | | Don't enable services on dev. Set hostname to "proteanos" on non-dev platforms. | ||||
* | profile_configure_system_*(): Pass arch and plat | P. J. McDermott | 2014-12-03 | 3 | -4/+12 |
| | |||||
* | cmd/install: Exclude lost+found from dir check | P. J. McDermott | 2014-11-11 | 1 | -1/+1 |
| | |||||
* | dir_is_empty(): Accept exclusion arguments | P. J. McDermott | 2014-11-11 | 1 | -1/+14 |
| | |||||
* | cmd/install: Error only if root dir is not empty | P. J. McDermott | 2014-11-11 | 1 | -1/+2 |
| | |||||
* | lib/dir.sh: New file | P. J. McDermott | 2014-11-11 | 2 | -0/+47 |
| | |||||
* | profile/proteanos: Write /etc/group | P. J. McDermott | 2014-10-13 | 1 | -0/+4 |
| | | | | Two of libarchive's unit tests fail without this file. | ||||
* | lib/chroot.sh: Remove | P. J. McDermott | 2014-10-08 | 2 | -83/+0 |
| | | | | Replaced by lib/session.sh. | ||||
* | cmd/opkg: Clean up packages before session_end()feature/sessions | P. J. McDermott | 2014-10-07 | 1 | -1/+5 |
| | |||||
* | cmd/build: Drop some whitespace in option handling | P. J. McDermott | 2014-10-07 | 1 | -6/+2 |
| | |||||
* | cmd/build: Factor cleanup code into sig handler cb | P. J. McDermott | 2014-10-07 | 1 | -30/+42 |
| | |||||
* | cmd/opkg: Factor cleanup code into sig handler cb | P. J. McDermott | 2014-10-07 | 1 | -6/+14 |
| | |||||
* | session_end(): Block signals for func's lifetime | P. J. McDermott | 2014-10-07 | 1 | -6/+3 |
| | | | | | | | If prokit receives a signal (e.g. the user hits Ctrl+C) while session_end() is running (e.g. while unmounting file systems), the system can be left in an unclean state (e.g. with some file systems still mounted and the sessions change mutex permanently locked). | ||||
* | error(): Die by signal | P. J. McDermott | 2014-10-07 | 1 | -1/+4 |
| | | | | | | | Calling error() within a subshell will now kill the whole shell process. More importantly, session_end() will now be called if we've started a session. | ||||
* | session_end(): Run session exit callback | P. J. McDermott | 2014-10-07 | 1 | -0/+2 |
| | |||||
* | mutex_lock_timeout(): Rename to mutex_timedlock() | P. J. McDermott | 2014-10-07 | 2 | -3/+3 |
| | |||||
* | session: Handle signals | P. J. McDermott | 2014-10-07 | 1 | -0/+45 |
| | |||||
* | session_end(): Don't lock mutex if we have it | P. J. McDermott | 2014-10-07 | 1 | -2/+5 |
| | |||||
* | mutex_is_unlockable(): New function | P. J. McDermott | 2014-10-07 | 1 | -0/+7 |
| | |||||
* | session_begin(): Check for /prokit/installing | P. J. McDermott | 2014-10-07 | 5 | -4/+8 |
| | |||||
* | cmd/install: Make /prokit and /prokit/installing | P. J. McDermott | 2014-10-07 | 1 | -1/+4 |
| | |||||
* | session_begin(): Make /prokit if it doesn't exist | P. J. McDermott | 2014-10-07 | 1 | -0/+2 |
| | |||||
* | opkg_install_all(): Switch to using sessions | P. J. McDermott | 2014-10-07 | 1 | -2/+4 |
| | |||||
* | cmd/build: Split heredoc into up to three shells | P. J. McDermott | 2014-10-07 | 1 | -10/+8 |
| | | | | | This might be slightly less efficient, but the code looks a little nicer and any whitespace in arguments to opkbuild is preserved. | ||||
* | cmd/build: Update builddeps.opk generation | P. J. McDermott | 2014-10-07 | 1 | -14/+13 |
| | |||||
* | cmd/build: Switch to using sessions | P. J. McDermott | 2014-10-07 | 1 | -27/+14 |
| | |||||
* | session: Run commands in a "wd" subdirectory | P. J. McDermott | 2014-10-06 | 1 | -3/+5 |
| | |||||
* | session_dir(): New function | P. J. McDermott | 2014-10-06 | 1 | -0/+6 |
| | |||||
* | cmd/shell: Drop unnecessary variable. | P. J. McDermott | 2014-10-05 | 1 | -2/+0 |
| | |||||
* | cmd/opkg: Switch to using sessions | P. J. McDermott | 2014-10-05 | 1 | -2/+4 |
| | |||||
* | cmd/shell: Use session_exec() | P. J. McDermott | 2014-10-05 | 1 | -2/+2 |
| | | | | | | | | | | | | | | Now command arguments are separated and escaped naturally. For example, the following commands work: $ sudo prokit shell $root printf 'arg: %s\n' foo bar arg: foo arg: bar $ sudo prokit shell $root printf 'arg: %s\n' 'foo bar' arg: foo bar $ sudo prokit shell $root printf "'ello world\n" 'ello world | ||||
* | session_exec(): New function | P. J. McDermott | 2014-10-05 | 1 | -0/+14 |
| | |||||
* | session: Bind mount a dir to the session dir | P. J. McDermott | 2014-10-05 | 2 | -20/+15 |
| | |||||
* | profile_bind_*mount(): New functions | P. J. McDermott | 2014-10-05 | 2 | -0/+50 |
| | |||||
* | cmd/shell: Switch to using sessions | P. J. McDermott | 2014-10-05 | 1 | -3/+3 |
| | |||||
* | session_begin(): Fix a function call | P. J. McDermott | 2014-10-05 | 1 | -1/+2 |
| | |||||
* | session_*(): New functions | P. J. McDermott | 2014-10-04 | 2 | -0/+135 |
| | |||||
* | profile_file_systems_mounted(): New function | P. J. McDermott | 2014-10-04 | 2 | -0/+18 |
| |