Age | Commit message (Collapse) | Author | Files | Lines |
|
* debian/changelog: Update for 0.2.8.
|
|
* NEWS: Bump version to 0.2.8.
* debian/changelog: Bump version to 0.2.8-1.
|
|
* po/sv.po: Update.
|
|
|
|
login shell if using a command-prefix, since this will not be a
valid command for command-prefix to execute.
|
|
crash.
* schroot/dchroot-session.cc
(run_impl): Correctly chain up to the base class.
|
|
* debian/changelog: Update for 0.2.7.
* NEWS: Update for 0.2.7.
|
|
* NEWS: Bump version to 0.2.7.
* configure.ac: Bump version to 0.2.7.
* po/en_GB.po: Update translation.
* schroot/sbuild-auth.cc
(setupenv): For security, PATH is always set to a sane state for
root, but only set in other cases if not preserving the
environment.
* schroot/sbuild-session.cc
(run_child): When "command-prefix" has been specified, correctly
set the filename to pass to execve. Mark four strings for
translation.
|
|
* debian/changelog: Update for 0.2.6.
|
|
|
|
* schroot/schroot.conf.5.in: Document required ownership and
permissions for file archives.
* schroot/sbuild-chroot-file.cc
(setup_lock): Check ownership and permissions of file archive.
* schroot/sbuild-chroot-config.cc (check_security): Tidy error
message formatting.
* schroot/setup/10mount:
(do_umount): Only umount if the mountpoint exists.
* schroot/setup/05file:
(repack_file): Preserve ownership and permissions of the original
archive file.
|
|
* schroot/schroot.cc
(main): Allow the environment to be preserved even if changing
users.
* schroot/sbuild-auth.cc
(setupenv): Add SHELL to default environment. Sanitise the
environment by removing dangerous variables (the same set used by
sudo).
|
|
|
|
* schroot/setup/05file: If the chroot status is not "ok", don't
repack the file archive.
* schroot/schroot-setup.5.in: Document second argument to setup
and exec scripts (chroot status).
* schroot/schroot.cc (main): Save and restore termios, so that
abnormal session termination leaves the terminal in a usable
state.
* schroot/sbuild-session.cc
(sighup_called): New variable to flag SIGHUP.
(sighup_handler): New function to handle SIGHUP.
(run_impl): Enable and disable handler for SIGHUP. Switch
chroot::SETUP_STOP action to after the catch block, to prevent it
being run twice on failure.
(setup_chroot): Set chroot_status to false on failure. Use this
as the second argument to setup and exec scripts. If chroot
locking fails, immediately unlock to ensure that any session
metadata files are unlinked.
(wait_for_child): If SIGHUP is caught, kill any child process and
throw an error.
(set_sighup_handler): Set a handler for SIGHUP.
(clear_sighup_handler): Restore the previous handler for SIGHUP.
* schroot/sbuild-session.h
(chroot_status): New member to track the state of the chroot.
(saved_signals): New member used to save and restore signals
handlers.
|
|
* schroot/schroot-setup.5.in: Document CHROOT_FILE_REPACK.
* schroot/schroot.conf.5.in: Document source chroot options.
|
|
(unpack_file): Use a temporary file to prevent data loss, and use
trap to clean up on failure.
|
|
(check_filetype): Correctly escape '.'.
|
|
|
|
|
|
(unpack_file): Correctly unpack tar.bz2 files.
(repack_file): New function to pack up the chroot tree back into
an archive file.
|
|
(add): Use std::boolalpha to correctly represent boolean values.
|
|
* schroot/setup/00check: Add check for CHROOT_FILE_REPACK.
* schroot/sbuild-chroot-file.cc:
(chroot_file): repack member is false by default.
(clone_source): Create a chroot_block_device source chroot. Set
repack to true.
(setup_env): Chain up to chroot_source method. Add a
CHROOT_FILE_REPACK environment variable.
(print_details): Chain up to chroot_source method.
(get_keyfile): Chain up to chroot_source method. Set a
"file-repack" key.
(set_keyfile): Chain up to chroot_source method. Get a
"file-repack" key, but only when restoring an active session.
* schroot/sbuild-chroot-file.h: Derive from sbuild::chroot_source,
and implement sbuild::chroot_source::clone_source.
(repack): New member to allow repacking of the chroot on session
ending.
* schroot/sbuild-chroot-config.cc (parse_data): Remove unneeded
dynamic_cast to chroot_lvm_snapshot *. Make sure source chroot is
valid before adding it.
|
|
(parse_data): Remove special case for lvm-snapshot chroots.
Instead, create and add a source chroot for any inactive chroot
implementing chroot_source.
* schroot/sbuild-chroot-lvm-snapshot.cc
(clone_source): Create a chroot_block_device source chroot.
(setup_env): Chain up to chroot_source method.
(print_details): Chain up to chroot_source method.
(get_keyfile): Chain up to chroot_source method.
(set_keyfile): Chain up to chroot_source method.
* schroot/sbuild-chroot-lvm-snapshot.h: Derive from
sbuild::chroot_source, and implement
sbuild::chroot_source::clone_source.
|
|
inheritance (to allow for the use of sbuild::chroot_source).
|
|
* schroot/sbuild.h: Include sbuild-chroot-source.h.
* schroot/sbuild-chroot-source.(cc|h): New file. This is an
interface class, to be implemented by chroots providing source
chroots in addition to normal chroots.
|
|
* debian/schroot.init: Rename $DAEMON to $SCHROOT. Don't exit
with an error if session recovery for an individual chroot fails.
|
|
* schroot/schroot-options.cc (options): Allow session recovery,
session running and session ending to be performed upon multiple
chroots, rather than one at once.
|
|
"-source" chroot for LVM snapshots if the chroot is active.
|
|
|
|
* debian/postinst: Move /etc/schroot/run.d/00check to
/etc/schroot/exec.d/00check if modified locally.
* debian/preinst: Remove /etc/schroot/run.d/00check if not
modified locally.
* Update tests.
* schroot/schroot.conf: Rename run-session-scripts to
run-exec-scripts.
* schroot/schroot.conf.5.in: Document new configuration
parameters, and deprecated parameters.
* schroot/schroot.1.in: Document new setup script locations.
* schroot/schroot-setup.5.in: Document new setup script locations
and parameters.
* schroot/Makefile.am (SUBDIRS): Rename run to exec.
* configure.ac: Rename SCHROOT_CONF_RUN_D to SCHROOT_CONF_EXEC_D.
Rename schroot/run/Makefile to schroot/exec/Makefile. Tidy
comments.
* schroot/sbuild-session.cc: Use new chroot functions and enums.
Also use SCHROOT_CONF_EXEC_D rather than SCHROOT_CONF_RUN_D.
Execution scripts are called with "exec-start" and "exec-stop",
rather than "run-start: and "run-stop", respectively.
* Use new functions and enums in all derived chroot types.
* schroot/sbuild-chroot.cc
(get_run_exec_scripts): Rename from get_run_session_scripts.
(set_run_exec_scripts): Rename from set_run_session_scripts.
(print_details): Print "Run Execution Scripts" rather than "Run
Session Scripts".
(get_keyfile): Set "run-exec-scripts" in the keyfile.
(set_keyfile): Get "run-exec-scripts" in the keyfile. Also get
"run-session-scripts" (now deprecated) for backward compatibility.
* schroot/sbuild-chroot.h
(setup_type): Rename RUN_START and RUN_STOP to EXEC_START and
EXEC_STOP.
(run_exec_scripts): Rename member from run_session_scripts.
* Rename schroot/run to schroot/exec.
|
|
/etc/schroot/setup.d/50sbuild if modified locally.
* debian/preinst: Remove /etc/schroot/run.d/50sbuild if not
modified locally.
* schroot/schroot-setup.5.in: Update location of 50sbuild.
* Move 50sbuild from schroot/run.d to schroot/setup.d.
* schroot/setup/50sbuild: Move from schroot/run/50sbuild.
|
|
|
|
* schroot/schroot.conf.5.in: Document "command-prefix" option.
* schroot/sbuild-session.cc
(run_child): Concatenate command_prefix and command to get the
command to run in the chroot.
* schroot/sbuild-chroot.cc
(get_command_prefix): New method to get command prefix.
(set_command_prefix): New method to set command prefix.
(print_details): Display command_prefix if set.
(get_keyfile): Set command-prefix in keyfile.
(set_keyfile): Get command-prefix from keyfile.
* schroot/sbuild-chroot.h: New member command_prefix.
|
|
and "function" in shell functions). Thanks to Clint Adams for
this patch.
|
|
* configure.ac: Update for 0.2.5.
* debian/changelog: Update for 0.2.5.
* NEWS: Document "Path" line. Update for 0.2.5.
* schroot/sbuild-chroot.cc (print_details): Output path
information if available.
|
|
#354477).
|
|
* schroot/run/50sbuild: Create
${CHROOT_PATH}/var/lib/sbuild/srcdep-lock and set ownership and
permissions of all files under ${CHROOT_PATH}/var/lib/sbuild to
root:sbuild and 02775, respectively. Thanks to Adeodato Sim�� for
this patch.
|
|
Clint Adams for this patch.
|
|
|
|
* debian/changelog: Update for 0.2.4.
* TODO: Update.
|
|
* schroot/sbuild-parse-value.cc: Fix Doxygen warnings.
* schroot/sbuild-parse-value.h: Fix Doxygen warnings.
|
|
* NEWS: Update.
* Update tests.
* schroot/schroot.conf.5.in: Document "run-setup-scripts"
behaviour for plain chroots.
* schroot/setup/10mount: Allow plain chroots to run the mount
script. For plain chroots, bind mount LOCATION on MOUNT_LOCATION.
* schroot/setup/00check: For plain chroots, verify
CHROOT_LOCATION, rather than CHROOT_PATH (because CHROOT_PATH does
not exist at this point).
* schroot/sbuild-session.cc
(run_impl): In addition to all other chroot types, if chroot is a
chroot_plain chroot with setup scripts enabled, set the mount
location to the session id.
* schroot/sbuild-chroot-plain.cc
(get_path): New virtual method to override base class
implementation. When setup scripts are enabled, return the mount
location, or else the location.
(setup_lock): When setup scripts are enabled, write out a session
metadata.
(get_session_flags): When setup scripts are enabled, enable
SESSION_CREATE, or else 0.
|
|
chroots.
* schroot/schroot-setup.5.in: Document CHROOT_LOCATION and
CHROOT_PATH.
* Update tests to check CHROOT_LOCATION and CHROOT_PATH.
* schroot/setup/50chrootname: Replace CHROOT_MOUNT_LOCATION with
CHROOT_PATH.
* schroot/setup/30passwd: Replace CHROOT_MOUNT_LOCATION with
CHROOT_PATH.
* schroot/setup/20network: Replace CHROOT_MOUNT_LOCATION with
CHROOT_PATH.
* schroot/setup/10mount: Replace CHROOT_MOUNT_LOCATION with
CHROOT_PATH.
* schroot/setup/00check: Add CHROOT_LOCATION and CHROOT_PATH.
Replace CHROOT_MOUNT_LOCATION with CHROOT_PATH.
* schroot/run/50sbuild: Replace CHROOT_MOUNT_LOCATION with
CHROOT_PATH.
* schroot/run/00check: Add CHROOT_LOCATION and CHROOT_PATH.
* schroot/sbuild-chroot-config.cc
(print_chroot_location): Use get_path() instead of
get_mount_location().
* schroot/sbuild-session.cc
(run_child): Use get_path() instead of get_mount_location().
* schroot/sbuild-chroot-plain.cc
(get_location): Chain up to base class implementation.
(set_location): Chain up to base class implementation.
(print_details): Remove printing of location detail.
* schroot/sbuild-chroot-plain.h
(get_location): Make virtual.
(set_location): Make virtual.
(get_mount_location): Remove virtual function.
(location): Remove member.
* schroot/sbuild-chroot-block-device.cc
(get_location): New method. Get the location of a chroot on the
device filesystem.
(set_location): New method. Set the location of a chroot on the
device filesystem.
(get_keyfile): Set location in keyfile.
(set_keyfile): Get optional location from keyfile.
* schroot/sbuild-chroot.cc
(get_location): New virtual method.
(set_location): New virtual method.
(get_path): New virtual method. The default implementation
concatenates and returns the mount_location and the location.
(setup_env): Add CHROOT_LOCATION and CHROOT_PATH to the
environment.
(print_details): print Location and Path.
* schroot/sbuild-chroot.h:
(location): New member.
|
|
|
|
* NEWS: Bump version to 0.2.4.
* configure.ac: Bump version to 0.2.4.
|
|
* schroot/dchroot.1.in: Fix syntax error.
|
|
|
|
* debian/rules: dchroot must be installed setuid root.
* debian/schroot.lintian-overrides: Add dchroot.
|
|
|
|
* debian/changelog: Update for 0.2.3.
* NEWS: Document changed "--info" output.
* TODO: Update.
|