Age | Commit message (Collapse) | Author | Files | Lines |
|
* NEWS: Bump version to 0.2.8.
* debian/changelog: Bump version to 0.2.8-1.
|
|
* 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/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.
|
|
|
|
* 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.
|
|
* NEWS: Bump version to 0.2.4.
* configure.ac: Bump version to 0.2.4.
|
|
* configure.ac: Create schroot/dchroot.1.
* schroot/Makefile.am: If --enable-dchroot was used, build and
install dchroot and dchroot.1.
|
|
compatibility.
|
|
* debian/control (Build-Depends): Add pkg-config build dependency.
* NEWS: Bump version to 0.2.3.
* configure.ac: Bump version to 0.2.3.
|
|
* NEWS: Update version to 0.2.2.
* configure.ac: Update version to 0.2.2.
|
|
* debian/changelog: Update for 0.2.1.
* schroot/sbuild-session.cc (wait_for_child): Set child_status to
EXIT_FAILURE, rather than this->child_status. This prevents a
non-zero exit status being returned at all times by child
processes.
* NEWS: Update for 0.2.1.
* configure.ac: Update version to 0.2.1.
|
|
|
|
* schroot/sbuild-config.h: Remove completed TODO item.
|
|
(check_priority): Add support for PRIORITY_DISALLOWED.
* schroot/sbuild-config.cc: Convert to throw exception instead of
immediately terminating with an error. This makes unit testing
possible, and errors are all caught correctly at the top-level.
* schroot/sbuild-chroot-lvm-snapshot.cc: When reading a keyfile,
only allow reading "lvm-snapshot-device" when restoring an active
chroot.
* configure.ac (AM_INIT_AUTOMAKE): Quote argument.
* test/sbuild-config.cc: New file. Test for sbuild::Config.
|
|
when not in maintainer mode.
* configure.ac: Enable maintainer mode.
|
|
* debian/control (Build-Depends): Add libcppunit-dev.
* schroot/sbuild-util.cc
(find_program_in_path): Split PATH on ':' characters.
* test/sbuild-util.cc: New file: tests for sbuild-util functions.
* test/testmain.cc: New file: test runner for all tests.
* configure.ac: Add check and conditinal for CppUnit.
* Makefile.am (SUBDIRS): Add test directory.
|
|
* schroot/Makefile.am: Generate a sbuild.gch precompiled header,
and include sbuild.h in all sources which previously included an
sbuild header. This should improve compilation speed.
* Rename schroot.h to sbuild.h, and include all sbuild-*.h
headers.
* schroot/sbuild-auth.cc (run): Fix casting to "const void **".
|
|
doxygen work.
|
|
distribute the doxygen-generated documentation.
|
|
removed from the sources.
* schroot/Makefile.am (libsbuild_la_LIBADD): Remove Glib library.
* schroot/schroot-releaselock.cc: Convert from GOption to
Boost.Program_options.
|
|
libboost-program-options.
* schroot/Makefile.am (libsbuild_la_LIBADD): Add BOOST_LIBS.
* configure.ac: Add checks for Boost.Format and
Boost.Program_options headers and shared libraries.
|
|
template helper class to simplify streaming outout of chroot
details. Used by all derived chroot classes.
* All Glib string functions have been replaced with the C++ or C99
equivalent.
* All uses of g_return[_val]_if_fail have been replaced with
conditionals or static assertions.
* All Glib logging and message functions have been replaced with
the new logging functions and standard C++ streams.
* All Glib types have been completely removed, with the exception
of one instance of GError, and two uses of GOption.
* Support for gtk-doc has been disabled and partially removed.
* The dependency upon libsigc++ has been removed. Virtual
functions are used instead, which will provide more safety and
security.
* schroot/sbuild-keyfile.(cc|h): New class sbuild::keyfile, a
replacement for GKeyFile. Unlike GKeyFile, it uses templated
methods to allow its use with any streamable type, in a type-safe
manner. The existing GKeyFile helper functions have been removed.
* schroot/sbuild-log.(cc|h): New file: logging functions to
replace the Glib print and logging utility functions. Unlike the
Glib types, these are based around ostreams.
* schroot/sbuild-nostream.(cc|h): New class sbuild::basic_nostream
with nostream and wnostream typedefs. This is a "null ostream",
which is a bit-bucket stream which discards all input.
* schroot/sbuild-types.h: New file: commonly-used types.
* Continue purge of Glib.
|
|
* configure.ac: Replace check for GObject with a check for GLib,
and adjust $SCHROOT_CFLAGS accordingly.
* Remove GObject support.
|
|
conversion is not yet complete, but builds without error.
|
|
* NEWS: Update for 0.1.8.
* configure.ac: Update version to 0.1.8.
|
|
configure.
* schroot/run/00check: Print new environment variables.
* schroot/setup/05lvm: Use schroot-releaselock to release snapshot
device lock just prior to snapshot removal.
* schroot/setup/00check: Print new environment variables.
* schroot/schroot-setup.5.in: Document new environment variables.
* schroot/sbuild-session.c (sbuild_session_setup_chroot): Add
LIBEXEC_DIR and PID setup environment variables.
* schroot/sbuild-chroot-lvm-snapshot.c
(sbuild_chroot_lvm_snapshot_setup_lock): Don't unlock device at
setup stop.
* schroot/Makefile.am
(pkglibexecdir): Set to $(SCHROOT_LIBEXEC_DIR).
(pkglibexec_PROGRAMS): Add schroot-releaselock.
* schroot/schroot-releaselock.c: New program to release device
lock files using liblockdev.
* configure.ac: Add SCHROOT_LIBEXEC_DIR define and substvar.
|
|
* debian/control (Build-Depends): Add liblockdev1-dev.
* schroot/Makefile.am (schroot_LDADD): Add $(LOCKDEV_LIBS).
* configure.ac: Check for liblockdev.
* Bump version to 0.1.7.
|
|
locations.
* schroot/sbuild-chroot.h: Rename SBUILD_CHROOT_SETUP_START and
SBUILD_CHROOT_SETUP_STOP to SBUILD_CHROOT_RUN_START and
SBUILD_CHROOT_RUN_STOP. Users of the enum changed to use the new
names.
* session.d script "session-start" and "session-stop" script
arguments renamed to "run-start" and "run-stop". All scripts
changed to use the new names, and sbuild-session.c runs the
scripts with the new new names.
* Rename schroot/session to schroot/run. Install scripts into
$sysconfdir/schroot/run.d. Update configure.ac, and
schroot/Makefile.am.
|
|
* schroot/Makefile.am (man_MANS): Add schroot-setup.5
* schroot/schroot.1.in: Remove setup script documentation.
* schroot/schroot-setup.5.in: New file, documenting setup script
environment.
|
|
* schroot/setup/10mount: Use new LVM variables, so snapshot names
and mount locations are as set by the session. Remove mount
directory after unmounting, but only if it's under $MOUNT_DIR.
* schroot/setup/05lvm: Use new LVM variables, so snapshot names
and mount locations are as set by the session.
* schroot/setup/00check, schroot/session/00check: Add MOUNT_DIR,
SESSION_ID, CHROOT_LVM_SNAPSHOT_NAME and
CHROOT_LVM_SNAPSHOT_DEVICE.
* schroot/schroot.c
(parse_options): Free the option context after use.
(main): If a session ID was not specified, generate a UUID for the
session.
(main): Free the chroot list to make valgrind happy.
* schroot/schroot.1.in: Document MOUNT_DIR, SESSION_ID,
CHROOT_LVM_SNAPSHOT_NAME and CHROOT_LVM_SNAPSHOT_DEVICE
environment variables.
* schroot/sbuild-session.c
(sbuild_session_get_session_id): session-id is no longer required
to be a UUID.
(sbuild_session_set_session_id): session-id is no longer required
to be a UUID. Allow setting of arbitrary strings.
(sbuild_session_setup_chroot): Export MOUNT_DIR and SESSION_ID in
the environment.
(sbuild_session_run): Set the chroot mount location if the chroot
did not already do so.
(sbuild_session_run): For LVM snapshot chroots, set the snapshot
name to the session ID.
(sbuild_session_run): Cascade error handling properly on failure.
(sbuild_session_class_init): Update session-id documentation now
it is no longer a strict UUID.
* schroot/sbuild-session.h (struct _SbuildSession): Change
session_id type from uuid_t to gchar *.
* schroot/sbuild-config.c (sbuild_config_load): Free GIOChannel,
file data buffer and GKeyFile structure after use.
* schroot/sbuild-chroot-lvm-snapshot.c
(sbuild_chroot_lvm_snapshot_print_config): Don't print NULL
values.
(sbuild_chroot_lvm_snapshot_setup): Don't set NULL values. Set
snapshot device name (path stripped) as CHROOT_LVM_SNAPSHOT_NAME.
(sbuild_chroot_lvm_snapshot_get_setup_name): Implement
get_setup_name vfunc. This is of the form block-major-minor,
obtained by stat()ing the block device. For setup-start, this is
the source LV, but for all other cases is the snapshot LV.
(sbuild_chroot_lvm_snapshot_class_init): Added new
"snapshot-device" property. The "device" property is slaved to
this value, and indirectly, the "device" property is also slaved.
* schroot/sbuild-chroot-lvm-snapshot.h (struct
_SbuildChrootLvmSnapshot): New snapshot_device member.
* schroot/sbuild-chroot-block-device.c
(sbuild_chroot_block_device_print_details): Don't print NULL
values.
(sbuild_chroot_block_device_print_config): Don't print NULL
values.
(sbuild_chroot_block_device_setup): Don't set NULL values.
(sbuild_chroot_block_device_get_setup_name): Implement
get_setup_name vfunc. This is of the form block-major-minor,
obtained by stat()ing the block device.
* schroot/sbuild-chroot-plain.c
(sbuild_chroot_plain_print_details): Don't print NULL values.
(sbuild_chroot_plain_print_config): Don't print NULL values.
(sbuild_chroot_plain_setup): Don't set NULL values.
(sbuild_chroot_plain_get_setup_name): Implement get_setup_name
vfunc. This is of the form directory-major-minor-inode, obtained
by stat()ing the mount location.
* schroot/sbuild-chroot.c
(sbuild_chroot_set_properties_from_keyfile): Don't leak GKeyFile
string and string vector values.
(sbuild_chroot_get_setup_name): New function. Get the name for
e.g. locking during setup.
(sbuild_chroot_print_details): Don't print NULL values.
(sbuild_chroot_print_config): Don't print NULL values.
(setup_env_string): New helper function to build environment list.
(setup_env_unsigned): New helper function to build environment list.
* schroot/sbuild-chroot.h (struct _SbuildChrootClass): Add
get_setup_name vfunc.
* schroot/sbuild-auth.c (sbuild_auth_setupenv): Don't leak new
environment.
* schroot/Makefile.am (install-data-hook): Create mount directory.
* configure.ac (SCHROOT_MOUNT_DIR): Add mount directory.
|
|
* schroot/schroot.conf.5.in: Document run-setup-scripts and
run-session-scripts options.
* schroot/sbuild-chroot.c (sbuild_chroot_class_init): Replace
run-setup property and associated accessors with two new
properties, run-setup-scripts and run-session-scripts and
associated accessors. Setup script are not run by default,
whereas session scripts are.
* schroot/sbuild-chroot.h (struct _SbuildChroot): Replace
run_setup with two members, run_setup_scripts and
run_session_scripts.
* schroot/Makefile.am (SUBDIRS): Add session.
* schroot/session/00check: New session script.
* schroot/session/Makefile.am: New file for installing session
scripts.
* configure.ac (SCHROOT_CONF_SETUP_D): New define and substitution
variable.
|
|
session-id property and associated accessors, which handle
conversions between a string and uuid_t.
* schroot/sbuild-session.h (struct _SbuildSession): Add a new
session_id member containing the session UUID.
* schroot/sbuild-config.c
(sbuild_config_new_from_file): New function to replace
sbuild_config_new.
(sbuild_config_new_from_directory): New function to load a set of
configuration files from a directory.
(sbuild_config_class_init): config-file property is no longer
readable. Added new contruct only and write-only config-directory
property.
(sbuild_config_set_config_directory): New function to read a
directory and load config files.
(sbuild_config_load): Pass back the chroot list as an OUT
parameter rather than a return value, to allow reusing the same
list.
(sbuild_config_set_config_file): Remove the restriction on loading
a single config file.
* schroot/sbuild-chroot-lvm-snapshot.c
(sbuild_chroot_lvm_snapshot_print_config): New virtual function to
print additional configuration details.
* schroot/sbuild-chroot-block-device.c
(sbuild_chroot_block_device_print_config): New virtual function to
print additional configuration details.
* schroot/sbuild-chroot-plain.c
(sbuild_chroot_plain_print_config): New virtual function to print
additional configuration details.
* schroot/sbuild-chroot.c
(sbuild_chroot_class_init): Added current-users, max-users and
active properties, and associated accessors.
(sbuild_chroot_new_from_keyfile): Add additional active parameter
which is TRUE if reloading an existing session configuration.
This relaxes permissions checks to allow setting of writable but
not construction parameters.
(sbuild_chroot_print_details): Print new properties.
(sbuild_chroot_print_config): New function to write out current
session state to a a configuration file for later restoration.
(sbuild_chroot_setup): Set new properties as environment
variables, except for active, since this is implicit in running a
session).
* schroot/sbuild-chroot.h
(struct _SbuildChroot): Add current_users, max_users and active
members.
(struct _SbuildChrootClass): Add print_config vfunc.
* debian/control (Build-Depends): Build-depend upon uuid-dev
* schroot/Makefile.am
(schroot_LDADD): Link with libuuid.
(install-data-hook): Make SCHROOT_LOCK_DIR and
SCHROOT_SESSION_DIR.
* configure.ac:
Check for libuuid and add UUID_CFLAGS to SCHROOT_CFLAGS.
Add substitutions and defines for SCHROOT_LOCK_DIR and
SCHROOT_SESSION_DIR.
|
|
* schroot/setup/30passwd: Use $CHROOT_MOUNT_LOCATION.
* schroot/setup/20network: Use $CHROOT_MOUNT_LOCATION.
* schroot/setup/10mount: New script to mount block devices.
* schroot/setup/00check: New script to do sanity checking before
other scripts are run, and print the environment when run in
verbose mode.
* schroot/sbuild-session.c
(sbuild_session_setup_chroot): Fall back to "/mnt" if no mount
location is available. This is temporary.
(sbuild_session_setup_chroot): Set the environment correctly for
subclassed SbuildChroot objects.
(sbuild_session_setup_chroot_child_setup): New helper function to
ensure that the setup scripts run as real and effective user and
group root.
* schroot/sbuild-chroot.c
(sbuild_chroot_get_chroot_type): New function, which calls the
get_type vfunc.
(sbuild_chroot_class_init): Renamed "location" property to
"mount-location", and updated all methods accordingly. "location"
is now implemented only in SbuildChrootPlain.
(sbuild_chroot_new_from_keyfile): Check the GKeyFile "type" key to
check which SbuildChroot subclass to instantiate. Add stricter
checking of GKeyFile keys, by validating names and types against
the registered properties for the GObjectClass, as well as
checking if the properties are constructible and writable.
* schroot/sbuild-chroot.h (struct _SbuildChrootClass): Added new
get_type vfunc, for getting the type name of the chroot.
* schroot/sbuild-chroot-block-device.[ch]: New files, implementing
SbuildChrootBlockDevice, an object representing a chroot on a
block device mounted on demand, derived from SbuildChroot.
* schroot/sbuild-chroot-plain.[ch]: New files, implementing
SbuildChrootPlain, an object representing a simple filesystem
chroot, derived from SbuildChroot.
* NEWS: Bump version to 0.1.6.
* configure.ac: Bump version to 0.1.6.
* schroot/sbuild-chroot.c (sbuild_chroot_new_from_keyfile): Warn
if not constructible or writable types are used.
|
|
- Check for run-parts.
- Define $PACKAGE_SYSCONF_DIR as the location for configuration files.
- Define $SCHROOT_CONF_SETUP_D as the location for setup scripts.
* schroot/Makefile.am (pkgsysconfdir): Install schroot.conf into
$(PACKAGE_SYSCONF_DIR).
* schroot/schroot.conf.5.in: Update date.
* schroot/schroot.1.in: Add setup.d to FILES. Update date.
* schroot/setup/Makefile.am: Distribute and install 20network,
30passwd and 50chrootname into $sysconfdir/schroot/setup.d.
* schroot/setup/50chrootname: New file to set up chroot name in
/etc/debian_chroot.
* schroot/setup/30passwd: New file to set up passwd, shadow and
group.
* schroot/setup/20network: New file to set up resolv.conf.
* schroot/sbuild-session.h: Add SBUILD_SESSION_ERROR_CHROOT_SETUP
GError enum.
* schroot/sbuild-session.c
(sbuild_session_setup_chroot): New function to call run-parts(8).
(sbuild_session_run): Call sbuild_session_setup_chroot before and
after running the session command or shell.
|
|
SCHROOT_CONF.
* schroot/Makefile.am (DEFS): Remove SCHROOT_CONFIG_FILE.
* schroot/schroot.conf.5.in: Use @SCHROOT_CONF@, rather than the
incorrect @prefix@/etc/schroot.conf.
* schroot/schroot.1.in: Use @SCHROOT_CONF@, rather than the
incorrect @prefix@/etc/schroot.conf.
* configure.ac (PACKAGE_SYSCONF_DIR): Compute the final value of
$sysconfdir before configure ends, and substitute and define
SCHROOT_CONF with the location of schroot.conf.
|
|
* schroot/schroot.c (main): Add support for SbuildAuthConv
timeouts.
* schroot/schroot.h: Added new headers.
* schroot/sbuild-marshallers.list: Added new marshaller
BOOLEAN:UINT,BOXED.
* configure.ac: Remove check for libpam_misc. Bump version to
0.1.5
* schroot/sbuild-auth.c: Add support for the conv member as a
GObject property:
(sbuild_auth_get_conv): New function.
(sbuild_auth_set_conv): New function.
(sbuild_auth_conv): New function; glue to interface PAM to
SbuildAuthConv.
(sbuild_auth_start): Create a custom pam_conv which uses
sbuild_auth_conv to hook back into
SbuildAuthConv from PAM.
* schroot/sbuild-auth.h: Add conv member to _SbuildAuthConv and
sbuild_auth_get_conv and sbuild_auth_set_conv getters and
setters, used to get and set the SbuildAuthConv interface used.
* schroot/sbuild-auth-conv-tty.[ch]: New files, adding the
SbuildAuthConvTty implementation of SbuildAuthConv.
* schroot/sbuild-auth-conv.[ch]: New files, adding the
SbuildAuthConv GInterface.
* schroot/sbuild-auth-message.[ch] New files, adding the
SbuildAuthMessagea and SbuildAuthMessageVector structures
(registered as GBoxed types).
|
|
* Bump version numbers to 0.1.4.
|
|
|
|
|
|
gettext will have to handle this.
* Update .cvsignore files.
* TODO: Remove gettext item.
* po/en.po: Add an English translation, to make use of UTF-8
characters.
* schroot/Makefile.am, schroot/*.c: Mark up strings for
translation with gettext, and add gettext and locale
initialisation code to main().
* Add po/POTFILES.in with all C source files included.
* Add additional options to po/Makevars, to make xgettext read
the source as UTF-8.
* bootstrap, configure.ac, Makefile.am: add GNU gettext support.
|
|
* schroot/sbuild-config.c (sbuild_config_validate_chroots):
use g_return_val_if_fail, not g_return_if_fail.
* configure.ac: Remove the automake "tar-pax" option, because the
Debian build infrastructure can't cope with it yet.
|
|
|
|
Add strict pointer checks and bump version
Revision:
schroot--mainline--0.1.1--patch-1
- Add strict pointer checks to all function arguments and before
dereferencing object members.
- Increase version number to 0.1.1.
|
|
Add --enable-debug configure option
Revision:
schroot--mainline--0.1.0--patch-16
- Add --enable-debug configure option
- All source files include <config.h> to detect if debugging is
enabled.
- schroot.c: If debugging is enabled, install a null log handler
for g_debug messages.
- SbuildSession: add a missing "gid" property.
- Add the initial project requirements file.
|
|
Add gtk-doc framework
Revision:
schroot--mainline--0.1.0--patch-9
- Added gtk-doc API reference to doc/schroot.
- Updated README.
- Updated TODO.
|
|
Add manual pages and TODO
Revision:
schroot--mainline--0.1.0--patch-5
- Add sbuild.1.in and sbuild.conf.5.in manual pages.
- Add TODO
- Fix typo in sbuild-session.c.
|
|
Add PAM configuration file
Revision:
schroot--mainline--0.1.0--patch-2
- Add schroot/pam/schroot containing a PAM configuration file to
install in /etc/pam.d/schroot.
|
|
Add autotools framework
Revision:
schroot--mainline--0.1.0--patch-1
- Add support for autoconf, automake and libtool.
- Add support for gtk-doc.
- Install schroot setuid root.
- Add --version option and embed version number in the output.
- Add AUTHORS and NEWS files.
- Generate ChangeLog with tla.
|