aboutsummaryrefslogtreecommitdiff
path: root/src/package.lisp
Commit message (Collapse)AuthorAge
...
* add DEFINE-ERROR-RETVAL-CFUN, CHROOT, CLEARENVSean Whitton2021-10-21
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add USER:HAS-LOCKED-PASSWORDDavid Bremner2021-09-29
| | | | | | | This is useful when access is provided by other means (e.g. ssh keypairs) or as part of locking a user out completely. Signed-off-by: David Bremner <david@tethera.net>
* add USER:HAS-ACCOUNT-WITH-UIDDavid Bremner2021-09-29
| | | | | | | | | | | | The anticipated use case is where both uid and gid are to be set; making GID an optional keyword argument just allows a shorthand for the case of matching gid and uid. The limitation to a Debian-like OS is because of the assumption of a primary group per user. Refactor PASSWD-ENTRY to support a new function GROUP-ENTRY that does the same thing, but with the group database instead of the passwd database. Signed-off-by: David Bremner <david@tethera.net>
* drop obsolete export of CAN-PROBABLY-FORKSean Whitton2021-09-19
| | | | | | The function was removed in f4e9170e73cb4bcfa7328422b4ff4f72d1339dd0. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add SYSTEMD:LINGERING-ENABLEDSean Whitton2021-09-18
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add FILE:LACKS-LINES-MATCHINGSean Whitton2021-09-12
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add dep on Anaphora and use APROG1, ALET & AAND in various placesSean Whitton2021-09-08
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* :LOCAL CONNECTION-WRITEFILE: use UIOP:RENAME-FILE-OVERWRITING-TARGETSean Whitton2021-08-31
| | | | | | Avoids starting an external process. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* MKTEMP: factor out MKSTEMP-CMDSean Whitton2021-08-31
| | | | | | No functional change. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add CONNECTION-READFILE-AND-REMOVE to improve RUN performanceSean Whitton2021-08-31
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* rework PUSHNEW-HOSTATTRS to use EQUAL not EQL & add PUSHNEW-HOSTATTRSean Whitton2021-08-31
| | | | | | | | | | | | | | | Previously, PUSHNEW-HOSTATTRS always used EQL to determine whether a hostattr was already pushed, which would give the wrong answer for many common cases. Now default to using EQUAL, and provide a way for the caller to specify the test function. PUSHNEW-HOSTATTRS now takes a list of hostattrs as a single parameter, rather than using &REST, in order to make room for the new :TEST keyword parameter. To mitigate the inconvenience of no longer using &REST, add PUSHNEW-HOSTATTR. Also fix some parameter and function names in docstrings. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* MOUNT:UNMOUNTED-BELOW-AND-REMOVED: don't unmount DIR itselfSean Whitton2021-08-22
| | | | | | | | | | | If DIR is itself a mount point then previously we would never delete its contents because the unmounting is done first. This meant that when MOUNT:UNMOUNTED-BELOW-AND-REMOVED was used to remove the root filesystem of a container or virtual machine, for example, then whether the contents of the root filesystem was actually deleted depended upon whether DIR happened to be a mount point. This change ensures that the deletion is always done. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* make LIBVIRT:KVM-BOOTS-CHROOT{,-FOR} unapplicableSean Whitton2021-08-22
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* upload Lisp systems as tarballs, not concatenated sourceSean Whitton2021-08-22
| | | | | | This should enable depending on Lisp systems which use the CFFI Groveller. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* don't fail when stderr from POST-FORK grandchild process is emptySean Whitton2021-08-22
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* :SUDO: ensure that stdin is a pipe, never a real fileSean Whitton2021-07-24
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* call POST-FORK before WITH-FORK-CONTROLSean Whitton2021-07-24
| | | | | | | This ensures that the fork control child is in the same context as its parent -- for example, that they're both chrooted. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add CRON:USER-CRONTABSean Whitton2021-07-24
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add IMAGE-DUMPED and CRON:RUNS-CONSFIGURATORSean Whitton2021-07-24
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* UNWIND-PROTECT-IN-PARENT -> UNWIND-PROTECTSean Whitton2021-07-24
| | | | | | No longer needed thanks to f4e9170e73cb4bcfa7328422b4ff4f72d1339dd0. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* new approach to calling fork(2) in remote Lisp imagesSean Whitton2021-07-24
| | | | | | | | | | | Drop CAN-PROBABLY-FORK because we now only try to fork(2) in contexts in which there shouldn't ever be any other threads running, apart from Lisp implementation finaliser threads and the like. We no longer need to RESET-DATA-SOURCES before CONTINUE-DEPLOY* because we now only fork(2) in contexts in which *NO-DATA-SOURCES* is t. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* move remote Lisp images part of data.lisp to its own fileSean Whitton2021-07-23
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* SSHD:CONFIGURED: when configuration is changed, restart ssh daemonSean Whitton2021-07-13
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* factor out MOUNTPOINTPSean Whitton2021-07-10
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* INSTALLER:CLEANLY-INSTALLED-ONCE: handle /run using 'mount --move'Sean Whitton2021-07-10
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* FILE:UPDATE-UNIX-TABLE: add sorting of lines at endSean Whitton2021-07-10
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add INSTALLER:BOOTLOADERS-INSTALLED & example usageSean Whitton2021-07-10
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add SWAP:HAS-SWAP-FILESean Whitton2021-07-10
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add ON-APPLY-CHANGESean Whitton2021-07-10
| | | | | | Also see b24ff2c7365ee8d42063cbfa06ece3ef591d9a35. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* replace live-build(7) properties with DISK:DEBIAN-LIVE-ISO-BUILTSean Whitton2021-07-10
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* signal SKIPPED-PROPERTIES & factor out interpreting exit codesSean Whitton2021-07-10
| | | | | | | | | | | | Unconditionally signalling FAILED-CHANGE does not make sense because perhaps the type of condition C is not a subtype of SIMPLE-CONDITION. Moreover, when we invoke the SKIP-PROPERTY restart we do not actually pass the condition. For simplicity, and since all we need is notification that a SKIP-PROPERTY restart was invoked, instead define and signal a special-purpose condition. Additionally, use an exit code to pass the signal between Lisp images. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* HOSTNAME::DOMAIN: fix handling hostnames without any '.'Sean Whitton2021-07-10
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add INSTALLER:CLEANLY-INSTALLED-ONCE & some utilsSean Whitton2021-07-10
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add AT-END, REBOOT:REBOOTED-AT-ENDSean Whitton2021-07-06
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* factor out MOUNT:*{STANDARD-LINUX,LINUX-EFIVARS}-VFS*Sean Whitton2021-07-06
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* chroot mounts: assert that /dev is udev devtmpfsSean Whitton2021-07-06
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add POSIX-LOGIN-ENVIRONMENT and use in :SETUID connectionSean Whitton2021-07-06
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* factor out MOUNT:ALL-MOUNTSSean Whitton2021-07-06
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add NETWORK:{CLEAN-/ETC/NETWORK/INTERFACES,PRESERVE-STATIC-ONCE}Sean Whitton2021-07-06
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* export LIBVIRT:VIRSH-GET-COLUMNSSean Whitton2021-07-06
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add FIREWALLD:{POLICY,ZONE} and rename incremental zone propertiesSean Whitton2021-07-06
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add FIREWALLD:DEFAULT-ROUTE-ZONED-ONCESean Whitton2021-07-06
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* factor out FIREWALLD::%SETXML & add reloadingSean Whitton2021-07-06
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add TIMEZONE:CONFIGURED-FROM-PARENTSean Whitton2021-06-27
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add APT:NO-PDIFFSSean Whitton2021-06-27
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add TIMEZONE:CONFIGUREDSean Whitton2021-06-27
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add some firewalld propertiesSean Whitton2021-06-25
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* APACHE:HTTPS-VHOST: add application of NETWORK:ALIASESSean Whitton2021-06-25
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add NETWORK:{ALIASES,IPV4,IPV6}Sean Whitton2021-06-25
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add GIT:REPO-CONFIGUREDSean Whitton2021-06-25
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>