--- /dev/null
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Lesser General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.
--- /dev/null
+# Makefile
+
+TRANSLATIONS="it"
+
+all: build
+
+test:
+ set -e; for SCRIPT in bin/* hooks/* scripts/live scripts/live-functions scripts/live-helpers scripts/*/*; \
+ do \
+ sh -n $$SCRIPT; \
+ done
+
+build:
+
+install: test build
+ # Installing configuration
+ install -D -m 0644 conf/live.conf $(DESTDIR)/etc/live.conf
+
+ # Installing executables
+ mkdir -p $(DESTDIR)/sbin
+ cp bin/live-getty bin/live-login bin/live-snapshot $(DESTDIR)/sbin
+
+ mkdir -p $(DESTDIR)/usr/share/live-initramfs
+ cp bin/live-preseed bin/live-reconfigure $(DESTDIR)/usr/share/live-initramfs
+
+ mkdir -p $(DESTDIR)/usr/share/initramfs-tools
+ cp -r hooks scripts $(DESTDIR)/usr/share/initramfs-tools
+
+ # Installing documentation
+ mkdir -p $(DESTDIR)/usr/share/doc/live-initramfs
+ cp -r COPYING docs/* $(DESTDIR)/usr/share/doc/live-initramfs
+
+ mkdir -p $(DESTDIR)/usr/share/doc/live-initramfs/examples
+ cp -r conf/live.conf $(DESTDIR)/usr/share/doc/live-initramfs/examples
+
+ # Installing manpages
+ set -e; for MANPAGE in manpages/*.en.1; \
+ do \
+ install -D -m 0644 $$MANPAGE $(DESTDIR)/usr/share/man/man1/`basename $$MANPAGE .en.1`.1; \
+ done
+
+ set -e; for MANPAGE in manpages/*.en.7; \
+ do \
+ install -D -m 0644 $$MANPAGE $(DESTDIR)/usr/share/man/man7/`basename $$MANPAGE .en.7`.7; \
+ done
+
+ set -e; for TRANSLATIONS in $$TRANSLATIONS; \
+ do \
+ for MANPAGE in manpages/*.$$TRANSLATION.1; \
+ do \
+ install -D -m 0644 $$MANPAGE $(DESTDIR)/usr/share/man/$$TRANSLATION/man1/`basename $$MANPAGE .$$TRANSLATION.1`.1; \
+ done; \
+ for MANPAGE in manpages/*.$$TRANSLATION.7; \
+ do \
+ install -D -m 0644 $$MANPAGE $(DESTDIR)/usr/share/man/$$TRANSLATION/man7/`basename $$MANPAGE .$$TRANSLATION.7`.7; \
+ done; \
+ done
+
+ # Temporary symlinks
+ ln -sf live-initramfs.7.gz $(DESTDIR)/usr/share/man/man7/live-getty.7.gz
+ ln -sf live-initramfs.7.gz $(DESTDIR)/usr/share/man/man7/live-login.7.gz
+
+uninstall:
+ # Uninstalling configuration
+ rm -f $(DESTDIR)/etc/live.conf
+
+ # Uninstalling executables
+ rm -f $(DESTDIR)/sbin/live-getty $(DESTDIR)/sbin/live-login $(DESTDIR)/sbin/live-snapshot
+ rm -rf $(DESTDIR)/usr/share/live-initramfs
+ rm -f $(DESTDIR)/usr/share/initramfs-tools/hooks/live
+ rm -rf $(DESTDIR)/usr/share/initramfs-tools/scripts/live*
+ rm -f $(DESTDIR)/usr/share/initramfs-tools/scripts/local-top/live
+
+ # Uninstalling documentation
+ rm -rf $(DESTDIR)/usr/share/doc/live-initramfs
+
+ # Uninstalling manpages
+ set -e; for MANPAGE in manpages/*.en.1; \
+ do \
+ rm -f $(DESTDIR)/usr/share/man/man1/`basename $$MANPAGE .en.1`.1; \
+ done
+
+ set -e; for MANPAGE in manpages/*.en.7; \
+ do \
+ rm -f $(DESTDIR)/usr/share/man/man7/`basename $$MANPAGE .en.7`.7; \
+ done
+
+ set -e; for TRANSLATIONS in $$TRANSLATIONS; \
+ do \
+ for MANPAGE in manpages/*.$$TRANSLATION.1; \
+ do \
+ install -D -m 0644 $$MANPAGE $(DESTDIR)/usr/share/man/$$TRANSLATION/man1/`basename $$MANPAGE .$$TRANSLATION.1`.1; \
+ done; \
+ for MANPAGE in manpages/*.$$TRANSLATION.7; \
+ do \
+ install -D -m 0644 $$MANPAGE $(DESTDIR)/usr/share/man/$$TRANSLATION/man7/`basename $$MANPAGE .$$TRANSLATION.7`.7; \
+ done; \
+ done
+
+ # Temporary symlinks
+ rm -f $(DESTDIR)/usr/share/man/man7/live-getty.7.gz
+ rm -f $(DESTDIR)/usr/share/man/man7/live-login.7.gz
+
+update:
+ set -e; for FILE in docs/parameters.txt; \
+ do \
+ sed -i -e 's/2007\\-10\\-29/2007\\-11\\-05/' \
+ -e 's/2007-10-29/2007-11-05/' \
+ -e 's/29.10.2007/05.11.2007/' \
+ -e 's/1.110.4/1.110.5/' \
+ $$FILE; \
+ done
+
+clean:
+
+distclean:
+
+reinstall: uninstall install
--- /dev/null
+#!/bin/sh
+
+set -e
+
+AUTOLOGIN="1"
+
+for ARGUMENT in "${@}"
+do
+ if [ "${ARGUMENT}" = "-l" ] || [ "${ARGUMENT}" = "-n" ]
+ then
+ AUTOLOGIN="0"
+ fi
+done
+
+if [ "${AUTOLOGIN}" = "1" ]
+then
+ exec /sbin/getty -n -l /sbin/live-login ${*}
+else
+ exec /sbin/getty ${*}
+fi
--- /dev/null
+#!/bin/sh
+
+set -e
+
+USERNAME="root"
+
+if [ -f /etc/live.conf ]
+then
+ . /etc/live.conf
+fi
+
+exec /bin/login -f "${USERNAME}"
--- /dev/null
+#!/bin/sh
+
+set -e
+
+PATH=/usr/sbin:/usr/bin:/sbin:/bin
+
+root="${1}"
+question="${2}"
+value="${3}"
+seen="${4}"
+
+[ "${seen}" ] || seen=true
+
+if ! (echo "SET ${question} ${value}"; echo "FSET ${question} seen ${seen}") | chroot "${1}" debconf-communicate -fnoninteractive live-initramfs >/dev/null
+then
+
+chroot "${1}" debconf-communicate -fnoninteractive live-initramfs >/dev/null << EOF
+REGISTER debian-installer/dummy ${question}
+SET ${question} ${value}
+FSET ${question} seen ${seen}
+EOF
+
+fi
+
+exit 0
--- /dev/null
+#! /bin/sh
+
+set -e
+
+export PATH=/usr/bin:/usr/sbin:/sbin:/bin
+
+frontend=noninteractive
+
+findcommandinroot ()
+{
+ ROOT="${1}/"
+ shift
+
+ while [ "${#}" -ge 1 ]
+ do
+ P="${PATH}"
+
+ while [ "${P}" ]
+ do
+ D=${P%%:*}
+ P=${P#*:}
+
+ if [ "${D}" = "${P}" ]
+ then
+ P=
+ fi
+
+ if [ -z "${D}" ]
+ then
+ D=.
+ fi
+
+ if [ -x "${ROOT}${D}/${1}" ]
+ then
+ echo "${D}/${1}"
+ return 0
+ fi
+ done
+
+ shift
+ done
+
+ return 1
+}
+
+runcommandinroot ()
+{
+ C=$(findcommandinroot "${1}" "${2}")
+ ROOT="${1}"
+
+ shift
+ shift
+
+ [ -n "${C}" ] && chroot "${ROOT}" "${C}" "${@}"
+}
+
+root="${1}"
+package="${2}"
+
+version=$(runcommandinroot "${root}" dpkg-query -W --showformat='${Version}' "${package}" 2>/dev/null) || version=""
+
+if [ -z "${version}" ]
+then
+ echo >&2 "${0}: package '${package}' is not installed"
+ exit 0
+fi
+
+runcommandinroot "${root}" dpkg-reconfigure -fnoninteractive --no-reload "${package}"
+
+exit 0
--- /dev/null
+#!/bin/sh
+
+# live-snapshot - utility to manage Debian Live systems snapshots
+#
+# This program mount a device (fallback to /tmpfs under /mnt/snapshot
+# and save the /live/cow (or a different dir) filesystem in it for reusing
+# in another live-initramfs session. Look at manpage for more info.
+#
+# Copyright (C) 2006 Marco Amadori <marco.amadori@gmail.com>
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+#
+# On Debian systems, the complete text of the GNU General Public License
+# can be found in /usr/share/common-licenses/GPL-2 file.
+
+PROGRAM="$(basename $0)"
+VERSION=0.0.1
+
+# Source live conf
+if [ -e /etc/live.conf ]
+then
+ . /etc/live.conf
+else
+ USERNAME=$(cat /etc/passwd | grep "999" | cut -f1 -d ':')
+ HOSTNAME=$(hostname)
+fi
+
+export USERNAME USERFULLNAME HOSTNAME
+
+# Source helper functions
+helpers="/usr/share/initramfs-tools/scripts/live-helpers"
+
+if [ -e "${helpers}" ]
+then
+ . "${helpers}"
+else
+ echo "Error: I cannot found helper functions \"${helpers}\"."
+ exit 1
+fi
+
+# Define LSB log_* functions.
+# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
+. /lib/lsb/init-functions
+
+MOUNTP=""
+COW=""
+DEV=""
+DEST=""
+TYPE=""
+DESKTOP_LINK=""
+
+Header ()
+{
+ echo "${PROGRAM} - utility to do Debian Live snapshots"
+ echo
+ echo "Usage: ${PROGRAM} [-c|--cow DIRECTORY] [-d|--device DEVICE] [-o|--output FILE] [-t|--type TYPE]"
+ echo "Usage: ${PROGRAM} [-r|--resync-string STRING]"
+ echo "Usage: ${PROGRAM} [-h|--help]"
+ echo "Usage: ${PROGRAM} [-u|--usage]"
+ echo "Usage: ${PROGRAM} [-v|--version]"
+}
+
+Usage ()
+{
+ MESSAGE=${1}
+
+ Header
+
+ echo
+ echo "Try \"${PROGRAM} --help\" for more information."
+
+ if [ ! -z "${MESSAGE}" ]
+ then
+ echo -e "${MESSAGE}"
+ exit 1
+ else
+ exit 0
+ fi
+}
+
+Help ()
+{
+ Header
+
+ echo
+ echo "Options:"
+ echo " -c, --cow: specifies the copy on write directory (default: /live/cow)."
+ echo " -d, --device: specifies the output snapshot device (default: none)."
+ echo " -o, --output: specifies the output image file (default: ${type} dependent)."
+ echo " -r, --resync-string: internally used to resync previous made snapshots."
+ echo " -t, --type: specifies the snapshot type between \"squashfs\", \"ext2\", \"ext3\" or \"cpio\".gz archive (default: cpio)"
+ echo -e "\nLook at live-snapshot(1) man page for more information."
+
+ exit 0
+}
+
+Version ()
+{
+ echo "${PROGRAM}, version ${VERSION}"
+ echo
+ echo "Copyright (C) 2006 Marco Amadori <marco.amadori@gmail.com>"
+ echo
+ echo "This program is free software; you can redistribute it and/or modify"
+ echo "it under the terms of the GNU General Public License as published by"
+ echo "the Free Software Foundation; either version 2 of the License, or"
+ echo "(at your option) any later version."
+ echo
+ echo "This program is distributed in the hope that it will be useful,"
+ echo "but WITHOUT ANY WARRANTY; without even the implied warranty of"
+ echo "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the"
+ echo "GNU General Public License for more details."
+ echo
+ echo "You should have received a copy of the GNU General Public License"
+ echo "along with this program; if not, write to the Free Software"
+ echo "Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA"
+ echo
+ echo "On Debian systems, the complete text of the GNU General Public License"
+ echo "can be found in /usr/share/common-licenses/GPL-2 file."
+ echo
+ echo "Homepage: <http://debian-live.alioth.debian.org/>"
+
+ exit 0
+}
+
+Do_snapshot ()
+{
+ case "${TYPE}" in
+ squashfs)
+ echo "./tmp/exclude_list" > /tmp/exclude_list
+ ( cd "${COW}" && find . -name '*.wh.*' >> /tmp/exclude_list )
+ mksquashfs "${COW}" "${DEST}" -ef /tmp/exclude_list || exit 1
+ rm /tmp/exclude_list
+ ;;
+
+ cpio)
+ ( cd "${COW}" && find . -path '*.wh.*' -prune -o -print0 | cpio --quiet -o0 -H newc | gzip -9c > "${DEST}" ) || exit 1
+ ;;
+
+ ext2|ext3)
+ DU_DIM="$(du -ks ${COW} | cut -f1)"
+ REAL_DIM="$(expr ${DU_DIM} + ${DU_DIM} / 20)" # Just 5% more to be sure, need something more sophistcated here...
+ genext2fs --size-in-blocks=${REAL_DIM} --reserved-blocks=0 --root="${COW}" "${DEST}" || exit 1
+ ;;
+
+ *)
+ echo "Internal error."
+ exit 1
+ ;;
+ esac
+}
+
+Is_same_mount ()
+{
+ dir1="$(Base_path ${1})"
+ dir2="$(Base_path ${2})"
+
+ if [ "${dir1}" = "${dir2}" ]
+ then
+ return 0
+ else
+ return 1
+ fi
+}
+
+Parse_args ()
+{
+ # Parse command line
+ ARGS="${1}"
+ ARGUMENTS="$(getopt --longoptions cow:,device:,output,resync-string:,type:,help,usage,version --name=${PROGRAM} --options c:d:o:t:r:,h,u,v --shell sh -- ${ARGS})"
+
+ if [ "${?}" != "0" ]
+ then
+ echo "Terminating." >&2
+ exit 1
+ fi
+
+ eval set -- "${ARGUMENTS}"
+
+ while true
+ do
+ case "${1}" in
+ -c|--cow)
+ SNAP_COW="${2}"
+ shift 2
+ ;;
+
+ -d|--device)
+ SNAP_DEV="${2}"
+ shift 2
+ ;;
+
+ -o|--output)
+ SNAP_OUTPUT="${2}"
+ shift 2
+ ;;
+
+ -t|--type)
+ SNAP_TYPE="${2}"
+ shift 2
+ ;;
+
+ -r|--resync-string)
+ SNAP_RSTRING="${2}"
+ break
+ ;;
+
+ -h|--help)
+ Help
+ ;;
+
+ -u|--usage)
+ Usage
+ ;;
+
+ -v|--version)
+ Version
+ ;;
+
+ --)
+ shift
+ break
+ ;;
+
+ *)
+ echo "Internal error."; exit 1 ;;
+
+ esac
+ done
+}
+
+Mount_device ()
+{
+ dev="${1}"
+
+ if [ ! -d "${MOUNTP}" ]
+ then
+ mkdir -p "${MOUNTP}"
+ fi
+
+ if [ -z "${dev}" ]
+ then
+ # create a temp
+ mount -t tmpfs -o rw tmpfs "${MOUNTP}"
+
+ if [ ! -L /home/${USERNAME}/Desktop/live-snapshot ]
+ then
+ ln -s "${MOUNTP}" /home/${USERNAME}/Desktop/live-snapshot
+ fi
+ else
+ if [ -b "${dev}" ]
+ then
+ try_mount "${dev}" "${MOUNTP}" rw
+ fi
+ fi
+}
+
+Defaults ()
+{
+ MOUNTP="/mnt/live-snapshot"
+ COW="/live/cow"
+ DEV=""
+ DEST="${MOUNTP}/live-sn.cpio.gz"
+ TYPE="cpio"
+ DESKTOP_LINK=/home/${USERNAME}/Desktop/live-snapshot
+
+ if [ -n "${SNAP_RSTRING}" ]
+ then
+ COW=$(echo "${SNAP_RSTRING}" | cut -f1 -d ':')
+ DEV=$(echo "${SNAP_RSTRING}" | cut -f2 -d ':')
+ DEST=$(echo "${SNAP_RSTRING}" | cut -f3 -d ':')
+
+ case "${DEST}" in
+ *.cpio.gz)
+ TYPE="cpio"
+ ;;
+
+ *.squashfs)
+ TYPE="squashfs"
+ ;;
+
+ ""|*.ext2|*.ext3)
+ TYPE="ext2"
+ ;;
+
+ *)
+ Usage "Unregognized String"
+ ;;
+ esac
+ else
+ DEF_COW="/live/cow"
+
+ # Bad options handling
+ if [ -z "${SNAP_COW}" ]
+ then
+ COW="${DEF_COW}"
+ else
+ COW="${SNAP_COW}"
+ fi
+
+ case "${SNAP_TYPE}" in
+ "cpio"|"squashfs"|"ext2"|"ext3")
+ TYPE="${SNAP_TYPE}"
+ ;;
+
+ "")
+ TYPE="cpio"
+ ;;
+
+ *)
+ Usage "Error: unrecognized snapshot type"
+ ;;
+ esac
+
+ #if [ -d
+ #if Is_same_mount
+ fi
+
+ # check vars
+ if [ ! -d "${COW}" ]
+ then
+ Usage "Error: ${COW} is not a directory"
+ fi
+
+ Mount_device ${DEV}
+}
+
+Clean ()
+{
+ if [ -n "${DEV}" ]
+ then
+ umount "${MOUNTP}"
+ rmdir "${MOUNTP}"
+ #rm
+ fi
+}
+
+Main ()
+{
+ Parse_args "${@}"
+ Defaults
+ Do_snapshot
+ Clean
+}
+
+Main "${@}"
--- /dev/null
+# /etc/live.conf - configuration file for live-initramfs(7)
+
+USERNAME="user"
+USERFULLNAME="Debian Live user"
+HOSTNAME="debian"
+
+export USERNAME USERFULLNAME HOSTNAME
--- /dev/null
+live-initramfs (1.110.4-2) unstable; urgency=low
+
+ * Include patches for grml.
+
+ -- Michael Prokop <mika@grml.org> Thu, 01 Nov 2007 23:14:34 +0100
+
+live-initramfs (1.110.4-1) unstable; urgency=medium
+
+ [ Daniel Baumann ]
+ * New upstream release.
+ * Preparing live-initramfs 1.110.3-1.
+ * Correcting homepage field.
+ * Correcting vcs fields.
+
+ [ Jesse Hathaway ]
+ * add support for mounting the cow device on an nfs volume
+
+ -- Daniel Baumann <daniel@debian> Mon, 29 Oct 2007 00:00:00 +0100
+
+live-initramfs (1.110.3-1) unstable; urgency=medium
+
+ [ Daniel Baumann ]
+ * New upstream release.
+ * Preparing live-initramfs 1.110.3-1.
+ * Removing ubuntu support.
+
+ [ Alex Owen ]
+ * Fix typo to get serial console to work
+
+ [ Jesse Hathaway ]
+ * add support for exposedroot option for live-helper
+
+ -- Daniel Baumann <daniel@debian> Mon, 22 Oct 2007 00:00:00 +0200
+
+live-initramfs (1.110.2-1) unstable; urgency=medium
+
+ * New upstream release.
+ * Preparing live-initramfs 1.110.2-1.
+ * Fixing typing error.
+ * Removing nodiratime as it is already included in noatime, thanks to Kel
+ Modderman <kel@otaku42.de>.
+
+ -- Daniel Baumann <daniel@debian> Mon, 15 Oct 2007 00:00:00 +0200
+
+live-initramfs (1.110.1-1) unstable; urgency=medium
+
+ * New upstream release.
+ * Preparing live-initramfs 1.107.2-1.
+ * Also using nodiratime, not just noatime.
+ * Merging casper 1.108.
+ * Adjusting to live-initramfs.
+ * Merging casper 1.109.
+ * Adjusting to live-initramfs.
+ * Merging casper 1.110.
+ * Adjusting to live-initramfs.
+ * Bumping version to 1.110.1-1.
+
+ -- Daniel Baumann <daniel@debian> Mon, 8 Oct 2007 00:00:00 +0200
+
+live-initramfs (1.107.1-1) unstable; urgency=medium
+
+ * New upstream release.
+ * Preparing live-initramfs 1.102.4-2.
+ * Replacing backticks with POSIX expression.
+ * Consistently using curly brackets for variables.
+ * Fixing bashism.
+ * Merging casper 1.105.
+ * Adjusting to live-initramfs.
+ * Bumping version to 1.105.1-1.
+ * Applied patch from Jesse W. Hathaway <jesse@mbuki-mvuki.org> to move
+ cow mount rather than binding it on /live/cow. This prevents the
+ /cow mount showing up in /proc/mounts.
+ * Merging casper 1.106.
+ * Adjusting to live-initramfs.
+ * Bumping version to 1.106.1-1.
+ * Fixing wrong homepage field.
+ * Fixing typing error.
+ * Merging casper 1.107.
+ * Bumping version to 1.107.1-1.
+
+ -- Daniel Baumann <daniel@debian> Mon, 1 Oct 2007 00:00:00 +0200
+
+live-initramfs (1.104.1-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 24 Sep 2007 00:00:00 +0200
+
+live-initramfs (1.102.1-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 17 Sep 2007 00:00:00 +0200
+
+live-initramfs (1.99.2-1) unstable; urgency=medium
+
+ * New upstream release:
+ - Contains patch from Jim Paris <jim@jtan.com> to fix wrong ipconfig usage
+ (Closes: #440235).
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 10 Sep 2007 00:00:00 +0200
+
+live-initramfs (1.99.1-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 3 Sep 2007 00:00:00 +0200
+
+live-initramfs (1.96.2-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 27 Aug 2007 00:00:00 +0200
+
+live-initramfs (1.96.1-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 20 Aug 2007 00:00:00 +0200
+
+live-initramfs (1.95.3-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 13 Aug 2007 00:00:00 +0200
+
+live-initramfs (1.95.2-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 6 Aug 2007 00:00:00 +0200
+
+live-initramfs (1.95.1-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 30 Jul 2007 00:00:00 +0200
+
+live-initramfs (1.91.6-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 23 Jul 2007 00:00:00 +0200
+
+live-initramfs (1.91.5-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 16 Jul 2007 00:00:00 +0200
+
+live-initramfs (1.91.4-1) unstable; urgency=medium
+
+ * New upstream release:
+ - Dropping transitional package, not needed anymore.
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 9 Jul 2007 00:00:00 +0200
+
+live-initramfs (1.91.3-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 2 Jul 2007 00:00:00 +0200
+
+live-initramfs (1.91.2-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 25 Jun 2007 00:00:00 +0200
+
+live-initramfs (1.91.1-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 18 Jun 2007 00:00:00 +0200
+
+live-initramfs (1.90.1-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 11 Jun 2007 00:00:00 +0200
+
+live-initramfs (1.87.6-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 4 Jun 2007 00:00:00 +0200
+
+live-initramfs (1.87.5-1) unstable; urgency=medium
+
+ * New upstream release, replacing casper.
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 28 May 2007 00:00:00 +0200
+
+live-initramfs (1.87.4-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 21 May 2007 00:00:00 +0200
+
+live-initramfs (1.87.3-1) unstable; urgency=medium
+
+ * New upstream release.
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 14 May 2007 00:00:00 +0200
+
+live-initramfs (1.87.2-1) unstable; urgency=low
+
+ * New upstream release.
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 7 May 2007 00:00:00 +0200
+
+live-initramfs (1.87.1-1) unstable; urgency=low
+
+ * Initial release, forking casper.
+
+ -- Daniel Baumann <daniel@debian.org> Mon, 30 Apr 2007 00:00:00 +0200
--- /dev/null
+Source: live-initramfs
+Section: misc
+Priority: optional
+Maintainer: Debian Live <debian-live-maint@lists.alioth.debian.org>
+Uploaders: Daniel Baumann <daniel@debian.org>
+Build-Depends: debhelper (>= 5), asciidoc, docbook-xsl, xsltproc
+Standards-Version: 3.7.2
+Homepage: http://debian-live.alioth.debian.org/
+Vcs-Git: git://git.debian.org/git/users/daniel/live-initramfs.git
+Vcs-Browser: http://git.debian.org/?p=users/daniel/live-initramfs.git
+XS-Upstream-Depends: git-core
+
+Package: live-initramfs
+Architecture: all
+Depends: ${misc:Depends}, busybox, file, initramfs-tools, sudo, user-setup
+Recommends: eject, wget, live-initscripts
+Suggests: genext2fs, squashfs-tools
+Description: Debian Live initramfs hook
+ live-initramfs is a hook for the initramfs-tools, used to generate a initramfs
+ capable to boot live systems, such as those created by live-helper. This
+ includes the Debian Live isos, netboot tarballs, and usb stick images.
+ .
+ At boot time it will look for a (read-only) media containing a "/live"
+ directory where a root filesystems (often a compressed filesystem image like
+ squashfs) is stored. If found, it will create a writable environment, using
+ unionfs, for Debian like systems to boot from.
+ .
+ You probably do not want to install this package onto a non-live system,
+ although it will do no harm.
+ .
+ live-initramfs is a fork of casper <http://packages.ubuntu.com/casper/>.
--- /dev/null
+This package was debianized by Daniel Baumann <daniel@debian.org> on
+Mon, 30 Apr 2007 00:00:00 +0200.
+
+It was downloaded from:
+
+ <http://debian-live.alioth.debian.org/>
+
+Upstream contact:
+
+ Debian Live <debian-live-devel@lists.alioth.debian.org>
+
+License:
+
+ live-initramfs is a fork of casper <http://packages.ubuntu.com/casper/>.
+ casper was originally written by Tollef Fog Heen <tfheen@canonical.com>
+ and Matt Zimmerman <mdz@canonical.com>.
+
+ Copyright (C) 2005-2007 Canonical Ltd. <http://www.cannonical.com/>
+ Copyright (C) 2006-2007 Marco Amadori <marco.amadori@gmail.com>
+ Copyright (C) 2007 Daniel Baumann <daniel@debian.org>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
+On Debian systems, the complete text of the GNU General Public License
+can be found in /usr/share/common-licenses/GPL-2 file.
+
+The Debian packaging is (C) 2007, Daniel Baumann <daniel@debian.org> and
+is licensed under the GPL, see `/usr/share/common-licenses/GPL-2'.
--- /dev/null
+#!/bin/sh
+
+### BEGIN INIT INFO
+# Provides: live-initramfs
+# Required-Start: $syslog
+# Required-Stop: $syslog
+# Should-Start: $local_fs
+# Should-Stop: $local_fs
+# Default-Start: 1 2 3 4 5
+# Default-Stop: 0 6
+# Short-Description: live-initramfs init script
+# Description: Resyncs snapshots, evantually caches files in order to
+# let remove the media.
+### END INIT INFO
+
+# Authors: Tollef Fog Heen <tfheen@canonical.com>
+# Marco Amadori <marco.amadori@gmail.com>
+
+PATH=/usr/sbin:/usr/bin:/sbin:/bin
+NAME=live-initramfs
+SCRIPTNAME=/etc/init.d/${NAME}
+DO_SNAPSHOT=/sbin/live-snapshot
+
+# Exit if system was not booted by live-initramfs
+grep -qs boot=live /proc/cmdline || exit 0
+
+# Read configuration variable file if it is present
+[ -r /etc/live.conf ] && . /etc/live.conf
+
+# Load the VERBOSE setting and other rcS variables
+[ -f /etc/default/rcS ] && . /etc/default/rcS
+
+# Define LSB log_* functions.
+# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
+. /lib/lsb/init-functions
+
+# Try to cache everything we're likely to need after ejecting. This
+# is fragile and simple-minded, but our options are limited.
+cache_path() {
+ path="${1}"
+
+ if [ -d "${path}" ]; then
+ find "${path}" -type f | xargs cat > /dev/null 2>&1
+ elif [ -f "${path}" ]; then
+ if [ -x "${path}" ]; then
+ if file "${path}" | grep -q 'dynamically linked'; then
+ for lib in $(ldd "${path}" | awk '{ print $3 }'); do
+ cache_path "${lib}"
+ done
+ fi
+ fi
+ cat "${path}" >/dev/null 2>&1
+ fi
+}
+
+do_stop ()
+{
+ if [ ! -z "${ROOTSNAP}" ]; then
+ ${DO_SNAPSHOT} --resync-string="${ROOTSNAP}"
+ fi
+
+ if [ ! -z "${HOMESNAP}" ]; then
+ ${DO_SNAPSHOT} --resync-string="${HOMESNAP}"
+ fi
+
+ # check for netboot
+ if [ ! -z "${NETBOOT}" ] || grep -qs netboot /proc/cmdline || grep -qsi root=/dev/nfs /proc/cmdline || grep -qsi root=/dev/cifs /proc/cmdline ; then
+ return 0
+ fi
+
+ prompt=1
+ if grep -qs noprompt /proc/cmdline; then
+ prompt=
+ fi
+
+ for path in $(which halt) $(which reboot) /etc/rc?.d /etc/default $(which stty); do
+ cache_path "${path}"
+ done
+
+ for x in $(cat /proc/cmdline); do
+ case ${x} in
+ quickreboot)
+ QUICKREBOOT="Yes"
+ ;;
+ esac
+ done
+
+ if [ -z ${QUICKREBOOT} ]; then
+ if [ -x /usr/bin/eject ]
+ then
+ eject -p -m /live/image >/dev/null 2>&1
+
+ [ "$prompt" ] || return 0
+ fi
+
+ stty sane < /dev/console
+
+ # XXX - i18n
+ echo "Please remove the disc and close the tray (if any) then press ENTER: " > /dev/console
+ if [ -x /sbin/usplash_write ]; then
+ /sbin/usplash_write "TIMEOUT 86400"
+ /sbin/usplash_write "TEXT-URGENT Please remove the disc, close the tray (if any)"
+ /sbin/usplash_write "TEXT-URGENT and press ENTER to continue"
+ fi
+
+ read x < /dev/console
+ fi
+}
+
+case "${1}" in
+ start|restart|reload|force-reload|status)
+ [ "${VERBOSE}" != no ] && log_end_msg 0
+ ;;
+ stop)
+ log_begin_msg "${NAME} is resyncing snapshots and caching reboot files..."
+ do_stop
+ case "${?}" in
+ 0|1) [ "${VERBOSE}" != no ] && log_end_msg 0 ;;
+ 2) [ "${VERBOSE}" != no ] && log_end_msg 1 ;;
+ esac
+ ;;
+ *)
+ log_success_msg "Usage: ${SCRIPTNAME} {start|stop|restart|force-reload}" >&2
+ exit 3
+ ;;
+esac
--- /dev/null
+#!/bin/sh
+
+if [ -x /usr/sbin/update-initramfs ]
+then
+ update-initramfs -k all -u
+fi
+
+#DEBHELPER#
--- /dev/null
+#!/bin/sh
+
+if [ -x /usr/sbin/update-initramfs ]
+then
+ update-initramfs -k all -u
+fi
+
+#DEBHELPER#
--- /dev/null
+#!/usr/bin/make -f
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+upstream:
+ cd .. && git clone git://git.debian.org/git/users/daniel/live-initramfs.git || true
+ rm -rf ../live-initramfs/.git
+
+build: build-stamp
+build-stamp:
+ dh_testdir
+
+ # Building package
+ $(MAKE) -C manpages
+
+ touch build-stamp
+
+clean:
+ dh_testdir
+ dh_testroot
+ rm -f build-stamp
+
+ # Cleaning package
+ $(MAKE) -C manpages clean
+
+ dh_clean
+
+install: build
+ dh_testdir
+ dh_testroot
+ dh_clean -k
+ dh_installdirs
+
+ # Installing package
+ $(MAKE) install DESTDIR=$(CURDIR)/debian/live-initramfs
+
+ # Removing double files
+ rm -f debian/live-initramfs/usr/share/doc/live-initramfs/COPYING
+ rm -f debian/live-initramfs/usr/share/doc/live-initramfs/ChangeLog
+ mv debian/live-initramfs/usr/share/doc/live-initramfs/ChangeLog.casper debian/live-initramfs/usr/share/doc/live-initramfs/changelog.casper
+
+binary-arch: build install
+
+binary-indep: build install
+ dh_testdir
+ dh_testroot
+ dh_installchangelogs docs/ChangeLog
+ dh_installdocs
+ dh_install
+ dh_installinit --no-restart-on-upgrade --no-start -- start 89 0 6 .
+ dh_compress
+ dh_fixperms
+ dh_installdeb
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install
--- /dev/null
+Main Authors:
+
+ * Daniel Baumann <daniel@debian.org>
+
+Original Authors:
+
+ live-initramfs is a fork of casper <http://packages.ubuntu.com/casper/>.
+ casper was originally written by Tollef Fog Heen <tfheen@canonical.com>
+ and Matt Zimmerman <mdz@canonical.com>.
+
+ See the casper changelog for casper contributors.
--- /dev/null
+Patches (alphabetical order):
+
+ * Alexandre Garcia <ascii_77@yahoo.fr>
+ * Alex Owen <r.a.owen@qmul.ac.uk>
+ * Arnaud Cornet <arnaud.cornet@gmail.com>
+ * Bas Wijnen <wijnen@debian.org>
+ * Ben Armstrong <synrg@debian.org>
+ * Davide Natalini <davide.natalini@studio.unibo.it>
+ * Frederic Lehobey <Frederic.Lehobey@free.fr>
+ * Hadar Weiss <whadar@gmail.com>
+ * Jason D. Clinton <me@jasonclinton.com>
+ * Jonathan Hall <flimzy@flimzy.com>
+ * Kai Hendry <hendry@iki.fi>
+ * Malcom Gilles <live@ouabain.org>
+ * Marco Amadori <marco.amadori@gmail.com>
+ * Mathieu Geli <mathieu.geli@gmail.com>
+ * Oliver Osburg <o.osburg@uni-jena.de>
+ * Otavio Salvador <otavio@debian.org>
+ * Sebastian Raveau <sebastien.raveau@epita.fr>
+ * Thomas Lange <lange@informatik.uni-koeln.de>
--- /dev/null
+commit 96aa9285ee39f4d3d4245acd8c78accdf73c1fa8
+Author: Daniel Baumann <daniel@debian.org>
+
+ Bumping version to 1.104.1-1.
+
+ Makefile | 2 +-
+ debian/changelog | 2 +-
+ docs/parameters.txt | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+commit 1a226e19e03be8ff90aaa50a7b5b9f202f65b8a4
+Author: Daniel Baumann <daniel@debian.org>
+
+ Merging casper 1.104.
+
+ docs/ChangeLog.casper | 7 +++++++
+ 1 files changed, 7 insertions(+), 0 deletions(-)
+
+commit bb97432f7c5eeb330d108be6607edfe0de85bfa7
+Author: Daniel Baumann <daniel@debian.org>
+
+ Bumping version to 1.103.1-1.
+
+ Makefile | 2 +-
+ debian/changelog | 2 +-
+ docs/parameters.txt | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+commit 29c11f22032ccdb71aaccd5f6eb4a9be3efa5741
+Author: Daniel Baumann <daniel@debian.org>
+
+ Merging casper 1.103.
+
+ docs/ChangeLog.casper | 8 ++++++++
+ scripts/live-bottom/23networking | 24 +++++++++++++++---------
+ scripts/live-bottom/25configure_init | 8 +++-----
+ 3 files changed, 26 insertions(+), 14 deletions(-)
+
+commit 66a175b6255aa061dc78fbd301c9844489c42fc8
+Author: Daniel Baumann <daniel@debian.org>
+
+ Preparing live-initramfs 1.102.2-1.
+
+ Makefile | 10 +++++-----
+ debian/changelog | 6 ++++++
+ docs/parameters.txt | 2 +-
+ 3 files changed, 12 insertions(+), 6 deletions(-)
+
+commit 0b8cf3f17ed46e96fb5efd658c8e308ba1a2dd1a
+Author: Daniel Baumann <daniel@debian.org>
+
+ Releasing live-initramfs 1.102.1-1.
+
+ debian/changelog | 2 +-
+ docs/ChangeLog | 195 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 196 insertions(+), 1 deletions(-)
+
+commit b782261bbdf33ff5c69780cc4c788c339d707f9b
+Author: Daniel Baumann <daniel@debian.org>
+
+ Sorting Depends.
+
+ debian/control | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+commit 17b3b36ef3c1fa5cbe5b11c9690a2b0a403db693
+Author: Daniel Baumann <daniel@debian.org>
+
+ Applied patch from Michael Prokop <mika@grml.org> to depend on busybox.
+
+ debian/control | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+commit 27cc7504bc8310e2836014d64576be7d9c974be2
+Author: Daniel Baumann <daniel@debian.org>
+
+ Bumping version to 1.102.1-1.
+
+ Makefile | 2 +-
+ debian/changelog | 2 +-
+ docs/parameters.txt | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+commit 9e5b3c1cbeb80a472ba4387ef7e59b5e6bce913b
+Author: Daniel Baumann <daniel@debian.org>
+
+ Merging casper 1.102.
+
+ docs/ChangeLog.casper | 10 ++++++
+ scripts/live-bottom/42disable_apparmor | 36 ++++++++++++++++++++++
+ scripts/live-bottom/42disable_cups_apparmor | 43 ---------------------------
+ 3 files changed, 46 insertions(+), 43 deletions(-)
+
+commit 7b5c1e3232d0e02e712a4f984cd1e5009c9e4e9c
+Author: Daniel Baumann <daniel@debian.org>
+
+ Adding noapparmor boot parameter.
+
+ scripts/live | 5 +++++
+ scripts/live-bottom/42disable_cups_apparmor | 5 +++++
+ 2 files changed, 10 insertions(+), 0 deletions(-)
+
+commit ea5fee194ea66ab0f41a0a973034db201651e09a
+Author: Daniel Baumann <daniel@debian.org>
+
+ Bumping version to 1.101.1-1.
+
+ Makefile | 2 +-
+ debian/changelog | 2 +-
+ docs/parameters.txt | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+commit b525502a2fdf073f4e326c1ca4dd8c89258ef65d
+Author: Daniel Baumann <daniel@debian.org>
+
+ Adjusting to live-initramfs.
+
+ scripts/live-bottom/42disable_cups_apparmor | 37 ++++++++++++++++----------
+ 1 files changed, 23 insertions(+), 14 deletions(-)
+
+commit 9b2894eaf50ce542d03329a0b49bf8df7d633371
+Author: Daniel Baumann <daniel@debian.org>
+
+ Merging casper 1.101.
+
+ docs/ChangeLog.casper | 9 ++++++++
+ scripts/live-bottom/42disable_cups_apparmor | 29 +++++++++++++++++++++++++++
+ 2 files changed, 38 insertions(+), 0 deletions(-)
+
+commit f1e9fafee6e04a269a506edd31c62abd6917ecee
+Author: Daniel Baumann <daniel@debian.org>
+
+ Merging casper 1.100.
+
+ docs/ChangeLog.casper | 8 ++++++++
+ scripts/live-bottom/41apt_cdrom | 3 ---
+ 2 files changed, 8 insertions(+), 3 deletions(-)
+
+commit 2df075f459f0a232a084ca6ad037d89764727d5f
+Author: Daniel Baumann <daniel@debian.org>
+
+ Using new Homepage field now.
+
+ debian/control | 3 +--
+ 1 files changed, 1 insertions(+), 2 deletions(-)
+
+commit d29346c7b4c7a67fed080ea46be15421dec12fe7
+Author: Daniel Baumann <daniel@debian.org>
+
+ Applied patch from Frederic Boiteux <fboiteux@calistel.com> about NFSROOT=auto, <http://lists.alioth.debian.org/pipermail/debian-live-devel/2007-September/002173.html>.
+
+ scripts/live | 10 +++++-----
+ 1 files changed, 5 insertions(+), 5 deletions(-)
+
+commit 4f4c8e22af7a539cfa8bc9ba371c6a57b8e7cb0c
+Author: Daniel Baumann <daniel@debian.org>
+
+ Applied patch from Michael Prokop <mika@grml.org> to migrate live-snapshot.en.1 and live-snapshot.it.1 to asciidoc as well.
+
+ manpages/Makefile | 17 ++++--
+ manpages/live-snapshot.en.1 | 71 --------------------------
+ manpages/live-snapshot.en.1.txt | 100 ++++++++++++++++++++++++++++++++++++
+ manpages/live-snapshot.it.1 | 70 -------------------------
+ manpages/live-snapshot.it.1.txt | 107 +++++++++++++++++++++++++++++++++++++++
+ 5 files changed, 219 insertions(+), 146 deletions(-)
+
+commit 3226d2bfd4e2463c9aa7a691f7e9ea132e258af6
+Author: Daniel Baumann <daniel@debian.org>
+
+ Adding Marco Amadori <marco.amadori@gmail.com>.
+
+ docs/CREDITS | 1 +
+ 1 files changed, 1 insertions(+), 0 deletions(-)
+
+commit 757b214139daa0f7f312434ed0f77961ea380c4e
+Author: Daniel Baumann <daniel@debian.org>
+
+ Sorting Build-Depends.
+
+ debian/control | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+commit 8d6e39ce90ed0be835514a15fbf3a007a2b9f3fa
+Author: Daniel Baumann <daniel@debian.org>
+
+ Simplifying make calls.
+
+ debian/rules | 4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+commit bef37dff239b6c28fef89679537bea8643628fe1
+Author: Daniel Baumann <daniel@debian.org>
+
+ Applied patch from Michael Prokop <mika@grml.org> to remove deprecated manpages/live-initramfs.en.7 (switched to asiidoc).
+
+ manpages/live-initramfs.en.7 | 127 ------------------------------------------
+ 1 files changed, 0 insertions(+), 127 deletions(-)
+
+commit 6a86b38986ab23d5cda24b38dca27c4a659bdfbd
+Author: Daniel Baumann <daniel@debian.org>
+
+ Applied patch from Michael Prokop <mika@grml.org> to update debian/control and debian/rules for use of asciidoc.
+
+ debian/control | 2 +-
+ debian/rules | 2 ++
+ 2 files changed, 3 insertions(+), 1 deletions(-)
+
+commit 6685b97a4041477b2ccbfc9683e35c022cbe9ce7
+Author: Daniel Baumann <daniel@debian.org>
+
+ Applied patch from Michael Prokop <mika@grml.org> to switch to asciidoc for documentation.
+
+ manpages/Makefile | 21 +++
+ manpages/live-initramfs.en.7.txt | 304 ++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 325 insertions(+), 0 deletions(-)
+
+commit 3b545dfb73b7ce99c3fd6e107d6843891f005ab1
+Author: Daniel Baumann <daniel@debian.org>
+
+ Fixing typing error.
+
+ debian/control | 4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+commit ab933503a8204649724c525facbc14f734f1cd4e
+Author: Daniel Baumann <daniel@debian.org>
+
+ Preparing live-initramfs 1.99.3-1.
+
+ Makefile | 8 ++++----
+ debian/changelog | 6 ++++++
+ docs/parameters.txt | 2 +-
+ manpages/live-initramfs.en.7 | 2 +-
+ manpages/live-snapshot.en.1 | 2 +-
+ 5 files changed, 13 insertions(+), 7 deletions(-)
+
+2007-09-09 Daniel Baumann <daniel@debian.org>
+
+ * Using common indenting.
+ * scripts/live:
+ - Applied patch from Jim Paris <jim@jtan.com> to fix wrong usage of
+ ipconfig (Closes: #440235).
+ * Uploaded 1.99.2-1.
+
+2007-09-09 Michael Prokop <mika@grml.org>
+
+ * scripts/live:
+ - Extending toram parameter to specify module.
+ - Adding forgotten nofstab boot parameter.
+ * scripts/live-bottom/40install_driver_updates:
+ - Adding check driver updates.
+ * scripts/live-bottom/25configure_init:
+ - Adding check for file-rc.
+ * scripts/live-bottom/21xvidemode:
+ - Sorting variable checks always before logging.
+ * scripts/live, live-bottom/*:
+ - Adding boot parameters to disable each service.
+ * scripts/live, live-bottom/22gnome_panel_date:
+ - Adding nognomefstab boot parameter.
+ * scripts/live-bottom/38disable_restricted_manager:
+ - Removing leftover reference to casper-functions.
+
+2007-09-05 Daniel Baumann <daniel@debian.org>
+
+ * scripts/live, scripts/live-bottom:
+ - Added nouser parameter to disable user creation.
+ - Added noxautoconfig parameter to disable xorg re-configuration.
+ - Added nohosts parameter to disable /etc/hosts creation.
+ * scripts/live-bottom/15autologin:
+ - Moved disabling of kpersonalizer to 34disable_kpersonalizer.
+
+2007-09-01 Daniel Baumann <daniel@debian.org>
+
+ * Merging changes from casper 1.97, 1.98 and 1.99.
+ * Uploaded 1.99.1-1.
+
+2007-08-29 Daniel Baumann <daniel@debian.org>
+
+ * scripts/live-bottom/12fstab:
+ - By default, we do not have fstab, so it is save to just append the
+ unionfs mount rather than overwritting it.
+ * hooks/live:
+ - Including wget if available.
+ * Uploaded 1.96.2-1.
+
+2007-08-21 Daniel Baumann <daniel@debian.org>
+
+ * Merging changes from casper 1.96.
+ * Uploaded 1.96.1-1.
+
+2007-08-21 Daniel Baumann <daniel@debian.org>
+
+ * scripts/live:
+ - Applied patch from Jesse W. Hathaway <jesse@mbuki-mvuki.org> to
+ not use nfsro with kernels larger than 2.6.22 (where unionfs 2.x
+ is supposed to be available soon).
+ * Uploaded 1.95.3-1.
+
+2007-08-11 Daniel Baumann <daniel@debian.org>
+
+ * Uploaded 1.95.2-1.
+
+2007-08-01 Daniel Baumann <daniel@debian.org>
+
+ * scripts/live-bottom/10adduser:
+ - Setting debconf preseeding for passwd/make-user manually to true,
+ overriding any users preseeding on that, so that the user account
+ gets created for sure.
+
+2007-07-29 Daniel Baumann <daniel@debian.org>
+
+ * Merging changes from casper 1.95.
+ * Uploaded 1.95.1-1.
+
+2007-07-26 Daniel Baumann <daniel@debian.org>
+
+ * Merging changes from casper 1.92, 1.93 and 1.94.
+
+2007-07-26 Daniel Baumann <daniel@debian.org>
+
+ * bin/live-md5check:
+ - Removed, using standard md5sum which makes the md5 check slower,
+ doesn't integrate well with usplash yet, but it makes live-initramfs
+ architecture independent now.
+ * scripts/live:
+ - Fixed typo.
+ - Added live-media-path as suggested by Jordi Pujol
+ <jordi_pujol@telefonica.net>.
+ * Uploaded 1.91.6-1.
+
+2007-07-19 Daniel Baumann <daniel@debian.org>
+
+ * scripts/live, scripts/live-bottom/02_timezone:
+ - Added utc boot parameter as suggested by Vladimir Stavrinov
+ <vs@inist.ru>
+
+2007-07-18 Daniel Baumann <daniel@debian.org>
+
+ * docs/parameters.txt:
+ - Added values for vga parameter.
+ * scripts/live:
+ - Added patch from Thomas Lange <lange@informatik.uni-koeln.de> to
+ respect rootserver name from dhcp.
+ * Uploaded 1.91.5-1.
+
+2007-07-12 Daniel Baumann <daniel@debian.org>
+
+ * bin/live-snapshot, scripts/live:
+ - Moved /cow to /live/cow.
+ * scripts/live, scripts/live-bottom/01integrity_check, 05mountpoints:
+ - Moved /live_media to /live/image.
+ * Uploaded 1.91.4-1.
+
+2007-07-07 Daniel Baumann <daniel@debian.org>
+
+ * scripts/live:
+ - Added debug parameter.
+
+2007-06-31 Daniel Baumann <daniel@debian.org>
+
+ * scripts/live:
+ - Added patch from Julian Andres Klode <jak@jak-linux.org> to add
+ support for aufs.
+ * hooks/live, manpage/live-initramfs.en.7, scripts/live-bottom/12fstab:
+ - Added aufs support.
+ * Uploaded 1.91.3-1.
+
+2007-06-30 Daniel Baumann <daniel@debian.org>
+
+ * scripts/live-bottom/12fstab:
+ - Added disabling of /etc/init.d/checkfs.sh to avoid file systemcheck
+ at boot time. Added nofastboot parameter to be able to change that.
+ - Disabled removal of checkroot.sh.
+
+2007-06-28 Daniel Baumann <daniel@debian.org>
+
+ * Applied patch from Mathieu Geli <mathieu.geli@gmail.com> to set the
+ timezone with a boot parameter.
+
+2007-06-25 Daniel Baumann <daniel@debian.org>
+
+ * scripts/live:
+ - Added missing nfsopts boot parameter.
+ - Changed default module name from 'order' to 'filesystem'.
+ - Changed module extension from '.lst' to '.module'.
+ - Check not just for $MODULE.module, but also
+ filesystem.$MODULE.module
+ - Cleaned up parse_cmdline and is_live_path functions.
+ * debian/control, debian/live-initramfs.init,
+ scripts/live-premount/10driver_updates:
+ - Moving eject to recommends.
+ - Added checks for eject existence.
+ * Uploaded 1.91.2-1.
+
+2007-06-17 Daniel Baumann <daniel@debian.org>
+
+ * debian/live-initramfs.postinst:
+ - Made update-initramfs call conditional as suggested by Thomas Lange
+ <lange@informatik.uni-koeln.de>.
+ * debian/live-initramfs.postrm:
+ - Added update-initramfs call to cleanup.
+
+2007-06-17 Daniel Baumann <daniel@debiann.org>
+
+ * Added patch from Thomas Lange <lange@informatik.uni-koeln.de> to
+ properly load ide-generic after udev.
+ * Uploaded 1.91.1-1.
+
+2007-06-15 Daniel Baumann <daniel@debian.org>
+
+ * Merging changes from casper 1.91.
+
+2007-06-14 Daniel Baumann <daniel@debian.org>
+
+ * scripts/live-bottom/18hostname:
+ - Appending to /etc/hosts to not overwrite custom settings.
+
+2007-06-08 Daniel Baumann <daniel@debian.org>
+
+ * Merging changes from casper 1.88.
+ * Merging changes from casper 1.90.
+ * hooks/live:
+ - Added force loading of ide-generic module. It is required on some
+ systems to boot (reported as needed also for some qemu versions).
+ * Uploaded 1.90.1-1.
+
+2007-06-04 Daniel Baumann <daniel@debian.org>
+
+ * Uploaded 1.87.6-1.
+
+2007-05-28 Daniel Baumann <daniel@debian.org>
+
+ * scripts/live-bottom/42apt_upgrade:
+ - Moved to dedicated live-initscripts package.
+
+2007-05-24 Daniel Baumann <daniel@debian.org>
+
+ * debian/control:
+ - Added casper transitional package.
+ - Removed usplash conflicts.
+ * scripts/live-bottom/42apt_upgrade:
+ - Added, idea taken from Kais webconverger.
+ * Uploaded 1.87.5-1.
+
+2007-05-23 Daniel Baumann <daniel@debian.org>
+
+ * scripts/*:
+ - Minor code cleanup.
+
+2007-05-18 Daniel Baumann <daniel@debian.org>
+
+ * scripts/live, scripts/live-bottom/05mountpoints:
+ - Replaced 'mount -o move' with 'mount --move'.
+ * scripts/live, scripts/live-bottom/10adduser:
+ - Added check for 'nosudo' bootparameter to disable automatic
+ sudo configuration.
+ * scripts/live, scripts/live-bottom/13swap:
+ - Renamed 'swapoff' parameter to 'noswap'.
+ * scripts/live, scripts/live-bottom/15autologin:
+ - Added check for 'noxautologin' bootparameter to disable automatic
+ gdm/kdm login.
+ * scripts/live, scripts/live-bottom/25configure_init:
+ - Added check for 'noautologin' bootparameter to disable automatic
+ terminal login.
+ * bin/live-snapshot, scripts/live, scripts/live-helpers:
+ - Also recognize ext3, but treat it like ext2.
+ * Uploaded 1.87.4-1.
+
+2007-05-12 Daniel Baumann <daniel@debian.org>
+
+ * scripts/live-bottom/*:
+ - Added generic header.
+
+2007-05-12 Daniel Baumann <daniel@debian.org>
+
+ * scripts/live:
+ - Renamed CASPERCONF to LIVECONF.
+ - Renamed CASPERGETTY to LIVE_GETTY.
+ - Renamed LIVEMEDIA_* to LIVE_MEDIA_*.
+ * Uploaded 1.87.3-1.
+
+2007-05-11 Daniel Baumann <daniel@debian.org>
+
+ * hooks/live:
+ - Reformated.
+ * scripts/live, scripts/live-bottom/13swap:
+ - Added check for swapoff bootparameter to disable usage of local swap
+ partitions.
+
+2007-05-09 Daniel Baumann <daniel@debian.org>
+
+ * manpages/*:
+ - Added language suffix.
+ - Partially rewritten and reformated.
+
+2007-05-08 Daniel Baumann <daniel@debian.org>
+
+ * Makefile, doc/AUTHORS, doc/CREDITS:
+ - Added.
+ * doc:
+ - Renamed to docs.
+
+2007-05-07 Daniel Baumann <daniel@debian.org>
+
+ * debian/control:
+ - Added suggests to genext2fs and squashfs-tools.
+ - Removed depends to dmsetup.
+ * scripts/live-bottom/10adduser:
+ - Added patch from Ben Armstrong <synrg@debian.org> to write
+ $HOME/.su-to-rootrc file.
+ * scripts/live, scripts/live-bottom/21xvideomode:
+ - Added patch from Mathieu Geli <mathieu.geli@gmail.com> to have the
+ ability to force X video mode from kernel append line.
+
+2007-05-06 Daniel Baumann <daniel@debian.org>
+
+ * Merging patches from casper 1.81+debian-4, see ChangeLog.casper.
+ * conf/live.conf:
+ - Renamed HOST to HOSTNAME.
+ * debian/init:
+ - Added quickreboot.
+ - Renamed /cdrom to /live_media.
+ * doc/ChangeLog.casper:
+ - Added missing debian uploads.
+ * manpages/live-initramfs.7:
+ - Updated.
+ * hooks/live:
+ - Reading live.conf earlier.
+ - Making some udev copies conditional for ubuntu.
+ - Allowing local keymap when using encrypted filesystems.
+ * scripts/live:
+ - Renamed HOST to HOSTNAME.
+ - Renamed /cdrom to /live_media.
+ - Added support for live-snapshot.
+ - Parsing commandline in one central place now.
+ - Added support for encrypted filesytem images.
+ - Added support for multiple filesystem images.
+ * scripts/live-bottom/01integrity_check:
+ - Renamed /cdrom to /live_media.
+ * scripts/live-bottom/02etc_live_conf:
+ - Added.
+ * scripts/live-bottom/05mountpoints:
+ - Renamed /cdrom to /live_media.
+ - Don't do anything if not required.
+ * scripts/live-bottom/10adduser:
+ - Changed default password.
+ - Disabling xscreensaver locking and copying ubiquity desktop only on
+ ubuntu.
+ * scripts/live-bottom/14locales:
+ - Added handling of locale bootparameter.
+ * scripts/live-bottom/15autologin:
+ - Added workaround for using gdm default config.
+ * scripts/live-bottom/18hostname:
+ - Renamed HOST to HOSTNAME.
+ * scripts/live-bottom/19keyboard:
+ - Added handling of keyboard bootparameter.
+ * scripts/live-bottom/20xconfig:
+ - Added handling of keyboard bootparameter.
+ - Added handling of locale bootparameter.
+ * scripts/live-bottom/23networking:
+ - Disabled loop over fixed network devices.
+ * scripts/live-bottom/24preseed:
+ - Added handling of multiple preseeding files.
+ - Removed locale handling.
+ * scripts/live-bottom/25configure_init:
+ - Added handling of serial ttys.
+ * scripts/live-bottom/30accessibility:
+ - Removed extra parsing of commandline.
+ * scripts/live-functions:
+ - Added function to really export variables.
+ * scripts/live-helpers:
+ - Added support for encrypted filesytem images.
+
+2007-05-06 Daniel Baumann <daniel@debian.org>
+
+ * bin/casper-getty, casper-login, casper-preseed, casper-reconfigure,
+ casper-snapshot:
+ - Renamed to live-*.
+ * casper-md5check:
+ - Moved to bin.
+ - Renamed to live-md5check.
+ * casper.conf:
+ - Moved to conf/live.conf.
+ * caspermon:
+ - Removed.
+ * hooks/casper, scripts/casper, casper-bottom, casper-functions,
+ casper-helpers, casper-premount:
+ - Renamed to live*.
+ * bin/live-getty, live-login:
+ - Reformated.
+ * conf/live.conf:
+ - Reformated.
+ - Setting Debian defaults.
+ * bin/live-snapshot, debian/dirs, debian/install, debian/rules,
+ hooks/live, scripts/live:
+ - Replaces casper directory and file names with live-initramfs
+ directory and file names.
+ * debian/manpage:
+ - Moved to manpages.
+ - Renamed casper.7 to live-initramfs.7.
+ - Renamed casper-snapshot.1 to live-snapshot.1.
+ * debian/init:
+ - Changed activation parameter from boot=casper to boot=live.
+ * scripts/live-bottom/02_timezone:
+ - Fixed wrong script description.
+ * Uploaded 1.87.2-1.
+
+2007-04-30 Daniel Baumann <daniel@debian.org>
+
+ * Forked casper 1.87.
+ * COPYING:
+ - Added.
+ * debian/control, debian/ubiquity-casper.install, ubiquity-hooks:
+ - Removed ubiquity support.
+ * debian/changelog:
+ - Moved old changelog to doc/ChangeLog.casper.
+ - Added new changelog for live-initramfs.
+ * debian/casper.dirs, casper.init, casper.install, casper.manpages,
+ casper.postinst:
+ - Renamed, removed packagename prefix from filename.
+ * debian/compat, copyright, dirs, manpages:
+ - Updated.
+ * debian/examples, links:
+ - Added.
+ * debian/rules:
+ - Updated.
+ - Added upstream target.
+ * debian/control:
+ - Updated.
+ - Added depends to file.
+ - Added conflicts/replaces to casper.
+ * debian/postinst:
+ - Running 'update-initramfs' for all kernel versions instead of latest
+ only.
+ * Uploaded 1.87.1-1.
--- /dev/null
+casper (1.110) gutsy; urgency=low
+
+ * Don't generate fglrx or the nvidia modules in the live session at boot;
+ we disable restricted-manager in the live session anyway so they aren't
+ straightforward to use (see #43706). Saves about 19 MB of memory.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Fri, 05 Oct 2007 21:28:29 +0100
+
+casper (1.109) gutsy; urgency=low
+
+ * Cache the stty binary before ejecting the CD.
+ * Skip the CD eject prompt if 'noprompt' is on the kernel command line
+ (LP: #149159).
+ * Try each of (e.g.) 2.6.22-13-generic, 2.6.22-13, and 2.6.22 in turn as
+ directory names for driver updates (LP: #122430).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Fri, 05 Oct 2007 03:24:43 +0100
+
+casper (1.108) gutsy; urgency=low
+
+ * If CASPER_GENERATE_UUID is set, generate a random UUID in the initramfs,
+ and check it against the discovered medium (unless booting with the
+ ignore_uuid parameter). This allows live CD images to be safely copied
+ to the hard disk without causing problems when booting future live CDs
+ (LP: #144800).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Thu, 04 Oct 2007 14:23:37 +0100
+
+casper (1.107) gutsy; urgency=low
+
+ * Fix gconf keys for suspend and hibernate (thanks, Oliver Grawert;
+ LP: #144790).
+ * Enable suspend again since as far as I can see we no longer need to
+ probe DMI while figuring out whether to enable it (see #61535).
+ * Add a 'textonly' boot option to disable X (LP: #65818).
+ * Write the please-remove-CD message to /dev/console so that it works even
+ if usplash isn't running, and make sure to set /dev/console into a sane
+ state so that pressing Enter doesn't just result in ^M being displayed.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Tue, 02 Oct 2007 15:12:57 +0100
+
+casper (1.106) gutsy; urgency=low
+
+ * Support preseed/early_command; code supplied here will be run using 'sh
+ -c' from casper-bottom, and can chroot to /root if needed (LP: #144845).
+ * Make sure we don't accidentally continue to boot if casper-md5check
+ fails (LP: #82856).
+ * Clear out debconf database backup files after preseeding to save memory
+ (LP: #43706).
+ * Mount everything as noatime to avoid unnecessary metadata writes.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Fri, 28 Sep 2007 15:27:52 +0100
+
+casper (1.105) gutsy; urgency=low
+
+ * scripts/casper-bottom/36disable_trackerd: Disable trackerd in the live
+ session; it's not very useful in this context and it uses a fair bit of
+ memory.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Mon, 24 Sep 2007 17:25:50 +0100
+
+casper (1.104) gutsy; urgency=low
+
+ * casper-md5check: Fall back to text output if opening the usplash FIFO
+ fails (LP: #131209).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Thu, 20 Sep 2007 01:07:45 +0100
+
+casper (1.103) gutsy; urgency=low
+
+ * Disable anacron harder so that it doesn't get started by battery events.
+ * Don't write out DHCP network interface stanzas if network-manager is
+ installed (LP: #139403).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Wed, 19 Sep 2007 12:52:21 +0100
+
+casper (1.102) gutsy; urgency=low
+
+ * Rename 42disable_cups_apparmor to 42disable_apparmor and remove AppArmor's
+ rc.d startup links instead of just disabling the cups profile. AA profiles
+ will not generally work on the live system, so disabling it completely
+ allows us to ship more profiles without worrying any further.
+ (LP: #131976)
+
+ -- Martin Pitt <martin.pitt@ubuntu.com> Fri, 14 Sep 2007 08:37:50 +0200
+
+casper (1.101) gutsy; urgency=low
+
+ * Add scripts/casper-bottom/42disable_cups_apparmor: Disable AppArmor
+ protection for cups on the live CD by switching the profiles to complain
+ mode. This is necessary until AppArmor works properly on stacked file
+ systems. (LP: #131976)
+
+ -- Martin Pitt <martin.pitt@ubuntu.com> Wed, 12 Sep 2007 16:44:02 +0200
+
+casper (1.100) gutsy; urgency=low
+
+ * scripts/casper-bottom/41apt_cdrom: Remove unnecessary /root/cdrom
+ mounting/unmounting code, which only serves to generate error messages
+ (scripts/casper-bottom/05mountpoints handles this already).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Tue, 11 Sep 2007 19:47:58 +0100
+
+casper (1.99) gutsy; urgency=low
+
+ [ Luke Yelavich ]
+ * scripts/casper-bottom/30accessibility &
+ ubiquity-hooks/30accessibility:
+ - Change gconf setting used to automatically start Orca (LP: #131808).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Fri, 31 Aug 2007 13:09:46 +0100
+
+casper (1.98) gutsy; urgency=low
+
+ * Load /preseed.cfg if it exists in the initramfs.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Wed, 29 Aug 2007 16:18:27 +0100
+
+casper (1.97) gutsy; urgency=low
+
+ * Fix paths in scripts/casper-bottom/10adduser and
+ scripts/casper-bottom/38disable_restricted_manager
+
+ -- Jonathan Riddell <jriddell@ubuntu.com> Wed, 29 Aug 2007 15:26:33 +0100
+
+casper (1.96) gutsy; urgency=low
+
+ [ Colin Watson ]
+ * Fix name and executability of timezone script.
+
+ [ Jonathan Riddell ]
+ * In 10adduser add About Kubuntu document to desktop and remove
+ restricted-manager autostart files
+
+ -- Colin Watson <cjwatson@ubuntu.com> Tue, 07 Aug 2007 12:51:02 +0100
+
+casper (1.95) gutsy; urgency=low
+
+ * Fix regex syntax error while looking for non-CD devices for driver
+ updates.
+ * Fix ip= boot parameter, documented but not properly merged from Debian.
+ (LP: #128689).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Fri, 27 Jul 2007 15:03:41 +0100
+
+casper (1.94) gutsy; urgency=low
+
+ [ Colin Watson ]
+ * Hack around keyboard configuration not being done until after the keymap
+ is set by having /etc/init.d/usplash reconfigure the console
+ (LP: #68487).
+ * Disable pam_lastlog on the console if doing autologin (LP: #126800).
+
+ [ Luke Yelavich ]
+ * scripts/casper-bottom/30accessibility &
+ ubiquity-hooks/30accessibility:
+ - Prevent gksu from grabbing keyboard focus for the v2, v3, and m1
+ accessibility profiles. (LP: #67172)
+ * Start Orca when a Braille device is configured from choosing the
+ Braille option in the Accessibility menu. (Partially fixes Launchpad
+ bug #122024)
+ * Re-enable desktop sounds for the blindness accessibility profile, as
+ eSpeak should be able to speak alongside audio playback.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Tue, 24 Jul 2007 16:24:55 +0100
+
+casper (1.93) gutsy; urgency=low
+
+ * revert gdm-cdd.conf handling for autologin to the chrooted code
+ as we had it in feisty. not chrooting brings up problems with the
+ alternatives system (dead symlinks) used for gdm-cdd.conf
+
+ -- Oliver Grawert <ogra@ubuntu.com> Wed, 18 Jul 2007 15:08:16 +0200
+
+casper (1.92) gutsy; urgency=low
+
+ [ Colin Watson ]
+ * Don't bother chrooting just to run test(1).
+
+ [ Evan Dandrea ]
+ * Added support for URL-based preseeding.
+ * Added 'noninteractive' option that starts ubiquity in noninteractive
+ mode on tty1.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Mon, 09 Jul 2007 15:23:51 +0100
+
+casper (1.91) gutsy; urgency=low
+
+ * Fix Maintainer field (ubuntu-devel-discuss, not ubuntu-devel).
+ * Remember to strip directories from paths when dealing with driver update
+ .debs (LP: #120217).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Thu, 14 Jun 2007 09:51:33 +0100
+
+casper (1.90) gutsy; urgency=low
+
+ * Added to 22screensaver, to stop the screen automatically locking.
+ Fixes LP: #13497 for kubuntu as well.
+
+ -- Sarah Hobbs <hobbsee@ubuntu.com> Thu, 07 Jun 2007 00:50:42 +1000
+
+casper (1.89) UNRELEASED; urgency=low
+
+ * Update Maintainer field to reflect reality; this package is no longer
+ maintained by me.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Wed, 06 Jun 2007 14:56:46 +0200
+
+casper (1.88) gutsy; urgency=low
+
+ * Add default values for root_persistence, home_persistence,
+ root_snapshot_label, and home_snapshot_label, and parse the persistent
+ command-line option, which went missing in the last merge from Debian.
+ This goes some way towards LP #84591 but doesn't quite fix it for me
+ since the USB stick inexplicably doesn't appear until a little too late.
+ * Use 'losetup -f' instead of walking /sys/block/loop*. Requires
+ busybox-initramfs 1:1.1.3-4ubuntu3.
+ * Install temporary workaround for /dev/loop* breakage in post-2.6.21
+ kernels (LP: #118561).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Mon, 04 Jun 2007 16:26:59 +0100
+
+casper (1.87) feisty; urgency=low
+
+ [ Colin Watson ]
+ * Improve language at end of MD5 check (LP: #100088).
+
+ [ Martin Pitt ]
+ * Add casper-bottom/33enable_apport_crashes: Enable apport crash
+ notifications. They are disabled now by default in the installed system
+ for the final release.
+
+ -- Martin Pitt <martin.pitt@ubuntu.com> Mon, 9 Apr 2007 14:31:50 +0200
+
+casper (1.86) feisty; urgency=low
+
+ [ Luke Yelavich ]
+ * scripts/casper-bottom/30accessibility &
+ ubiquity-hooks/30accessibility:
+ - Point to new settings file for gnome-orca, as package was changed
+ from python-support to pycentral. (LP: #91868)
+
+ -- Colin Watson <cjwatson@ubuntu.com> Thu, 5 Apr 2007 16:42:54 +0100
+
+casper (1.85) feisty; urgency=low
+
+ * Stop disabling nvidia and fglrx drivers. LP: #94359
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Mon, 2 Apr 2007 13:16:46 +0200
+
+casper (1.84) feisty; urgency=low
+
+ [ Jani Monoses ]
+ * scripts/casper-bottom/13swap: Call /bin/dd not dd so it
+ correctly detects and uses existing swap partitions (LP: #62868)
+
+ [ Tollef Fog Heen ]
+ * Make sure that we are settled before trying to set up netbooting.
+ (LP: #96076)
+ * Bind-mount /dev too, when configuring X, this should make it easier
+ for X to be correctly configured on a lot of systems.
+ * Add /root/lib and /root/usr/lib to /etc/ld.so.conf in the initramfs.
+ * Add any sources on the CD to APT using apt-cdrom.
+ * Set the time zone to UTC. LP: #13782
+ * Fix deletion of checkroot script. LP: #66585.
+
+ [ Colin Watson ]
+ * Fix error message if do_netmount fails (LP: #95134).
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Fri, 30 Mar 2007 12:37:58 +0200
+
+casper (1.83) feisty; urgency=low
+
+ * Fix usplash version in Conflicts.
+ * Add XS-Vcs-Bzr field to debian/control.
+ * scripts/casper-bottom/25configure_init: Support for "respawn COMMAND"
+ has been dropped from upstart jobs; cope with /etc/event.d/tty* using
+ "respawn" plus "exec COMMAND" now instead (LP: #92928).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Mon, 19 Mar 2007 16:44:22 +0000
+
+casper (1.82) feisty; urgency=low
+
+ [ Ben Collins ]
+ * Depends on eject package, and copy it into initramfs.
+ * Add log_wait_msg function to use usplash_write INPUTENTER.
+ * Conflict with usplash older than the one that fixes INPUTENTER.
+ * Add driver-updates hooks.
+
+ [ Colin Watson ]
+ * Fix more leftover /live_media wreckage (LP: #84592).
+ * Add a ubiquity hook to install driver-updates on the target system.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Mon, 5 Mar 2007 11:19:48 +0000
+
+casper (1.81+debian-4) unstable; urgency=low
+
+ * Added patch from Serkan Sakar <serkan.sakar@gmx.net> to allow local keymap
+ for use with encryption.
+
+ -- Daniel Baumann <daniel@debian.org> Wed, 11 Apr 2007 09:04:00 +0200
+
+casper (1.81+debian-3) unstable; urgency=low
+
+ * Added depends to eject.
+ * Removed recommends to live-package.
+
+ -- Daniel Baumann <daniel@debian.org> Wed, 21 Mar 2007 00:30:00 +0100
+
+casper (1.81+debian-2) unstable; urgency=low
+
+ [ Daniel Baumann ]
+ * Applied patch from Sebastian Raveau <sebastien.raveau@epita.fr> to
+ add support for filesystem images encrypted with loop-aes.
+
+ [ Marco Amadori ]
+ * Added a "quickreboot" boot parameter, that prevent casper to eject the
+ media, useful for remote rebooting of a casper system, thanks to
+ Jonathan Hall <flimzy@flimzy.com> for the patch.
+
+ -- Marco Amadori <marco.amadori@gmail.com> Fri, 16 Feb 2007 17:26:58 +0100
+
+casper (1.81+debian-1) unstable; urgency=low
+
+ * New upstream release.
+ * Some cleaning and renaming involved because most of the debian-only code
+ was merged in ubuntu sources, then back here.
+ * Extended manpage, thanks to Alex Owen <r.alex.owen@gmail.com> and
+ Jonathan Hall <flimzy@flimzy.com> (Closes: #409980).
+ * Included a slightly reworked and bug fixed version of "Allow specific
+ ordering of images" by Jonathan Hall <flimzy@flimzy.com> with a new boot
+ parameter: module=NAME.
+
+ -- Marco Amadori <marco.amadori@gmail.com> Thu, 15 Feb 2007 10:21:01 +0100
+
+casper (1.81) feisty; urgency=low
+
+ * Merge in Debian's changes.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Wed, 7 Feb 2007 14:39:30 +0100
+
+casper (1.80) feisty; urgency=low
+
+ * scripts/casper-bottom/31disable_update_notifier: Allow update-notifier
+ to run for crash report handling, but disable its apt-check hook.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Thu, 1 Feb 2007 00:11:06 +0000
+
+casper (1.79+debian-3) unstable; urgency=low
+
+ * Fix DEFCONSOLE for autoserial console, thanks to
+ "Alex Owen" <r.alex.owen@gmail.com>.
+
+ -- Marco Amadori <marco.amadori@gmail.com> Sun, 4 Feb 2007 20:12:08 +0100
+
+casper (1.79+debian-2) unstable; urgency=low
+
+ * It now depends also on "file" (Closes: #409308).
+ * Fixed LIVEMEDIA_TIMEOUT values (Closes: #409300).
+ Thanks for both to Jonathan Hall <flimzy@flimzy.com>.
+
+ -- Marco Amadori <marco.amadori@gmail.com> Sat, 3 Feb 2007 18:29:20 +0100
+
+casper (1.79+debian-1) unstable; urgency=low
+
+ * New Upstream release.
+ * Reverted: "Mount the first squashfs as /rofs."
+
+ -- Marco Amadori <marco.amadori@gmail.com> Tue, 16 Jan 2007 12:12:34 +0100
+
+casper (1.79) feisty; urgency=low
+
+ [ Colin Watson ]
+ * ubiquity-hooks/30accessibility: Change /root to /target in
+ kderc_addtoprefixes (thanks, Jani Monoses).
+ * Call udevsettle after udevtrigger (thanks, Matthias Urlichs; LP:
+ #77438).
+ * Send casper-reconfigure error messages to stderr rather than stdout to
+ avoid interfering with debconf.
+
+ [ Jani Monoses ]
+ * ubiquity-hooks/30accessibility, scripts/casper-bottom/30accessibility:
+ Fix v2 option to start orca in magnifier not speech mode.
+ Add v1, v2, v3, m1 and m2 Xubuntu options
+
+ [ Tollef Fog Heen ]
+ * Apply patch from Luka Renko to support kde-guidance-powermanager and
+ ksmserver instead of klaptoprc as the latter is no longer used.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Wed, 10 Jan 2007 20:37:30 +0100
+
+casper (1.78) edgy; urgency=low
+
+ * Mount the first squashfs as /rofs. Breaks showmounts and won't work
+ properly with stacked filesystems, but works around a kernel oops with
+ multiply-mounted squashfses for Edgy.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Wed, 25 Oct 2006 12:46:05 +0100
+
+casper (1.77+debian-7) testing; urgency=medium
+
+ * Backported two 1 line fixes (both serious bugs) from casper-1.79+debian-1
+ and casper-1.79+debian-3:
+ - It now depends also on "file" (Closes: #409308).
+ - Fix DEFCONSOLE for autoserial console, thanks to
+ "Alex Owen" <r.alex.owen@gmail.com>.
+
+ -- Marco Amadori <marco.amadori@gmail.com> Thu, 8 Feb 2007 11:19:46 +0100
+
+casper (1.77+debian-6) unstable; urgency=medium
+
+ * Improved snapshots features (even still experimental).
+ * Added "live-media-offset=BYTES" boot param, to enable "hiding"
+ feature, thanks to Sebastien Raveau <sebastien.raveau@epita.fr>.
+ * Now it creates /etc/resolv.conf if netbooted.
+
+ -- Marco Amadori <marco.amadori@gmail.com> Fri, 1 Dec 2006 17:43:30 +0100
+
+casper (1.77+debian-5) unstable; urgency=low
+
+ * Fixed preseeding locale and keyboard's variant and options.
+ * Reorganized scans of /proc/cmdline.
+ * Improved manpages, thanks to Oliver Osburg for syntax corrections.
+ * Added "nopersistent" boot option to disable the "persistent" boot param.
+ * Added "xdebconf" boot option, that uses xdebconfigurator on the
+ rootfs to configure X (experimental).
+
+ -- Marco Amadori <marco.amadori@gmail.com> Mon, 20 Nov 2006 22:12:18 +0100
+
+casper (1.77+debian-4) unstable; urgency=medium
+
+ * Removed -phigh from casper-reconfigure, not needed anymore.
+ * Fixed netboot /etc/network/interfaces generation, thanks to Hadar
+ <whadar@gmail.com>.
+ * Fixed X keyboard setup. Thanks to <ascii_77@yahoo.fr> for the idea.
+ * Fixed keyboard setup.
+ * Allow commandline-device to show up late, thanks to Bas Wijnen
+ <wijnen@debian.org> for the code and the care (Closes: #397320).
+ * Urgency is set to medium to try reaching Etch with important
+ features/bugfixes.
+
+ -- Marco Amadori <marco.amadori@gmail.com> Mon, 6 Nov 2006 19:00:29 +0100
+
+casper (1.77+debian-3) unstable; urgency=medium
+
+ * Fixed "todisk=" parsing.
+ * Urgency is set to medium to try reaching Etch with important
+ features/bugfixes.
+
+ -- Marco Amadori <marco.amadori@gmail.com> Wed, 1 Nov 2006 11:15:56 +0100
+
+casper (1.77+debian-2) unstable; urgency=medium
+
+ [ Marco Amadori ]
+ * Improved snapshotting (but still experimental).
+ * Renamed "host=" boot parameter to "hostname=" and shell variable "HOST" to
+ "HOSTNAME" for consistence, with linux and with username/USERNAME, as
+ requested by many people.
+ * Fixed a "keyb=" typo.
+ * Added dependence on lsb-base (used by init-script and
+ casper-snapshot).
+ * Removed DM support (obsolete).
+ * Changed a bit locale and keyboard handling.
+ * Fixed locale generation.
+ * Urgency is set to medium to try reaching Etch with important
+ features/bugfixes.
+
+ [ Otavio Salvador ]
+ * Really lowered usplash conflicts since Debian doesn't has 0.4.
+
+ -- Marco Amadori <marco.amadori@gmail.com> Mon, 30 Oct 2006 17:06:48 +0100
+
+casper (1.77+debian-1) unstable; urgency=low
+
+ * New upstream release.
+ * Added snapshot persistence feature (copy on boot, sync on reboot) via
+ different ways: squashfs, cpio.gz, and block device filesystems.
+ * Added boot parameter "live-media=<device>" to force trying to boot from
+ a specified device.
+ * Added support for "todisk=<device>" to copy the live media to a
+ device filesystem, subsequent boots could use "live-media=<device>".
+ * Slightly polished locales and keyboards handling.
+ * Extendend manpages.
+ * Readded a missing "sleep 1", reworked how live_media is detected,
+ thanks to Bas Wijnen <wijnen@debian.org> for the reports.
+ (Closes: #394308, #394554).
+ * Reworked casper-getty system, thanks to Alex Owen (Closes: #394686).
+ * Postint now rebuild all initramfs.
+ * Casper now Recommends also squashfs-tools and genext2fs, maybe
+ needed by casper-snapshot.
+ * Lowered usplash requirements, since usplash 0.4 is not in debian
+ yet.
+
+ -- Marco Amadori <marco.amadori@gmail.com> Sun, 22 Oct 2006 20:25:38 +0200
+
+casper (1.77) edgy; urgency=low
+
+ * Honour console-setup/modelcode preseeding. Needed for Malone #66719,
+ #66774.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Fri, 20 Oct 2006 19:59:39 +0100
+
+casper (1.76) edgy; urgency=low
+
+ [ Colin Watson ]
+ * Copy access=m2 accessibility changes into the corresponding ubiquity
+ hook.
+ * Remove spurious quoting from accessibility script.
+ * Clear console-setup/layoutcode and console-setup/variantcode if they
+ aren't supplied on the command line.
+
+ [ Michael Vogt ]
+ * scripts/casper-bottom/35fix_language_selector:
+ - run fontconfig-voodoo if available to make sure that we have
+ optimal fontconfig settings for the CJK languages (lp: #49334)
+
+ [ Henrik Nilsen Omma ]
+ * Fix a few accessibility items that were out of date, changing
+ gnopernicus -> orca and gok -> onboard (the gok entry was missing some
+ brackets as well; patch from Malone #58836, closes: Malone #65861).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Mon, 16 Oct 2006 20:20:15 +0100
+
+casper (1.75) edgy; urgency=low
+
+ * Turn on accessibility in "Motor Difficulties - pointing devices" which
+ makes onboard start properly. closes: Malone: #65861.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Fri, 13 Oct 2006 14:12:10 +0200
+
+casper (1.74) edgy; urgency=low
+
+ [ Tollef Fog Heen ]
+ * Sync up ubiquity-hooks/30accessibility with
+ scripts/casper-bottom/30accessibility fixing spelling errors and
+ enabling accessibility in KDE.
+
+ [ Colin Watson ]
+ * Fix check for presence of gconf2 (closes: Malone #58836).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Wed, 11 Oct 2006 11:18:00 +0100
+
+casper (1.73) edgy; urgency=low
+
+ * Never run install-keymap or preseed debian-installer/keymap if
+ console-setup is detected, even if console-setup wasn't explicitly
+ preseeded. Contributes to Malone #60067.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Sat, 7 Oct 2006 01:56:20 +0100
+
+casper (1.72) edgy; urgency=low
+
+ * Force suspend and hibernate both off, since reconfiguring
+ gnome-power-manager kills usplash here. Fixes Malone: #61535
+ completely.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Fri, 6 Oct 2006 14:22:23 +0200
+
+casper (1.71+debian-1) unstable; urgency=low
+
+ * New upstream release.
+ * Added experimental casper-snapshot script and manpage.
+ * Tagged for debtags project.
+
+ -- Marco Amadori <marco.amadori@gmail.com> Thu, 28 Sep 2006 16:04:54 +0200
+
+casper (1.71) edgy; urgency=low
+
+ * Use TEXT-URGENT in shutdown script to make sure we display the "please
+ remove disc and press enter" text. Malone: #61533
+ * Increase usplash timeout since "TIMEOUT 0" no longer means "spin
+ forever".
+ * Don't move-mount all the squashfs-es into / since that confuses mono
+ (and some other apps too). Malone: #62756
+ * Disable kwallet by default. Malone: #47743
+ * Add -n to language selector to make it not whine about
+ not-fully-installed langpacks. Malone. #37568
+ * Override definition of log_end_msg in casper-functions. Make sure all
+ casper-bottom scripts use this.
+ * Pulsate bar in casper-top and casper-bottom. Malone: #61535
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Wed, 4 Oct 2006 09:52:06 +0200
+
+casper (1.70) edgy; urgency=low
+
+ * Check for new file= alias as well as preseed/file= (closes: Malone
+ #63145).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Wed, 4 Oct 2006 08:59:53 +0100
+
+casper (1.69) edgy; urgency=low
+
+ [ Tollef Fog Heen ]
+ * Use grep -E in scripts/casper. Malone: #57620
+ * Fix syntax error in accessibility script
+
+ [ Colin Watson ]
+ * Run 'sh -n' over everything in build target to avoid future syntax
+ errors.
+ * Fix check for /etc/default/console-setup (closes: Malone #62775).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Mon, 2 Oct 2006 10:58:19 +0100
+
+casper (1.68+debian-3) unstable; urgency=low
+
+ * Really add casper manpage (Closes: #389867).
+ * Lintian cleanness reached.
+
+ -- Marco Amadori <marco.amadori@gmail.com> Thu, 28 Sep 2006 12:36:29 +0200
+
+casper (1.68+debian-2) unstable; urgency=low
+
+ * Changed "staticip=" boot param to just "ip=".
+ * Added a manpage for casper.
+ * Lintian cleanings.
+
+ -- Marco Amadori <marco.amadori@gmail.com> Tue, 26 Sep 2006 00:45:21 +0200
+
+casper (1.68+debian-1) unstable; urgency=low
+
+ * New upstream release.
+ * Added static network configuration support.
+ * Fixed gnome-screensaver-lock differences between ubuntu.
+ * username, host, and userfullname are now also settable
+ via kernel parameters.
+
+ -- Marco Amadori <marco.amadori@gmail.com> Fri, 8 Sep 2006 11:26:02 +0200
+
+casper (1.68) edgy; urgency=low
+
+ * Honour console-setup/layoutcode and console-setup/variantcode preseeding
+ (closes: Malone #61573).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Fri, 22 Sep 2006 16:09:53 +0100
+
+casper (1.67) edgy; urgency=low
+
+ * Make sure to write xorg.conf md5sum to the installed system, not the
+ live system in ubiquity-hooks/20xconfig
+ * Implement support for setting KDE's accessibility options too, thanks
+ to Jonathan Riddell for the patch.
+ * Use usplash's TEXT-URGENT for important messages when doing md5 checks
+ * Fix flashing of progress bar on 32 bit arches
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Wed, 23 Aug 2006 14:34:57 +0200
+
+casper (1.66+debian-1) unstable; urgency=low
+
+ * Added "magic" to make it work seamlessy also on ubuntu systems.
+ * Default user password now "live".
+
+ -- Marco Amadori <marco.amadori@gmail.com> Fri, 1 Sep 2006 17:18:07 +0200
+
+casper (1.66) edgy; urgency=low
+
+ * Fix use of db_get in ubiquity accessibility hook.
+ * Use sudo instead of su to get to the live session user from the
+ initramfs or to the newly-installed user from ubiquity. su's argument
+ handling has changed so that the previous code no longer worked, and su
+ was never all that good for arguments containing spaces anyway.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Mon, 4 Sep 2006 15:46:55 +0100
+
+casper (1.65+debian-1) unstable; urgency=low
+
+ * New upstream release.
+ * Re-included ubiquity sources since it is here anyway in diff.gz.
+ * Included remote getty patch from Alex Owen (enable it with "casper-getty"
+ as kernel parameter).
+
+ -- Marco Amadori <marco.amadori@gmail.com> Thu, 17 Aug 2006 14:06:10 +0200
+
+casper (1.65) edgy; urgency=low
+
+ * Update to call udevsettle/udevtrigger instead of udevplug
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Mon, 21 Aug 2006 19:37:58 +0200
+
+casper (1.64) edgy; urgency=low
+
+ * Fix moving of squashfs mount points so that /proc/mounts in the
+ installed system refers to them correctly (closes: Malone #55019). As a
+ bonus, this lets us mount them on subdirectories of /casper/ right from
+ the start.
+ * Treat locale= as equivalent to debian-installer/locale= (closes: Malone
+ #53444).
+ * Fix ubiquity-hooks/30accessibility not to use log_end_msg, and to chroot
+ to /target instead of /root (closes: Malone #53277).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Thu, 3 Aug 2006 14:00:22 +0100
+
+casper (1.63+debian-3) unstable; urgency=low
+
+ * Really do not try to eject cd if netbooted.
+ * Fixed unionfs ro param in case of nfs netboot (Closes: 383346).
+
+ -- Marco Amadori <marco.amadori@gmail.com> Wed, 16 Aug 2006 20:10:11 +0200
+
+casper (1.63+debian-2) unstable; urgency=low
+
+ * Working netboot support (Closes: #380506).
+ * Polished kernel parameters parsing a bit.
+
+ -- Marco Amadori <marco.amadori@gmail.com> Sun, 13 Aug 2006 15:52:14 +0200
+
+casper (1.63+debian-1) unstable; urgency=low
+
+ [Marco Amadori]
+ * New upstream release.
+ * Fixed upstream changelog.
+ * Really fixed the user password issue, now really "debian".
+ * Reincluded casper-md5ckeck in debian/rules and 05mountpoints in
+ script/casper-bottom.
+ * Rewrote netboot support now will support all types of rootfs file images
+ (not only plain dirs) like cd/dvd one.
+ * Included a fix for USB by Davide Natalini <davide.natalini@studio.unibo.it>
+ * Included support for plain directory as RO rootfs.
+ * Removed xfs support (not implemented in make-live, maybe useless).
+
+ [Alex Owen]
+ * Added NFS netboot support (Closes: #380506).
+ * Fixed /etc/inittab editing (Closes: #380488).
+ * Do not try to eject cd if netbooted (Closes: #380502).
+
+ [Daniel Baumann]
+ * Minor debian/rules reordering.
+ * Changed "Section:" from "admin" to "misc".
+
+ -- Marco Amadori <marco.amadori@gmail.com> Sun, 30 Jul 2006 19:10:23 +0200
+
+casper (1.63) edgy; urgency=low
+
+ [ Tollef Fog Heen ]
+ * Change "Live CD user" to "live session user" in the adduser script.
+ Malone #46882
+ * Wait for persistent devices for 30 seconds, not 1500.
+ * Make sure that readahead-list is installed before chmod -x'ing it.
+ * Only disable l-r-m and anacron if they are installed.
+ * Make sure laptop-detect is installed before trying to call it.
+ * Do not install init script from the initramfs any more. It should
+ have rc.d links already in the squashfs.
+ * Minor build system fixes.
+ * Only copy devmapper relevant files if devmapper is installed.
+ * Remove ubuntu-specific branding from the default casper.
+ * Install default configuration file and make it end up in the
+ initramfs.
+ * Get rid of CD references and replace with medium or other appropriate
+ terms.
+ * Add stacked file system support
+
+ [ Marco Amadori ]
+ * Added possibility to set locale on chroot, not only at runtime.
+ * Updated 14locales to latest debian policy.
+
+ [ Malcolm Gilles ]
+ * USB devices can have ID_PATH with pci-*-usb, too.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Tue, 18 Jul 2006 10:20:51 +0200
+
+casper (1.61+debian-2) unstable; urgency=low
+
+ * Set password for user to 'debian'.
+
+ -- Daniel Baumann <daniel@debian.org> Wed, 19 Jul 2006 20:56:00 +0200
+
+casper (1.61+debian-1) unstable; urgency=low
+
+ [ Daniel Baumann ]
+ * Rebuild tarball without debian directory.
+ * Using dpatch for upstream modifications.
+ * Added patch for proper GDM autologin from Arnaud Cornet
+ <arnaud.cornet@gmail.com>.
+
+ [ Marco Amadori ]
+ * New upstream release (Resynced with 1.61, bzr 258).
+ * Usb discover patch from Malcom Gilles <live@ouabain.org>.
+
+ -- Marco Amadori <marco.amadori@gmail.com> Tue, 18 Jul 2006 23:34:59 +0200
+
+casper (1.61) edgy; urgency=low
+
+ * Move PATH setting to top of casper script to avoid silliness where
+ PATH isn't correctly set.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Mon, 17 Jul 2006 12:53:59 +0200
+
+casper (1.60) edgy; urgency=low
+
+ * Change start symlinks to kill symlinks for anacron, to avoid it being
+ started by invoke-rc.d and similar.
+ * Rearrange source package.
+ * Redo how the init script works and require it to be installed in the
+ live fs.
+ * Bump version number to be higher than Debian's so we don't
+ automatically sync.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Wed, 31 May 2006 00:01:40 +0200
+
+casper (1.59+debian-1) unstable; urgency=low
+
+ [ Daniel Baumann ]
+ * Upload to unstable (Closes: #354539).
+
+ [ Marco Amadori ]
+ * Added possibility to set locale on chroot, not only at runtime.
+ * Removed "persistent" wait.
+ * Fixed persistence lock and added "homepersistence" boot parameter.
+ * Updated locales handling to latest debian policy.
+ * Cleanups
+
+ -- Daniel Baumann <daniel@debian.org> Thu, 22 Jun 2006 06:21:00 +0200
+
+casper (1.59+debian-0) UNRELEASED; urgency=low
+
+ * Added "toram" boot parameter.
+ * Extendend fs support to ext2 and xfs file image.
+ * Changed debian-inexistant "-Q" modprobe option with "-q".
+ * Removed ubiquity code.
+ * USERNAME and HOST defaulted to "debian".
+ * Preliminary netboot (cifs) patch by
+ "Jason D. Clinton" <me@jasonclinton.com>
+ * Lowered dependence of dmsetup code (now only Suggests).
+ * Checks for replacing "udevplug" (ubuntu-only) with "udevtrigger".
+ * Reworked xorg and anacron patches from
+ Frederic Lehobey <Frederic.Lehobey@free.fr>.
+ * scripts/casper-bottom/10adduser: configuring only the $USERNAME for sudo
+ instead of group 'admin'.
+
+ -- Marco Amadori <marco.amadori@gmail.com> Fri, 16 Jun 2006 11:01:48 +0200
+
+casper (1.58) dapper; urgency=low
+
+ * Really rename properly, without dirname.
+
+ -- Scott James Remnant <scott@ubuntu.com> Tue, 30 May 2006 22:47:04 +0100
+
+casper (1.57) dapper; urgency=low
+
+ * Rename the anacron rc.d/S* symlinks to K*, instead of removing them.
+ Because otherwise pbbuttonsd decides that starting anacron on the
+ LiveCD would be a clever thing to do.
+
+ -- Scott James Remnant <scott@ubuntu.com> Wed, 24 May 2006 23:06:04 +0100
+
+casper (1.56) dapper; urgency=low
+
+ * Hopefully work a bit better when checking DVDs on 32 bit
+ architectures.
+ * Do an explicit read from /dev/console when waiting for keypress after
+ CD/DVD has been ejected.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Mon, 22 May 2006 16:43:03 +0200
+
+casper (1.55) dapper; urgency=low
+
+ * Reconfigure gnome-power-manager when doing live installations.
+ Malone #45654
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Mon, 22 May 2006 11:16:46 +0200
+
+casper (1.54) dapper; urgency=low
+
+ [ Luke Yelavich ]
+ * Set large print fonts for the v1 accessibility profile. Closes
+ Malone #45376.
+
+ [ Colin Watson ]
+ * Fix preseed/file handling (closes: Malone #43683).
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Thu, 18 May 2006 19:36:24 +0200
+
+casper (1.53) dapper; urgency=low
+
+ [ Tollef Fog Heen ]
+ * Disable fglrx and nvidida drivers by default. Somewhat addresses
+ #43706
+
+ [ Colin Watson ]
+ * Pass all command-line preseed arguments (other than preseed/file) to
+ /root's debconf db.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Sat, 13 May 2006 10:14:36 +0200
+
+casper (1.52) dapper; urgency=low
+
+ * Export the path in casper-reconfigure so X and friends actually have
+ sbin in their path.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Thu, 11 May 2006 21:04:11 +0200
+
+casper (1.51) dapper; urgency=low
+
+ [ Luke Yelavich ]
+ * casper-bottom/30accessibility:
+ - Removed stale reference to acessx_applet.
+ - Fix some typos for gconf values that had to be set as lists.
+
+ [ Colin Watson ]
+ * Pass debian-installer/locale to /root's debconf db (closes: Malone
+ #41896).
+ * Identify ourselves as casper when communicating with debconf.
+ * Factor out preseeding code into casper-preseed; this knows that it only
+ needs to register a question if it fails to set it, which saves memory
+ by avoiding debconf having to rewrite templates.dat.
+ * Preseed kbd-chooser/method as well as debian-installer/keymap, so that
+ kbd-chooser run from ubiquity picks up the selected keyboard (closes:
+ Malone #42202).
+ * Use new dpkg-reconfigure --no-reload option (debconf 1.4.72ubuntu6) to
+ avoid needlessly rewriting templates.dat.
+
+ [ Tollef Fog Heen ]
+ * Add ... to the end of all usplash messages. Malone #43856
+ * Add maybe_break casper-bottom to allow breaking before running bottom
+ scripts. Malone #43860
+ * Don't show the name of the live cd user that's added.
+ * Mount COW filesystem if show-cow is present on the kernel command line.
+ Malone #43687
+ * Disable the Kubuntu update notifier too. Malone #43806
+ * Disable hibernation and enable sleep where appropriate. Malone #23882
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Thu, 11 May 2006 12:11:08 +0200
+
+casper (1.50) dapper; urgency=low
+
+ [ Luke Yelavich ]
+ * Fixed some typos, and added missing settings to some accessibility
+ profiles, as they were either not working properly, or at all. Malone:
+ #39472, #39473
+ * Removed the desktop wallpaper, and changed the background colour to gray
+ for the v1 accessibility profile.
+ * Set the whiteglass mouse theme for the v1 accessibility profile.
+ * Moved the gconftool-2 -s flag to individual gct calls, to allow for future
+ use of gconftool-2 flags that are incompatible with -s.
+
+ [ Daniele Favara ]
+ * Allow custom HOST, USERNAME, USERFULLNAME. Malone: #42118
+ * Add example file
+ - debian/casper.dir: Add examples dir
+ - debian/casper.conf: Explain briefly how to use new variables
+ - debian/rules: Install casper.conf as example_conf_casper
+
+ [ Tollef Fog Heen ]
+ * Stylistic changes to Daniele's changes.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Tue, 2 May 2006 14:12:31 +0200
+
+casper (1.49) dapper; urgency=low
+
+ * Also look for hardware named wlan*
+
+ -- Scott James Remnant <scott@ubuntu.com> Wed, 26 Apr 2006 13:37:13 +0100
+
+casper (1.48) dapper; urgency=low
+
+ * Write /etc/network/interfaces entries for eth0, eth1, eth2, ath0 and
+ wlan0 if there's no hardware detected for them; as it may be plugged
+ in after boot.
+
+ -- Scott James Remnant <scott@ubuntu.com> Wed, 26 Apr 2006 12:31:38 +0100
+
+casper (1.47) dapper; urgency=low
+
+ [ Tollef Fog Heen ]
+ * Turn on debugging of the X config.
+ * Log to a file which gets copied to /var/log/casper.log. Malone: #39895
+ * Only pick UTF-8 locales. Malone: #40178
+ * Use correct /root rather than /target for seeing what version of
+ gnome-panel-data is installed.
+ * Make festival (and probably some other apps) happier by using
+ 127.0.1.1 for our ubuntu hostname and 127.0.0.1 just resolves to
+ "localhost".
+ * Make casper-md5check read from tty8 since it wants to get keypresses
+ from the active console (where usplash runs). Malone: #40490.
+ * Copy /etc/modules when installing with ubiquity. Malone: #40311
+ * /etc/gdm/gdm-cdd.conf can be a symlink. Cope with that. Malone: #40767
+
+ [ Colin Watson ]
+ * ubiquity-casper conflicts/replaces espresso-casper.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Mon, 24 Apr 2006 09:41:14 +0200
+
+casper (1.46) dapper; urgency=low
+
+ * Use debian-installer/dummy for preseeding rather than espresso/dummy,
+ since the latter was removed in espresso 0.99.38.
+ * espresso is being renamed to ubiquity. Rename espresso-casper to
+ ubiquity-casper to match.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Fri, 21 Apr 2006 12:52:48 +0100
+
+casper (1.45) dapper; urgency=low
+
+ [ Matt Zimmerman ]
+ * [share/shutdown] Disable the usplash timeout and wrap the prompt to two
+ lines
+
+ [ Tollef Fog Heen ]
+ * Use devmapper for ia64, hppa and sparc.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Wed, 19 Apr 2006 11:36:49 +0200
+
+casper (1.44) dapper; urgency=low
+
+ * Reset the timeout after casper-premount has run so we're sure that the
+ timeout is what we want it to be. Udev seems to change it too.
+ * Remove a few set -x commands to make the boot slightly less verbose.
+ * Fix 10adduser to actually install the correct icons for espresso.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Wed, 12 Apr 2006 14:20:53 +0200
+
+casper (1.43) dapper; urgency=low
+
+ * Copy espresso-kdeui.desktop file to user's desktop
+ Branch at http://kubuntu.org/~jriddell/bzr/casper/trunk/
+
+ -- Jonathan Riddell <jriddell@ubuntu.com> Thu, 13 Apr 2006 15:37:49 +0100
+
+casper (1.42) dapper; urgency=low
+
+ [ Luke Yelavich ]
+ * casper-bottom/30accessibility:
+ - Removed some settings from accessibility profiles as these are now
+ in the relevant packages.
+
+ [ Tollef Fog Heen ]
+ * Make sure to call gconftool as the right user. Malone #38408
+ * Write an entry for / in fstab. Hopefully fixes Malone #34330
+ * Change gdm-cdd.conf if it exists, not gdm.conf. Malone #37467
+ * Really disable update-notifier, this time by removing the correct
+ file.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Tue, 11 Apr 2006 15:43:24 +0200
+
+casper (1.41) dapper; urgency=low
+
+ * Don't mkdir then install -D, just install -D (this should prevent
+ ~ubuntu/Desktop being owned by root)
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Wed, 29 Mar 2006 10:52:42 +0200
+
+casper (1.40) dapper; urgency=low
+
+ * Add snd_powermac to /etc/modules on ppc. (Malone: #27862)
+ * Use chmod -x instead of mv to disable readahead in order to not
+ trigger unionfs bugs
+ * Reboot the system when a key is pressed at the end of the integrity
+ check. (Malone: #29203)
+ * Use usplash_write too when doing shutdown. (Malone: #34537)
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Tue, 28 Mar 2006 10:09:49 +0200
+
+casper (1.39) dapper; urgency=low
+
+ [ Tollef Fog Heen ]
+ * Disable update-notifier by default, as it won't make much sense for
+ most people.
+
+ [ Colin Watson ]
+ * Clear out user-setup questions from the debconf database after creating
+ the live CD user, to avoid confusing espresso into offering "Ubuntu
+ LiveCD user" as the user's default full name.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Mon, 13 Mar 2006 11:38:39 +0100
+
+casper (1.38) dapper; urgency=low
+
+ * Disable readahead since it breaks too much with squashfs and unionfs.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Thu, 9 Mar 2006 09:43:39 +0100
+
+casper (1.37) dapper; urgency=low
+
+ * Add support for having the squashfs directly on a device, thanks to
+ Paul Sladen for idea and a patch.
+ * If a directory "Examples" exists in ~ after we've run adduser, move it
+ to the Desktop subdirectory for greater visibility.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Sat, 4 Mar 2006 11:55:50 +0100
+
+casper (1.36) dapper; urgency=low
+
+ [ Tollef Fog Heen ]
+ * Fix typo in find_cow_device so block devices didn't work at all.
+ Malone #31639. Thanks to Richard Nemec for the catch.
+ * Update accessibility framework, thanks to Luke Yelavich.
+
+ [ Colin Watson ]
+ * Move the /cdrom mount into the new root filesystem.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Wed, 1 Mar 2006 11:13:54 +0100
+
+casper (1.35) dapper; urgency=low
+
+ * Check for preseed/file= in /proc/cmdline and feed any given file to
+ debconf-set-selections.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Mon, 27 Feb 2006 17:32:02 +0000
+
+casper (1.34) dapper; urgency=low
+
+ [ Luke Yelavich ]
+ * Add initial accessibility support framework
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Wed, 22 Feb 2006 14:36:07 +0100
+
+casper (1.33) dapper; urgency=low
+
+ * Make sure Desktop and the espresso-$ui.desktop is owned by the Ubuntu
+ user. Malone #31991
+ * Fix check for rc6.d/S90reboot at the bottom of 25configure_init to
+ actually look in the right place.
+ * Make me the maintainer of the package.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Mon, 20 Feb 2006 09:49:02 +0100
+
+casper (1.32) dapper; urgency=low
+
+ * Fix copying of /usr/share/applications/espresso-gtkui.desktop.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Thu, 16 Feb 2006 16:47:15 +0000
+
+casper (1.31) dapper; urgency=low
+
+ [ Tollef Fog Heen ]
+ * Print message about rebooting the system when the md5 check is
+ finished.
+ * Just have one copy of the casper shutdown scripts and symlink those
+ into the right place. Malone #20978
+
+ [ Colin Watson ]
+ * Copy /usr/share/applications/espresso-gtkui.desktop to the live CD
+ user's desktop.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Tue, 14 Feb 2006 14:52:16 +0100
+
+casper (1.30) dapper; urgency=low
+
+ * Set a blank password for the ubuntu user. This hopefully resolves
+ Malone #30118
+ * Pass keyboard layout information to xserver-xorg in the "new" scheme.
+ * Set up the right console keymap.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Tue, 14 Feb 2006 14:48:14 +0100
+
+casper (1.29) dapper; urgency=low
+
+ [ Tollef Fog Heen ]
+ * Fix typo in 22gnome_panel_data
+ * Configure all detected network interfaces.
+ * Add support for putting the persistent storage in a loopback file on
+ vfat volumes
+ * Configure all detected network interfaces.
+ * Allow putting the live filesystem image on a VFAT volume
+ * Allow putting the persistent storage in a loopback file on a VFAT
+ volume
+ * Lots of cleanups
+
+ [ Colin Watson ]
+ * Change casper-reconfigure to take the target root filesystem as its
+ first argument.
+ * Add espresso-casper package with hooks to repeat some things done by
+ casper in the installed system.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Wed, 25 Jan 2006 14:25:45 +0100
+
+casper (1.28) dapper; urgency=low
+
+ * Depend on user-setup
+ * First shot at IEEE1394 support. Add sbp2 and ohci1394 as modules to
+ be copied into the initramfs.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Mon, 16 Jan 2006 22:06:35 +0100
+
+casper (1.27) dapper; urgency=low
+
+ * Try using unionfs on ppc again
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Tue, 10 Jan 2006 20:55:19 +0100
+
+casper (1.26) dapper; urgency=low
+
+ * Add persistency support
+ * Usplash integration
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Tue, 10 Jan 2006 17:53:54 +0100
+
+casper (1.25) dapper; urgency=low
+
+ * Make /rofs available to in the target system.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Mon, 9 Jan 2006 15:25:12 +0100
+
+casper (1.24) dapper; urgency=low
+
+ * For debconf-communicate, use a here-doc rather than trying to have \n
+ working in shell variables.
+ * The usplash fifo has moved, update paths accordingly. Also conflict
+ with the old usplash and depend on new enough initramfs-tools.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Fri, 6 Jan 2006 14:20:37 +0100
+
+casper (1.23) dapper; urgency=low
+
+ * Move the building to binary-dep, since we're an arch: any package
+ now.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Thu, 5 Jan 2006 10:37:31 +0100
+
+casper (1.22) dapper; urgency=low
+
+ * Bunch debconf-communicate commands together to speed up the boot a
+ little bit.
+ * Add integrity checker, this is compiled code, so casper is now arch:
+ any
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Wed, 4 Jan 2006 12:56:13 +0100
+
+casper (1.21) dapper; urgency=low
+
+ * If locale is unset, use en_US.UTF8, not whatever comes first in the
+ list of supported locales.
+ * Generate locale and set the locale in /etc/environment
+ * Use user-setup to create the user, rather than doing it ourselves.
+ * Various cleanups and fixes, such as making debconf-communicate silent
+ * Disable checkroot when booting
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Mon, 2 Jan 2006 11:00:25 +0100
+
+casper (1.20) dapper; urgency=low
+
+ * Remove a large bunch of debugging output
+ * Depend on dmsetup so the hook script can copy in that
+ * Handle both squashfs and cloop images, with run-time detection
+ * Use devmapper + cloop on powerpc, not unionfs, since unionfs is a
+ disaster there.
+ * Make sure we have both SCSI and IDE CDROM modules available in the
+ initramfs.
+ * Do some initial keyboard setup handling so X will, at least in some
+ cases, have a chance of giving the user a sane keymap.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Mon, 19 Dec 2005 14:23:13 +0100
+
+casper (1.19) dapper; urgency=low
+
+ * Switch to initramfs, so casper only survives in spirit
+ * Use unionfs instead of a writeable devmapper snapshot
+ * Remove all debconfiscation, since we're an initramfs script now
+ * Make the postinst call update-initramfs -u
+ * Mount the CD read-only explicitly
+ * Make udevinfo silent if the device is not found.
+
+ -- Tollef Fog Heen <tfheen@ubuntu.com> Tue, 13 Dec 2005 16:22:45 +0100
+
+casper (1.18) breezy; urgency=low
+
+ * Update translations from Rosetta: Greek, Spanish, French, Hungarian,
+ Brazilian Portuguese.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Mon, 19 Sep 2005 20:05:02 +0100
+
+casper (1.17) breezy; urgency=low
+
+ * Set /apps/gnome-screensaver/lock if gnome-screensaver is installed
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Fri, 16 Sep 2005 15:24:35 -0700
+
+casper (1.16) breezy; urgency=low
+
+ * Install a fake script in /lib/debian-installer.d/S72menu-exit after
+ pivoting that just calls sleep, to prevent scary console messages as d-i
+ tries to exit without its root filesystem.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Wed, 14 Sep 2005 10:28:06 +0100
+
+casper (1.15) breezy; urgency=low
+
+ * Neutralize branding in startup message
+ * Use clear in addition to reset, in hopes of concealing error messages on
+ the console from d-i's death throes
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Fri, 9 Sep 2005 11:24:14 -0700
+
+casper (1.14) breezy; urgency=low
+
+ * Set RUNNING_UNDER_GDM=yes in the user's environment to stop xscreensaver
+ locking the screen (Ubuntu #7150).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Thu, 8 Sep 2005 13:37:00 +0100
+
+casper (1.13) breezy; urgency=low
+
+ * Use reset, rather than clear, to clean up after the colored dialogs on vt1
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Wed, 7 Sep 2005 16:09:45 -0700
+
+casper (1.12) breezy; urgency=low
+
+ * Kill bterm after pivoting so that we can use vt1 rather than vt2,
+ thereby avoiding a fight between gdm and the X server (closes: Ubuntu
+ #14851).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Wed, 7 Sep 2005 15:48:40 +0100
+
+casper (1.11) breezy; urgency=low
+
+ * Remove debugging code which crept into 1.10
+ * Revert changes to casper-udeb.postinst which were intended for
+ starting usplash earlier (pre-1.10)
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Fri, 2 Sep 2005 13:43:03 -0700
+
+casper (1.10) breezy; urgency=low
+
+ * Instead of starting usplash directly, create an init script which will
+ start it later (after the new init), to avoid it being killed by
+ busybox init
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Mon, 29 Aug 2005 20:26:58 -0700
+
+casper (1.9) breezy; urgency=low
+
+ * Remember to re-run 30copy-dev from 94usplash, in order to preserve the
+ device nodes clobbered by udev
+ * Redirect stdin of /etc/init.d/udev from /dev/console, to avoid
+ incredibly obnoxious 60-second sleep because it thinks we're
+ interactive
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Mon, 29 Aug 2005 18:30:38 -0700
+
+casper (1.8) breezy; urgency=low
+
+ * Add usplash support
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Mon, 29 Aug 2005 17:30:57 -0700
+
+casper (1.7) breezy; urgency=low
+
+ * Set DEBUG_XORG_PACKAGE=yes when reconfiguring xserver-xorg. The
+ output is only written to post.log and isn't visible to the user, and
+ can be invaluable for debugging
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Mon, 22 Aug 2005 10:25:38 -0700
+
+casper (1.6) breezy; urgency=low
+
+ * Use debconf-copydb again (thanks, Tollef)
+ * Rename pre.d/20xconfig to pre.d/20prexconfig so that it is distinct from
+ post.d/20xconfig for purposes of the progress bar (no text for it; it's
+ very fast)
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Wed, 17 Aug 2005 14:55:24 -0700
+
+casper (1.5) breezy; urgency=low
+
+ * Call MAKEDEV console in post.d/20xconfig as a workaround for bug
+ #13523
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Tue, 16 Aug 2005 15:24:06 -0700
+
+casper (1.4) breezy; urgency=low
+
+ * Revert to the old debconf hack; the debconf-copydb approach needs more
+ work
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Mon, 15 Aug 2005 22:48:11 -0700
+
+casper (1.3) breezy; urgency=low
+
+ * Revert unintentional release of experimental unionfs code in 1.2
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Sat, 13 Aug 2005 11:19:50 -0700
+
+casper (1.2) breezy; urgency=low
+
+ * Fix debconf-copydb regex in 20xconfig
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Sat, 13 Aug 2005 11:07:46 -0700
+
+casper (1.1) breezy; urgency=low
+
+ * Cope with xserver-xorg's rename of force_keyboard_detection to
+ autodetect_keyboard
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Mon, 4 Jul 2005 02:52:07 -0700
+
+casper (1.0) breezy; urgency=low
+
+ * Version number bump (we've been through a stable Ubuntu release, after
+ all)
+ * Rename pre.d/10snapshot to post.d/10filesystem, as it is about to
+ become more generic
+ * Seed xserver-xorg/force_keyboard_detection to true in 20xconfig, so as
+ to cause the keyboard layout to (continue to) be autodetected based on
+ d-i settings
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Thu, 16 Jun 2005 11:21:54 -0700
+
+casper (0.65) breezy; urgency=low
+
+ * As a performance optimization, only reconfigure gnome-panel-data if
+ booting on a laptop
+ * Disable the "lock screen" menu item (Ubuntu bug#7150)
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Wed, 8 Jun 2005 16:02:14 -0700
+
+casper (0.64) breezy; urgency=low
+
+ * Merge colin.watson@canonical.com--2005/casper--debconf-copydb--0
+ - Use debconf-copydb rather than our temporary hack
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Tue, 31 May 2005 12:08:51 -0700
+
+casper (0.63) breezy; urgency=low
+
+ * Merge colin.watson@canonical.com--2005/casper--cdebconf-info--0
+ - Update for cdebconf 0.75: use db_info rather than db_x_setbacktitle.
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Mon, 18 Apr 2005 20:59:58 -0700
+
+casper (0.62) hoary; urgency=low
+
+ * Updated translations from
+ colin.watson@canonical.com--2005/casper--translations--0 (nb)
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Tue, 5 Apr 2005 09:01:02 -0700
+
+casper (0.61) hoary; urgency=low
+
+ * Updated translations from
+ colin.watson@canonical.com--2005/casper--translations--0 (el, es, ro)
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Tue, 5 Apr 2005 08:06:51 -0700
+
+casper (0.60) hoary; urgency=low
+
+ * Updated translations from
+ colin.watson@canonical.com--2005/casper--translations--0 (hu, id, pl)
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Mon, 28 Mar 2005 11:26:21 -0800
+
+casper (0.59) hoary; urgency=low
+
+ * Updated translations from
+ colin.watson@canonical.com--2005/casper--translations--0 (de, pt_BR)
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Fri, 25 Mar 2005 16:51:17 -0800
+
+casper (0.58) hoary; urgency=low
+
+ * Remove postfix shutdown links, as well as startup, to avoid an ugly error
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Thu, 24 Mar 2005 18:24:03 -0800
+
+casper (0.57) hoary; urgency=low
+
+ * Merge colin.watson@canonical.com--2005/casper--translations--0 up to
+ patch-2
+ * Preseed netcfg/wireless_essid_again for noninteractive network setup, +new
+ in netcfg 1.08ubuntu3 [colin.watson@canonical.com--2005/casper--netcfg--0]
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Wed, 23 Mar 2005 08:33:46 -0800
+
+casper (0.56) hoary; urgency=low
+
+ * Suppress error output from eject
+ * Remind the user to close the CD tray if they have one (Ubuntu #6668)
+ * Add arch-build target to debian/rules
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Tue, 22 Mar 2005 10:21:41 -0800
+
+casper (0.55) hoary; urgency=low
+
+ * Remove the hack introduced in 0.54, xorg 6.8.2-5 should be fixed
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Wed, 16 Mar 2005 18:11:05 -0800
+
+casper (0.54) hoary; urgency=low
+
+ * Temporarily set RECONFIGURE=true when reconfiguring xserver-xorg, to work
+ around a bug introduced in 6.8.2-3
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Wed, 16 Mar 2005 15:08:45 -0800
+
+casper (0.53) hoary; urgency=low
+
+ * Provide target-base-system (i.e. base system installed in /target, also
+ provided by base-installer).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Tue, 15 Mar 2005 13:01:53 +0000
+
+casper (0.52) hoary; urgency=low
+
+ * Arrange for $LANG to be set after pivot_root, so that (e.g.)
+ xserver-xorg can use it to infer the keymap (Ubuntu #7138)
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Sat, 12 Mar 2005 02:10:59 -0800
+
+casper (0.51) hoary; urgency=low
+
+ * Disable kpersonalizer startup on first login
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Sat, 5 Mar 2005 13:47:13 -0800
+
+casper (0.50) hoary; urgency=low
+
+ * Add support for configuring kdm autologin
+ * Rename 15gdm-autologin to 15autologin, and the corresponding debconf template
+ * Remove obsolete XORG_FORCE_PROBE from 20xconfig
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Thu, 3 Mar 2005 10:37:31 -0800
+
+casper (0.49) hoary; urgency=low
+
+ * Fix 20xconfig harder
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Wed, 2 Mar 2005 21:20:03 -0800
+
+casper (0.48) hoary; urgency=low
+
+ * Source confmodule in 20xconfig
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Wed, 2 Mar 2005 21:02:35 -0800
+
+casper (0.47) hoary; urgency=low
+
+ * Copy over the value of debian-installer/keymap into the target system,
+ to allow the new logic in xserver-xorg.config to work
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Wed, 2 Mar 2005 20:45:38 -0800
+
+casper (0.46) hoary; urgency=low
+
+ * Lock the live user's password entirely. Since the user is now
+ automagically logged in, continuously, both on the console and in X,
+ their password is irrelevant.
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Mon, 28 Feb 2005 08:31:13 -0800
+
+casper (0.45) hoary; urgency=low
+
+ * Enable TimedLogin in gdm, so that if the user logs out, they are
+ automatically logged back in after a few seconds (Ubuntu #6667)
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Sun, 27 Feb 2005 16:06:16 -0800
+
+casper (0.44) hoary; urgency=low
+
+ * Configure init to spawn shells on virtual consoles, rather than login
+ prompts (Ubuntu #6666)
+ * Skip X configuration if a serial console is in use
+ * Set the live user's password to be blank, rather than "ubuntu". This
+ is, paradoxically, more secure if the user decides to install
+ openssh-server, since empty passwords are disallowed by default
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Sun, 27 Feb 2005 15:40:15 -0800
+
+casper (0.43) hoary; urgency=low
+
+ * Override localechooser progress bar text to be more appropriate for the
+ live CD (closes: Ubuntu #6664).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Thu, 24 Feb 2005 19:12:00 +0000
+
+casper (0.42) hoary; urgency=low
+
+ * Preseed netcfg/no_interfaces, to avoid prompt when no network interfaces
+ can be configured (closes: Ubuntu #6107).
+ * Remove redundant DH_COMPAT setting in debian/rules, since there's
+ already a (different) debian/compat.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Tue, 22 Feb 2005 12:43:43 +0000
+
+casper (0.41) hoary; urgency=low
+
+ * Cope with change in default /etc/sudoers (admin group).
+
+ -- Colin Watson <cjwatson@ubuntu.com> Tue, 22 Feb 2005 09:14:30 +0000
+
+casper (0.40) hoary; urgency=low
+
+ * Copy /dev/tts to the live system as well as /dev/vc, for serial console.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Mon, 21 Feb 2005 19:03:54 +0000
+
+casper (0.39) hoary; urgency=low
+
+ * Fix reboot operation (cache the reboot binary)
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Thu, 10 Feb 2005 20:51:08 -0800
+
+casper (0.38) hoary; urgency=low
+
+ * Eject the CD during shutdown/reboot
+ - Awful hack to copy /dev/cdroms to the live system, because the CD is
+ mounted using devfs names
+ - Add /usr/share/casper/shutdown script to casper-udeb
+ - Copy /usr/share/casper/shutdown to /etc/rc[06].d in 25configure-init
+ * Remove caspermon binary package, inadvertently enabled (not even
+ remotely ready)
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Thu, 10 Feb 2005 13:43:56 -0800
+
+casper (0.37) hoary; urgency=low
+
+ * Fix casper-udeb/runlevel template
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Tue, 8 Feb 2005 19:37:43 -0800
+
+casper (0.36) hoary; urgency=low
+
+ * Rename post.d/25disable-init-scripts to 25configure-init
+ * Add casper-udeb/runlevel, to allow the default runlevel
+ to be set
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Tue, 8 Feb 2005 19:14:16 -0800
+
+casper (0.35) hoary; urgency=low
+
+ * Preseed netcfg/wireless_essid
+ * Remove obsolete confmodule load from pre.d/12fstab
+ * Don't mount a tmpfs on /var/run; it doesn't save a huge amount of
+ snapshot space, and packages expect their directories there to be
+ persistent
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Mon, 7 Feb 2005 15:46:52 -0800
+
+casper (0.34) hoary; urgency=low
+
+ * Use casper-reconfigure in 10adduser as well
+ * Add post.d/93save-logs to save copies of the bootstrap logs to
+ /var/log/casper
+ * Stop reconfiguring fontconfig; it insists on rebuilding the entire
+ font cache, and the only benefit was to unable subpixel hints
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Wed, 2 Feb 2005 10:42:19 -0800
+
+casper (0.33) hoary; urgency=low
+
+ * Re-upload to fix borked source package
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Sun, 30 Jan 2005 12:21:07 -0800
+
+casper (0.32) hoary; urgency=low
+
+ * Factor out debconf hackery into casper-reconfigure
+ * Mount sysfs earlier, so we don't need to mess with it in 20xconfig
+ * Break 22simple-reconfig into 22fontconfig and 22gnome-panel-data, and
+ create progress bar text for them
+ * Preseed netcfg/dhcp_failed, to avoid a prompt when DHCP fails
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Sat, 29 Jan 2005 14:03:36 -0800
+
+casper (0.31) hoary; urgency=low
+
+ * Clear tty2 and print a nice message, before signalling init
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Sat, 29 Jan 2005 13:15:44 -0800
+
+casper (0.30) hoary; urgency=low
+
+ * Reconfigure fontconfig, to enable subpixel rendering based on the
+ hardware in use
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Thu, 27 Jan 2005 14:21:49 -0800
+
+casper (0.29) hoary; urgency=low
+
+ * Fix the problem described in 0.28 by preseeding a default for
+ netcfg/get_hostname
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Tue, 25 Jan 2005 23:04:03 -0800
+
+casper (0.28) hoary; urgency=low
+
+ * Suppress network configuration questions
+
+ - The goal is to make a reasonable effort to configure one interface
+ automatically, but if that is not possible, fall back to no
+ configuration. We aren't quite there yet.
+
+ - If we fail to resolve our IP into a hostname using DNS, netcfg seems
+ to fall back to an empty value, rather than the default in the
+ template.
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Tue, 25 Jan 2005 22:55:35 -0800
+
+casper (0.27) hoary; urgency=low
+
+ * Add post.d/22simple-reconfig
+ - Reconfigure gnome-panel-data if it is installed, to set up the GNOME
+ session based on whether the system is a laptop
+ - Corresponding progress template
+ - mount /proc earlier (needed for, e.g. laptop-detect)
+ * Warn about screen blanking in X configuration progress message
+ * Simplify post.d/20xconfig and pre.d/13swap a bit
+ * Update TODO
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Sat, 22 Jan 2005 15:56:49 -0800
+
+casper (0.26) hoary; urgency=low
+
+ * Set NOPASSWD in /etc/sudoers for the initial user
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Fri, 21 Jan 2005 16:53:49 -0800
+
+casper (0.25) hoary; urgency=low
+
+ * mount /proc before signalling init, as it now uses /proc to determine
+ what is and is not a kernel thread
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Fri, 21 Jan 2005 16:04:52 -0800
+
+casper (0.24) hoary; urgency=low
+
+ * Add a backtitle properly
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Fri, 21 Jan 2005 09:07:19 -0800
+
+casper (0.23) hoary; urgency=low
+
+ * Add a backtitle
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Fri, 21 Jan 2005 09:02:01 -0800
+
+casper (0.22) hoary; urgency=low
+
+ * Search for swap on SCSI disks as well as IDE
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Wed, 19 Jan 2005 14:27:09 -0800
+
+casper (0.21) unstable; urgency=low
+
+ * Cosmetic changes to debconf templates
+ * Fix 10adduser to register debconf questions before setting their
+ values and flags
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Wed, 19 Jan 2005 14:14:20 -0800
+
+casper (0.20) hoary; urgency=low
+
+ * Remove legacy symlinks from casper/pre.d; they are now contained in
+ the relevant udebs
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Wed, 19 Jan 2005 13:22:33 -0800
+
+casper (0.19) hoary; urgency=low
+
+ * Update TODO
+ * casper-udeb Depends: md-modules
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Wed, 19 Jan 2005 11:23:51 -0800
+
+casper (0.18) hoary; urgency=low
+
+ * Enable new adduser code, using db_fset ... seen to suppress the questions
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Tue, 18 Jan 2005 15:06:48 -0800
+
+casper (0.17) hoary; urgency=low
+
+ * Convert snapshot setup to use debconf instead of hardcoded parameters
+ * Remove obselete-before-being-used username template
+ * Convert post.d/10adduser to use debconf passthrough to the passwd package,
+ and thus share its user-adding code rather than duplicating it.
+ - But don't enable it yet, since we need to find a way to prevent its
+ questions from being asked
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Tue, 18 Jan 2005 13:04:48 -0800
+
+casper (0.16) hoary; urgency=low
+
+ * casper-udeb Depends: casper-check, harddrive-detection
+ * Automatically find and enable swap devices
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Tue, 18 Jan 2005 11:23:48 -0800
+
+casper (0.15) hoary; urgency=low
+
+ * Set anna/standard_modules to false at startup to suppress unnecessary
+ udeb retrieval.
+
+ -- Colin Watson <cjwatson@ubuntu.com> Tue, 18 Jan 2005 13:41:00 +0000
+
+casper (0.14) hoary; urgency=low
+
+ * Enable X autoconfiguration(!)
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Sat, 15 Jan 2005 02:19:58 -0800
+
+casper (0.13) hoary; urgency=low
+
+ * Rename templates so that they are named after the {pre,post}.d hook
+ which uses them
+ * Remove some unused templates
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Fri, 14 Jan 2005 10:11:02 -0800
+
+casper (0.12) hoary; urgency=low
+
+ * Add debconf templates for various things that we currently hardcode.
+ Not actually used yet due to need for testing, but having the
+ templates present greatly simplifies testing the remaining integration
+ work
+
+ -- Matt Zimmerman <mdz@ubuntu.com> Thu, 13 Jan 2005 20:32:39 -0800
+
+casper (0.11) hoary; urgency=low
+
+ * Update post.d/20xconfig to use debconf passthrough to cdebconf
+ (requires debconf 1.4.42 and cdebconf 0.75), but leave it disabled for
+ now
+ * Create /etc/fstab in the target (this also seems to solve the problem
+ with noatime disappearing, and so should reduce snapshot utilization)
+
+ -- Matt Zimmerman <mdz@debian.org> Thu, 13 Jan 2005 18:25:36 -0800
+
+casper (0.10) hoary; urgency=low
+
+ * Remove rc?.d/K??hwclock.sh links, to avoid changing the system clock
+ during reboot or shutdown
+
+ -- Matt Zimmerman <mdz@debian.org> Thu, 13 Jan 2005 18:13:31 -0800
+
+casper (0.9) hoary; urgency=low
+
+ * Fix gdm autologin configuration (broken in 0.8)
+
+ -- Matt Zimmerman <mdz@debian.org> Wed, 12 Jan 2005 10:52:05 -0800
+
+casper (0.8) hoary; urgency=low
+
+ * Add debian-installer/casper-udeb/title template, to specify more
+ readable menu item text
+ * Create /usr/lib/casper/{pre,post}.d and move all of our internal logic
+ there
+ * Create temporary symlinks in pre.d for the prebaseconfig.d items we
+ want
+ * Convert errors into proper error dialogs
+ * Make some pre.d scripts idempotent, for ease of testing
+
+ -- Matt Zimmerman <mdz@debian.org> Tue, 11 Jan 2005 16:59:35 -0800
+
+casper (0.7) hoary; urgency=low
+
+ * Disable X configuration temporarily; need to resolve debconf issues
+
+ -- Matt Zimmerman <mdz@canonical.com> Tue, 11 Jan 2005 13:14:43 -0800
+
+casper (0.6) hoary; urgency=low
+
+ * Allow "modprobe ext2" to fail; apparently it's sometimes compiled in
+
+ -- Matt Zimmerman <mdz@debian.org> Tue, 11 Jan 2005 12:12:28 -0800
+
+casper (0.5) hoary; urgency=low
+
+ * Attempt to configure X
+ - This doesn't work very well yet (PCI BusID doesn't seem to get
+ updated, for example), so we still don't start gdm by default)
+ * Conditionalize some of the configuration code, so we automatically do
+ the right thing if gdm or X isn't installed
+ * Add German translation from Andreas Mueller
+ * modprobe ext2, to let powerpc work (this should probably happen
+ elsewhere, but for now...)
+
+ -- Matt Zimmerman <mdz@debian.org> Sun, 9 Jan 2005 17:49:56 -0800
+
+casper (0.4) hoary; urgency=low
+
+ * Mount tmpfs on /tmp and /var/run, should save many writes to the snapshot
+
+ -- Matt Zimmerman <mdz@debian.org> Fri, 7 Jan 2005 18:35:26 -0800
+
+casper (0.3) hoary; urgency=low
+
+ * Disable anacron and postfix startup
+ * Don't cripple /bin/apt-install in d-i (this was a workaround to
+ prevent d-i from installing packages which should have been present in
+ the filesystem image anyway, but weren't)
+
+ -- Matt Zimmerman <mdz@debian.org> Fri, 7 Jan 2005 18:10:55 -0800
+
+casper (0.2) hoary; urgency=low
+
+ * Use mount --move to move the cdrom mount point, so that we can unmount
+ /initrd and free up the memory used by d-i
+ * Use /dev/ram1 rather than /dev/ram0 for the COW stuff, since /dev/ram0
+ is used for initrds and we want to avoid confusion
+ * Organize casper-udeb.postinst into shell functions
+ * Add a progress bar
+ * Add a debian/compat file (version 4)
+
+ -- Matt Zimmerman <mdz@debian.org> Fri, 7 Jan 2005 08:01:21 -0800
+
+casper (0.1) hoary; urgency=low
+
+ * Initial Release.
+
+ -- Matt Zimmerman <mdz@canonical.com> Wed, 5 Jan 2005 14:30:28 -0800
--- /dev/null
+Boot Parameters for Debian Live
+-------------------------------
+
+Updated for live-initramfs 1.110.3-1 on 2007-10-22.
+
+These options (can be combined) work from the bootloader prompt:
+
+live access=ACCESS
+live console=TTY,SPEED
+live debug
+live fetch=URL
+live hostname=HOSTNAME
+live username=USER
+live userfullname=USERFULLNAME
+live integrity-check
+live ip=[CLIENT_IP]:[SERVER_IP]:[GATEWAY_IP]:[NETMASK]:[HOSTNAME]:[DEVICE]:[AUTOCONF] [,[CLIENT_IP]:[SERVER_IP]:[GATEWAY_IP]:[NETMASK]:[HOSTNAME]:[DEVICE]:[AUTOCONF]]*
+live ip[=frommedia]
+live {keyb|kbd-chooser/method}=KEYBOARD
+live {klayout|console-setup/layoutcode}=LAYOUT
+live {kvariant|console-setup/variantcode}=VARIANT
+live {kmodel|console-setup/modelcode}=CODE
+live koptions=OPTIONS
+live live-getty
+live {live-media|bootfrom}=DEVICE
+live {live-media-encryption|encryption}=TYPE
+live live-media-offset=BYTES
+live live-media-path=PATH
+live live-media-timeout=SECONDS
+live {locale|debian-installer/locale}=LOCALE
+live module=NAME
+live netboot[=nfs|cifs]
+live nfsopts=
+live noautologin
+live noxautologin
+live nofastboot
+live nopersistent
+live nosudo
+live noswap
+live nouser
+live noxautoconfig
+live persistent
+live {preseed/file|file}=FILE
+live package/question=VALUE
+live quickreboot
+live showmounts
+live timezone=TIMEZONE
+live todisk=DEVICE
+live toram
+live union=unionfs|aufs
+live utc=yes|no
+live xdebconf
+live xvideomode=RESOLUTION
+
+Values for the vga kernel parameter:
+
+Colours 640x400 640x480 800x600 1024x768 1152x864 1280x1024 1600x1200
+--------+--------------------------------------------------------------
+ 4 bits | ? ? 0x302 ? ? ? ?
+ 8 bits | 0x300 0x301 0x303 0x305 0x161 0x307 0x31C
+15 bits | ? 0x310 0x313 0x316 0x162 0x319 0x31D
+16 bits | ? 0x311 0x314 0x317 0x163 0x31A 0x31E
+24 bits | ? 0x312 0x315 0x318 ? 0x31B 0x31F
+32 bits | ? ? ? ? 0x164 ?
+
+Colours 640x400 640x480 800x600 1024x768 1152x864 1280x1024 1600x1200
+--------+--------------------------------------------------------------
+ 4 bits | ? ? 770 ? ? ? ?
+ 8 bits | 768 769 771 773 353 775 796
+15 bits | ? 784 787 790 354 793 797
+16 bits | ? 758 788 791 355 794 798
+24 bits | ? 786 789 792 ? 795 799
+32 bits | ? ? ? ? 356 ?
--- /dev/null
+#!/bin/sh
+
+# initramfs hook for live-initramfs (Debian Live)
+
+set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+. /usr/share/initramfs-tools/hook-functions
+
+# live-initramfs hook
+
+# Handling live-initramfs
+
+# Configuration
+if [ -r /etc/live.conf ]
+then
+ . /etc/live.conf
+
+ mkdir -p "${DESTDIR}"/etc
+ cp /etc/live.conf "${DESTDIR}"/etc
+fi
+
+# Directories
+mkdir -p "${DESTDIR}"/lib/live-initramfs
+
+# Executables
+copy_exec /usr/share/live-initramfs/live-reconfigure /bin
+copy_exec /usr/share/live-initramfs/live-preseed /bin
+
+# Scripts
+cp /usr/share/initramfs-tools/scripts/live-functions "${DESTDIR}"/scripts
+cp /usr/share/initramfs-tools/scripts/live-helpers "${DESTDIR}"/scripts
+
+# Handling other stuff
+
+# Configuration: keymap (usefull when using encryption)
+if [ -x /bin/loadkeys ] && [ -r /etc/console/boottime.kmap.gz ]
+then
+ copy_exec /bin/loadkeys /bin
+
+ mkdir -p "${DESTDIR}"/etc
+ cp /etc/console/boottime.kmap.gz "${DESTDIR}"/etc
+fi
+
+# Configuration: Unique ID
+if [ -n "${LIVE_GENERATE_UUID}" ]
+then
+ mkdir -p "${DESTDIR}"/conf
+ uuidgen -r > "${DESTDIR}"/conf/uuid.conf
+fi
+
+# Filesystem: cifs
+if [ -x /sbin/mount.cifs ]
+then
+ copy_exec /sbin/mount.cifs /sbin
+ manual_add_modules cifs
+fi
+
+# Filesystem: ext3
+manual_add_modules ext3
+
+# Filesystem: squashfs
+copy_exec /sbin/losetup /sbin
+manual_add_modules loop
+manual_add_modules squashfs
+
+# Filesystem: unionfs/aufs
+manual_add_modules unionfs
+manual_add_modules aufs
+
+# Filesystem: vfat
+manual_add_modules nls_cp437
+manual_add_modules nls_iso8859-1
+manual_add_modules nls_utf8
+manual_add_modules vfat
+
+# Hardware: cdrom
+manual_add_modules ide-cd
+manual_add_modules ide-generic
+manual_add_modules ohci1394
+manual_add_modules sbp2
+manual_add_modules sr_mod
+
+# Hardware: network
+auto_add_modules net
+
+# Program: eject
+if [ -x /usr/bin/eject ]
+then
+ copy_exec /usr/bin/eject /bin
+fi
+
+# Program: md5sum
+copy_exec /usr/bin/md5sum /bin
+
+# Program: udev
+copy_exec /sbin/udevtrigger /sbin
+copy_exec /sbin/udevsettle /sbin
+copy_exec /usr/bin/udevinfo /bin
+
+# Program: wget
+if [ -x /usr/bin/wget ]
+then
+ copy_exec /usr/bin/wget /bin
+fi
--- /dev/null
+all: doc
+
+doc: doc_man doc_html
+
+doc_html: html-stamp
+
+html-stamp: live-initramfs.en.7.txt live-snapshot.en.1.txt
+ asciidoc -b xhtml11 live-initramfs.en.7.txt
+ asciidoc -b xhtml11 live-snapshot.en.1.txt
+ touch html-stamp
+
+doc_man: man-stamp
+
+man-stamp: live-initramfs.en.7.txt live-snapshot.en.1.txt
+ # live-initramfs:
+ asciidoc -d manpage -b docbook live-initramfs.en.7.txt
+ xsltproc /usr/share/xml/docbook/stylesheet/nwalsh/manpages/docbook.xsl live-initramfs.en.7.xml
+ mv live-initramfs.7 live-initramfs.en.7
+ # live-snapshot:
+ asciidoc -d manpage -b docbook live-snapshot.en.1.txt
+ xsltproc /usr/share/xml/docbook/stylesheet/nwalsh/manpages/docbook.xsl live-snapshot.en.1.xml
+ mv live-snapshot.1 live-snapshot.en.1
+ touch man-stamp
+
+clean:
+ rm -f live-initramfs.en.7.html live-initramfs.en.7.xml live-initramfs.en.7
+ rm -f live-snapshot.en.1.html live-snapshot.en.1.xml live-snapshot.en.1
+ rm -f html-stamp man-stamp
--- /dev/null
+live-initramfs(7)
+=================
+
+Name
+----
+live-initramfs - Debian Live initramfs hook
+
+Synopsis
+--------
+BOOT=live
+
+as kernel parameter at boot prompt.
+
+Description
+-----------
+
+live-initramfs is a hook for the initramfs-tools, used to generate a initramfs
+capable to boot live systems, such as those created by *live-helper*(7).
+This includes the Debian Live isos, netboot tarballs, and usb stick images.
+
+At boot time it will look for a (read-only) media containing a "/live"
+directory where a root filesystems (often a compressed filesystem image like
+squashfs) is stored. If found, it will create a writable environment, using
+unionfs, for Debian like systems to boot from.
+
+You probably do not want to install this package onto a non-live system,
+although it will do no harm.
+
+live-initramfs is a fork of link:http://packages.ubuntu.com/casper/[casper].
+casper was originally written by Tollef Fog Heen <tfheen@canonical.com>
+and Matt Zimmerman <mdz@canonical.com>.
+
+Boot options
+------------
+
+Here is the complete list of recognized boot parameters by live-initramfs.
+
+ access=*ACCESS*::
+
+Set the accessibility level for physically or visually impared users. ACCESS
+must be one of v1, v2, v3, m1, or m2. v1=lesser visual impairment, v2=moderate
+visual impairment, v3=blindness, m1=minor motor difficulties, m2=moderate motor
+difficulties.
+
+ console=*TTY,SPEED*::
+
+Set the default console to be used with the "live-getty" option. Example:
+"console=ttyS0,115200"
+
+ debug::
+
+Makes initramfs boot process more verbose.
+
+ fetch=*URL*::
+
+Another form of netboot by downloading a squashfs image from a given url,
+copying to ram and booting it.
+
+ hostname=*HOSTNAME*, username=*USER*, userfullname=*USERFULLNAME*::
+
+Those parameters lets you override values read from the config file.
+
+ ignore_uuid
+
+Do not check that any UUID embedded in the initramfs matches the discovered
+medium. live-initramfs may be told to generate a UUID by setting
+LIVE_GENERATE_UUID=1 when building the initramfs.
+
+ integrity-check::
+
+If specified, an MD5 sum is calculated on the live media during boot and
+compared to the value found in md5sum.txt found in the root directory of the
+live media.
+
+ ip=**[CLIENT_IP]:[SERVER_IP]:[GATEWAY_IP]:[NETMASK]:[HOSTNAME]:[DEVICE]:[AUTOCONF] [,[CLIENT_IP]:[SERVER_IP]:[GATEWAY_IP]:[NETMASK]:[HOSTNAME]:[DEVICE]:[AUTOCONF]]***::
+
+Let you specify the name(s) and the options of the interface(s) that should be
+configured at boot time. Do not specify this if you want to use dhcp (default).
+It will be changed in a future release to mimick official kernel boot param
+specification (e.g. ip=10.0.0.1::10.0.0.254:255.255.255.0::eth0,:::::eth1:dhcp).
+
+ ip[=**frommedia**]::
+
+If this variable is set, dhcp and static configuration are just skipped and the
+system will use the (must be) media-preconfigured /etc/network/interfaces
+instead.
+
+ {keyb|kbd-chooser/method}=**KEYBOARD**, {klayout|console-setup/layoutcode}=**LAYOUT**, {kvariant|console-setup/variantcode}=**VARIANT**, {kmodel|console-setup/modelcode}=**CODE**, koptions=**OPTIONS**::
+
+Configure the running keyboard as specified, if this one misses live-initramfs
+behaves as if "keyb=us" was specified. It will be interfered from "locale=" if
+locale is only 2 lowecase letters as a special case. You could also specify
+console layout, variant, code, and options (no defaults).
+
+ live-getty::
+
+This changes the auto-login on virtual terminals to use the (experimental)
+live-getty code. With this option set the standard kernel argument "console=" is
+parsed and if a serial console is specified then live-getty is used to autologin
+on the serial console.
+
+ {live-media|bootfrom}=**DEVICE**::
+
+If you specify one of this two equivalent forms, live-initramfs will first try
+to find this device for the "/live" directory where the read-only root
+filesystem should reside. If it did not find something usable, the normal scan
+for block devices is performed.
+
+ {live-media-encryption|encryption}=**TYPE**::
+
+live-initramfs will mount the encrypted rootfs TYPE, asking the passphrase,
+useful to build paranoid live systems :-). TYPE supported so far are "aes" for
+loop-aes encryption type.
+
+ live-media-offset=**BYTES**::
+
+This way you could tell live-initramfs that your image starts at offset BYTES in
+the above specified or autodiscovered device, this could be useful to hide the
+Debian Live iso or image inside another iso or image, to create "clean" images.
+
+ live-media-path=**PATH**::
+
+Sets the path to the live filesystem on the medium. By default, it is set to
+'/live' and you should not change that unless you have customized your media
+accordingly.
+
+ live-media-timeout=**SECONDS**::
+
+Set the timeout in seconds for the device specified by "live-media=" to become
+ready before giving up.
+
+ {locale|debian-installer/locale}=**LOCALE**::
+
+Configure the running locale as specified, if not present the live-media rootfs
+configured locale will be used and if also this one misses live-initramfs behave
+as "locale=en_US.UTF-8" was specified. If only 2 lowercase letter are specified
+(like "it"), the "maybe wanted" locale is generated (like en:EN.UTF-8), in this
+case if also "keyb=" is unspecified is set with those 2 lowercase letters
+(keyb=us). Beside that facility, only UTF8 locales are supported by
+live-initramfs.
+
+ module=**NAME**::
+
+Instead of using the default optional file "filesystem.module" (see below)
+another file could be specified without the extension ".module"; it should be
+placed on "/live" directory of the live medium.
+
+ netboot[=**nfs**|**cifs**]::
+
+This tells live-initramfs to perform a network mount. The parameter "nfsroot="
+(with optional "nfsopts="), should specify where is the location of the root
+filesystem. With no args, will try cifs first, and if it fails nfs.
+
+ nfsopts=::
+
+This lets you specify custom nfs options.
+
+ noautologin::
+
+This parameter disables the automatic terminal login only, not touching gdk/kdm.
+
+ noxautologin::
+
+This parameter disables the automatic login of gdm/kdm only, not touching
+terminals.
+
+ nofastboot::
+
+This parameter disables the default disabling of filesystem checks in
+/etc/fstab. If you have static filesystems on your harddisk and you want them to
+be checked at boot time, use this parameter, otherwise they are skipped.
+
+ nopersistent::
+
+disables the "persistent" feature, useful if the bootloader (like syslinux) has
+been installed with persistent enabled.
+
+ noprompt
+
+Do not prompt to eject the CD on reboot.
+
+ nosudo::
+
+This parameter disables the automatic configuration of sudo.
+
+ noswap::
+
+This parameter disables usage of local swap partitions.
+
+ nouser::
+
+This parameter disables the creation of the default user completely.
+
+ noxautoconfig::
+
+This parameter disables Xorg auto-reconfiguration at boot time. This is valuable
+if you either do the detection on your own, or, if you want to ship a custom,
+premade xorg.conf in your live system.
+
+ persistent::
+
+live-initramfs will look for persistent and snapshot partitions or files labeled
+"live-rw", "home-rw", and files called "live-sn*", "home-sn*" and will try to,
+in order: mount as /cow the first, mount the second in /home, and just copy the
+contents of the latter in appropriate locations (snapshots). Snapshots will be
+tried to be updated on reboot/shutdown. Look at live-snapshot(1) for more
+informations.
+
+ {preseed/file|file}=**FILE**::
+
+A path to a file present on the rootfs could be used to preseed debconf
+database.
+
+ package/question=**VALUE**::
+
+All debian installed packages could be preseeded from command-line that way,
+beware of blanks spaces, they will interfere with parsing, use a preseed file in
+this case.
+
+ quickreboot::
+
+This option causes live-initramfs to reboot without attempting to eject the
+media and without asking the user to remove the boot media.
+
+ showmounts::
+
+This parameter will make live-initramfs to show on "/" the ro filesystems
+(mostly compressed) on "/live". This is not enabled by default because could
+lead to problems by applications like "mono" which store binary paths on
+installation.
+
+ textonly
+
+Start up to text-mode shell prompts, disabling the graphical user interface.
+
+ timezone=**TIMEZONE**::
+
+By default, timezone is set to UTC. Using the timezone parameter, you can set it
+to your local zone, e.g. Europe/Zurich.
+
+ todisk=**DEVICE**::
+
+Adding this parameter, live-initramfs will try to copy the entire read-only
+media to the specified device before mounting the root filesystem. It probably
+needs a lot of free space. Subsequent boots should then skip this step and just
+specify the "live-media=DEVICE" boot parameter with the same DEVICE used this
+time.
+
+ toram::
+
+Adding this parameter, live-initramfs will try to copy the whole read-only media
+to the computer's RAM before mounting the root filesystem. This could need a lot
+of ram, according to the space used by the read-only media.
+
+ union=**unionfs**|**aufs**::
+
+By default, live-initramfs uses unionfs. With this parameter, you can switch to
+aufs.
+
+ utc=**yes**|**no**::
+
+By default, Debian systems do assume that the hardware clock is set to UTC. You
+can change or explicitly set it with this parameter.
+
+ xdebconf::
+
+Uses xdebconfigurator, if present on the rootfs, to configure X instead of the
+standard procedure (experimental).
+
+ xvideomode=**RESOLUTION**::
+
+Doesn't do xorg autodetection, but enforces a given resolution.
+
+Files
+-----
+
+ /etc/live.conf
+
+Some variables can be configured via this config file (inside the live system).
+
+ /live/filesystem.module
+
+This optional file (inside the live media) contains a list of white-space or
+carriage-return-separated file names corresponding to disk images in the "/live"
+directory. If this file exists, only images listed here will be merged into the
+root unionfs, and they will be loaded in the order listed here. The first entry
+in this file will be the "lowest" point in the unionfs, and the last file in
+this list will be on the "top" of the unionfs, directly below /cow. Without
+this file, any images in the "/live" directory are loaded in alphanumeric order.
+
+See also
+--------
+
+live-snapshot(1), initramfs-tools(8), live-helper(7), live-initscripts(7),
+live-webhelper(7)
+
+Bugs
+----
+
+Report bugs against live-initramfs
+link:http://packages.qa.debian.org/live-initramfs[http://packages.qa.debian.org/live-initramfs].
+
+Homepage
+--------
+
+More information about the Debian Live project can be found at
+link:http://debian-live.alioth.debian.org/[http://debian-live.alioth.debian.org/] and
+link:http://wiki.debian.org/DebianLive/[http://wiki.debian.org/DebianLive/].
+
+Authors
+-------
+
+live-initramfs is maintained by Daniel Baumann <daniel@debian.org>
+for the Debian project.
+
+live-initramfs is a fork of link:http://packages.ubuntu.com/casper/[casper].
+casper was originally written by Tollef Fog Heen <tfheen@canonical.com>
+and Matt Zimmerman <mdz@canonical.com>.
--- /dev/null
+live-snapshot(1)
+================
+
+Name
+----
+live-snapshot - a simple script to ease persistence usage
+
+Synopsis
+--------
+live-snapshot [-c|--cow **DIRECTORY**s] [-d|--device **DEVICE**] [-e|--exclude-list **FILE**] [-o|--output **FILE**] [-t|--type **TYPE**]
+
+live-snapshot [-r|--resync-string **STRING**]
+
+live-snapshot [-h|--help]
+
+live-snapshot [-u|--usage]
+
+live-snapshot [-v|--version]
+
+Description
+-----------
+
+live-snapshot is a script which can be used to build the right types of
+persistent image files supported by live-initramfs(7). It is also used on
+exit by the live-initramfs init script to resync the boot-found snapshots
+devices.
+
+Options
+-------
+
+ -c, --cow **DIRECTORY**::
+
+specifies the input directory to be cloned in the image file. Its default value
+"/live/cow" should be right for most uses. However it could be handy to specify
+"/home" and type ext2 for the type to prepare an image file suited to be
+directly mounted by live-initramfs as home.
+
+ -d, --device **DEVICE**::
+
+sets the device where the media which the snapshot/persistence file/partition
+will be put. If it is not specified, a tmpfs will be used and linked to the
+user's desktop to move it where it is needed. If the device has no filesystem,
+an ext2 fs will be automatically created and labelled according to the values
+specified after the "--output" value or with a sane default.
+
+ -e, --exclude-list **FILE**::
+
+a file containing a list of filenames/paths that should not be saved. This exclude list will be remebered on the target snapshot media for reuse.
+
+ -o, --output **FILE**::
+
+the filename/label used for the output file/partition. If left blank, live-snapshot will search for a proper file on the device or use the whole partition.
+
+ -r, --resync-string **STRING**::
+
+internally used on resyncs.
+
+ -t, --type **TYPE**::
+
+Type could be one of "cpio", "squashfs" or "ext2".
+
+ -h, --help::
+
+display help and exit
+
+ -u, --usage::
+
+show usage and exit
+
+ -v, --version::
+
+output version information and exit
+
+See also
+--------
+
+live-initramfs(8)
+
+This program is a part of live-initramfs.
+
+Bugs
+----
+
+Report bugs against live-initramfs
+link:http://packages.qa.debian.org/live-initramfs[http://packages.qa.debian.org/live-initramfs].
+
+Homepage
+--------
+
+More information about the Debian Live project can be found at
+link:http://debian-live.alioth.debian.org/[http://debian-live.alioth.debian.org/] and
+link:http://wiki.debian.org/DebianLive/[http://wiki.debian.org/DebianLive/].
+
+Authors
+-------
+
+live-initramfs is maintained by Daniel Baumann <daniel@debian.org> for the
+Debian project. live-initramfs is a fork of
+link:http://packages.ubuntu.com/casper/[casper]. casper was originally written
+by Tollef Fog Heen <tfheen@canonical.com> and Matt Zimmerman <mdz@canonical.com>.
--- /dev/null
+live-snapshot(1)
+================
+
+Name
+----
+live-snapshot - uno script per facilitare l'uso della persistenza sui sistemi live
+
+Synopsis
+--------
+live-snapshot [-c|--cow **DIRECTORY**s] [-d|--device **DEVICE**] [-e|--exclude-list **FILE**] [-o|--output **FILE**] [-t|--type **TYPE**]
+
+live-snapshot [-r|--resync-string **STRING**]
+
+live-snapshot [-h|--help]
+
+live-snapshot [-u|--usage]
+
+live-snapshot [-v|--version]
+
+Description
+-----------
+
+live-snapshot `e uno script che pu`o essere usato per costruire un file immagine formattato
+correttamente per essere usato da live-initramfs(7); viene inoltre usato dallo script di
+init di live-initramfs in uscita per sincronizzare i device di snapshot riconosciuti al boot.
+
+Options
+-------
+
+ -c, --cow **DIRECTORY**::
+
+specifica la directory da clonare nel file immagine. Il valore di default `e
+lo stesso default usato da live-initramfs per la sua directory COW (copy on
+write, un tempo situata in "/live/cow") ed `e sufficiente per gli usi comuni.
+Pu`o essere utile tuttavia specificare "/home" e come tipo "ext2" per
+preparare un file immagine adatto per essere montato da live-initramfs come
+"/home" al boot.
+
+ -d, --device **DEVICE**::
+
+seleziona il device dove il file/partizione di snapshot o persistenza dovr`a
+essere sistemato. Se il device non ha un filesystem, ne verr`a creato uno
+automaticamente, di tipo ext2 ed etichettato (label) in base al valore
+specificato nell'opzione "--output" o con un default. Se non viene specificato
+nessun device, verr`a usato un "tmpfs" linkato sul desktop dell'utente, in
+modo che port`a essere mosso dove si vuole.
+
+ -e, --exclude-list **FILE**::
+
+un file contenente una lista di file e percorsi che NON devono essere salvati.
+Questa lista verr`a inclusa nello snapshot per essere riutilizzata.
+
+ -o, --output **FILE**::
+
+il nome del file o l'etichetta (label) da usare per il file o la partizione di
+snapshot. Se non specificata, live-snapshot cercher\`a un file all'interno
+del device oppure user`a l'intera partizione.
+
+ -r, --resync-string **STRING**::
+
+usato internamente nelle sincronizzazioni dallo script di init di
+live-initramfs. Il formato pu\`o cambiare, usatelo a vostro rischio.
+
+ -t, --type **TYPE**::
+
+il tipo pu`o essere "cpio", "squashfs" o "ext2".
+
+ -h, --help::
+
+mostra l'aiuto ed esce
+
+ -u, --usage::
+
+mostra l'utilizzo ed esce
+
+ -v, --version::
+
+da informazioni sulla versione ed esce
+
+See also
+--------
+
+live-initramfs(8)
+
+Questo programma fa parte di live-initramfs.
+
+Bugs
+----
+
+Riportate i bug sul pacchetto live-initramfs
+link:http://packages.qa.debian.org/live-initramfs[http://packages.qa.debian.org/live-initramfs].
+
+Homepage
+--------
+
+Ulteriori informazioni su progetto Debian Live possono essere trovate su
+link:http://debian-live.alioth.debian.org/[http://debian-live.alioth.debian.org/] e
+link:http://wiki.debian.org/DebianLive/[http://wiki.debian.org/DebianLive/].
+
+Authors
+-------
+
+live-initramfs `e mantenuto da Daniel Baumann <daniel@debian.org> per il
+progetto Debian. live-initramfs `e un fork di
+link:http://packages.ubuntu.com/casper[casper]. casper `e stato scritto
+originariamente da Tollef Fog Heen <tfheen@canonical.com> e Matt Zimmerman
+<mdz@canonical.com>.
--- /dev/null
+--- a/hooks/live 2007-11-01 22:26:49.063100777 +0100
++++ b/hooks/live 2007-11-01 22:27:28.560386219 +0100
+@@ -74,6 +74,8 @@
+ # Filesystem: ext3
+ manual_add_modules ext3
+
++copy_exec /usr/bin/rsync
++
+ # Filesystem: squashfs
+ copy_exec /sbin/losetup /sbin
+ manual_add_modules loop
--- /dev/null
+--- a/scripts/live 2007-11-01 22:25:41.567739580 +0100
++++ b/scripts/live 2007-11-01 23:03:02.413731337 +0100
+@@ -609,9 +609,19 @@
+ else
+ if [ -n "${MODULETORAMFILE}" ]
+ then
+- cp ${MODULETORAMFILE} ${copyto} # copy only the filesystem module
+- else
+- cp -a ${copyfrom}/* ${copyto} # "cp -a" from busybox also copies hidden files
++ log_begin_msg "Copying $MODULETORAMFILE to RAM" >/dev/console
++ if [ -x /usr/bin/rsync ] ; then
++ rsync -a --progress ${MODULETORAMFILE} ${copyto} 1>/dev/console # copy only the filesystem module
++ else
++ cp ${MODULETORAMFILE} ${copyto} # copy only the filesystem module
++ fi
++ else
++ log_begin_msg "Copying medium to RAM" >/dev/console
++ if [ -x /usr/bin/rsync ] ; then
++ rsync -a --progress ${copyfrom}/* ${copyto} 1>/dev/console # "cp -a" from busybox also copies hidden files
++ else
++ cp -a ${copyfrom}/* ${copyto} # "cp -a" from busybox also copies hidden files
++ fi
+ fi
+
+ livefs_root
--- /dev/null
+#!/bin/sh
+
+# set -e
+
+export PATH="/root/usr/bin:/root/usr/sbin:/root/bin:/root/sbin:/usr/bin:/usr/sbin:/bin:/sbin"
+
+echo "/root/lib" >> /etc/ld.so.conf
+echo "/root/usr/lib" >> /etc/ld.so.conf
+
+mountpoint="/live/image"
+LIVE_MEDIA_PATH="live"
+
+root_persistence="live-rw"
+home_persistence="home-rw"
+root_snapshot_label="live-sn"
+home_snapshot_label="home-sn"
+
+USERNAME="user"
+USERFULLNAME="Live user"
+HOSTNAME="host"
+
+mkdir -p "${mountpoint}"
+
+[ -f /etc/live.conf ] && . /etc/live.conf
+export USERNAME USERFULLNAME HOSTNAME
+
+. /scripts/live-helpers
+
+if [ ! -f /live.vars ]
+then
+ touch /live.vars
+fi
+
+Arguments ()
+{
+ PRESEEDS=""
+
+ for ARGUMENT in $(cat /proc/cmdline)
+ do
+ case "${ARGUMENT}" in
+ access=*)
+ ACCESS="${ARGUMENT#access=}"
+ export ACCESS
+ ;;
+
+ console=*)
+ DEFCONSOLE="${ARGUMENT#*=}"
+ export DEFCONSOLE
+ ;;
+
+ debug)
+ DEBUG="Yes"
+ export DEBUG
+
+ set -x
+ ;;
+
+ fetch=*)
+ FETCH="${ARGUMENT#fetch=}"
+ export FETCH
+ ;;
+
+ hostname=*)
+ HOSTNAME="${ARGUMENT#hostname=}"
+ LIVECONF="changed"
+ export HOSTNAME LIVECONF
+ ;;
+
+ username=*)
+ USERNAME="${ARGUMENT#username=}"
+ LIVECONF="changed"
+ export USERNAME LIVECONF
+ ;;
+
+ userfullname=*)
+ USERFULLNAME="${ARGUMENT#userfullname=}"
+ LIVECONF="changed"
+ export USERFULLNAME LIVECONF
+ ;;
+
+ ignore_uuid)
+ IGNORE_UUID="Yes"
+ export IGNORE_UUID
+ ;;
+
+ ip=*)
+ STATICIP="${ARGUMENT#ip=}"
+
+ if [ -z "${STATICIP}" ]
+ then
+ STATICIP="frommedia"
+ fi
+
+ export STATICIP
+ ;;
+
+ keyb=*|kbd-chooser/method=*)
+ KBD="${ARGUMENT#*=}"
+ export KBD
+ ;;
+
+ klayout=*|console-setup/layoutcode=*)
+ KLAYOUT="${ARGUMENT#*=}"
+ export KLAYOUT
+ ;;
+
+ kvariant=*|console-setup/variantcode=*)
+ KVARIANT="${ARGUMENT#*=}"
+ export KVARIANT
+ ;;
+
+ kmodel=*|console-setup/modelcode=*)
+ KMODEL="${ARGUMENT#*=}"
+ export KMODEL
+ ;;
+
+ koptions=*)
+ KOPTIONS="${ARGUMENT#koptions=}"
+ export KOPTIONS
+ ;;
+
+ live-getty)
+ LIVE_GETTY="1"
+ export LIVE_GETTY
+ ;;
+
+ live-media=*|bootfrom=*)
+ LIVE_MEDIA="${ARGUMENT#*=}"
+ export LIVE_MEDIA
+ ;;
+
+ live-media-encryption=*|encryption=*)
+ LIVE_MEDIA_ENCRYPTION="${ARGUMENT#*=}"
+ export LIVE_MEDIA_ENCRYPTION
+ ;;
+
+ live-media-offset=*)
+ LIVE_MEDIA_OFFSET="${ARGUMENT#live-media-offset=}"
+ export LIVE_MEDIA_OFFSET
+ ;;
+
+ live-media-path=*)
+ LIVE_MEDIA_PATH="${ARGUMENT#live-media-path=}"
+ export LIVE_MEDIA_PATH
+ ;;
+
+ live-media-timeout=*)
+ LIVE_MEDIA_TIMEOUT="${ARGUMENT#live-media-timeout=}"
+ export LIVE_MEDIA_TIMEOUT
+ ;;
+
+ locale=*|debian-installer/locale=*)
+ LOCALE="${ARGUMENT#*=}"
+ export LOCALE
+ ;;
+
+ module=*)
+ MODULE="${ARGUMENT#module=}"
+ export MODULE
+ ;;
+
+ netboot=*)
+ NETBOOT="${ARGUMENT#netboot=}"
+ export NETBOOT
+ ;;
+
+ nfsopts=*)
+ NFSOPTS="${ARGUMENT#nfsopts=}"
+ export NFSOPTS
+ ;;
+
+ nfscow=*)
+ NFS_COW="${ARGUMENT#nfscow=}"
+ export NFS_COW
+ ;;
+
+ noaccessibility)
+ NOACCESSIBILITY="Yes"
+ export NOACCESSIBILITY
+ ;;
+
+ noapparmor)
+ NOAPPARMOR="Yes"
+ export NOAPPARMOR
+ ;;
+
+ noaptcdrom)
+ NOAPTCDROM="Yes"
+ export NOAPTCDROM
+ ;;
+
+ noautologin)
+ NOAUTOLOGIN="Yes"
+ export NOAUTOLOGIN
+ ;;
+
+ noxautologin)
+ NOXAUTOLOGIN="Yes"
+ export NOXAUTOLOGIN
+ ;;
+
+ noconsolekeyboard)
+ NOCONSOLEKEYBOARD="Yes"
+ export NOCONSOLEKEYBOARD
+ ;;
+
+ nofastboot)
+ NOFASTBOOT="Yes"
+ export NOFASTBOOT
+ ;;
+
+ nofstab)
+ NOFSTAB="Yes"
+ export NOFSTAB
+ ;;
+
+ nognomepanel)
+ NOGNOMEPANEL="Yes"
+ export NOGNOMEPANEL
+ ;;
+
+ nohosts)
+ NOHOSTS="Yes"
+ export NOHOSTS
+ ;;
+
+ nokpersonalizer)
+ NOKPERSONALIZER="Yes"
+ export NOKPERSONALIZER
+ ;;
+
+ nokwallet)
+ NOKWALLET="Yes"
+ export NOKWALLET
+ ;;
+
+ nolanguageselector)
+ NOLANGUAGESELECTOR="Yes"
+ export NOLANGUAGESELECTOR
+ ;;
+
+ nolocales)
+ NOLOCALES="Yes"
+ export NOLOCALES
+ ;;
+
+ nonetworking)
+ NONETWORKING="Yes"
+ export NONETWORKING
+ ;;
+
+ nopowermanagement)
+ NOPOWERMANAGEMENT="Yes"
+ export NOPOWERMANAGEMENT
+ ;;
+
+ noprogramcrashes)
+ NOPROGRAMCRASHES="Yes"
+ export NOPROGRAMCRASHES
+ ;;
+
+ norestrictedmanager)
+ NORESTRICTEDMANAGER="Yes"
+ export NORESTRICTEDMANAGER
+ ;;
+
+ nosudo)
+ NOSUDO="Yes"
+ export NOSUDO
+ ;;
+
+ noswap)
+ NOSWAP="Yes"
+ export NOSWAP
+ ;;
+
+ noupdatenotifier)
+ NOUPDATENOTIFIER="Yes"
+ export NOUPDATENOTIFIER
+ ;;
+
+ nouser)
+ NOUSER="Yes"
+ export NOUSER
+ ;;
+
+ noxautoconfig)
+ NOXAUTOCONFIG="Yes"
+ export NOXAUTOCONFIG
+ ;;
+
+ noxscreensaver)
+ NOXSCREENSAVER="Yes"
+ export NOXSCREENSAVER
+ ;;
+
+ persistent)
+ PERSISTENT="Yes"
+ export PERSISTENT
+ ;;
+
+ nopersistent)
+ NOPERSISTENT="Yes"
+ export NOPERSISTENT
+ ;;
+
+ preseed/file=*|file=*)
+ LOCATION="${ARGUMENT#*=}"
+ export LOCATION
+ ;;
+
+ nopreseed)
+ NOPRESEED="Yes"
+ export NOPRESEED
+ ;;
+
+ url=*)
+ location="${ARGUMENT#url=}"
+
+ mount -n -o bind /sys /root/sys
+ mount -n -o bind /proc /root/proc
+ mount -n -o bind /dev /root/dev
+
+ mkdir -p /root/var/run/network
+ chroot /root ifup -a
+ chroot /root wget -P /tmp "${location}"
+ chroot /root ifdown -a
+
+ umount /root/sys
+ umount /root/proc
+ umount /root/dev
+
+ LOCATION="/tmp/$(basename "${location}")"
+ ;;
+
+ */*=*)
+ question="${ARGUMENT%%=*}"
+ value="${ARGUMENT#*=}"
+ PRESEEDS="${PRESEEDS}\"${question}=${value}\" "
+ export PRESEEDS
+ ;;
+
+ showmounts)
+ SHOWMOUNTS="Yes"
+ export SHOWMOUNTS
+ ;;
+
+ textonly)
+ TEXTONLY="Yes"
+ export TEXTONLY
+ ;;
+
+ timezone=*)
+ TIMEZONE="${ARGUMENT#timezone=}"
+ export TIMEZONE
+ ;;
+
+ notimezone)
+ NOTIMEZONE="Yes"
+ export NOTIMEZONE
+ ;;
+
+ todisk=*)
+ TODISK="${ARGUMENT#todisk=}"
+ export TODISK
+ ;;
+
+ toram)
+ TORAM="Yes"
+ export TORAM
+ ;;
+
+ toram=*)
+ TORAM="Yes"
+ MODULETORAM="${ARGUMENT#toram=}"
+ export TORAM MODULETORAM
+ ;;
+
+ exposedroot)
+ EXPOSED_ROOT="Yes"
+ export EXPOSED_ROOT
+ ;;
+
+ union=*)
+ UNIONTYPE="${ARGUMENT#union=}"
+ export UNIONTYPE
+ ;;
+
+ utc=*)
+ UTC="${ARGUMENT#utc=}"
+ export UTC
+ ;;
+
+ xdebconf)
+ XDEBCONF="Yes"
+ export XDEBCONF
+ ;;
+
+ xvideomode=*)
+ XVIDEOMODE="${ARGUMENT#xvideomode=}"
+ export XVIDEOMODE
+ ;;
+ esac
+ done
+
+ # sort of compatibility with netboot.h from linux docs
+ if [ -z "${NETBOOT}" ]
+ then
+ if [ "${ROOT}" = "/dev/nfs" ]
+ then
+ NETBOOT="nfs"
+ export NETBOOT
+ elif [ "${ROOT}" = "/dev/cifs" ]
+ then
+ NETBOOT="cifs"
+ export NETBOOT
+ fi
+ fi
+
+ if [ -z "${MODULE}" ]
+ then
+ MODULE="filesystem"
+ export MODULE
+ fi
+
+ if [ -z "${UNIONTYPE}" ]
+ then
+ UNIONTYPE="unionfs"
+ export UNIONTYPE
+ fi
+}
+
+is_live_path ()
+{
+ DIRECTORY="${1}"
+
+ if [ -d "${DIRECTORY}"/"${LIVE_MEDIA_PATH}" ]
+ then
+ for FILESYSTEM in squashfs ext2 ext3 xfs dir
+ do
+ if [ "$(echo ${DIRECTORY}/${LIVE_MEDIA_PATH}/*.${FILESYSTEM})" != "${DIRECTORY}/${LIVE_MEDIA_PATH}/*.${FILESYSTEM}" ]
+ then
+ return 0
+ fi
+ done
+ fi
+
+ return 1
+}
+
+matches_uuid ()
+{
+ if [ "${IGNORE_UUID}" ] || [ ! -e /conf/uuid.conf ]
+ then
+ return 0
+ fi
+
+ path="${1}"
+ uuid="$(cat /conf/uuid.conf)"
+
+ for try_uuid_file in "${mountpoint}/.disk/casper-uuid"*
+ do
+ [ -e "${try_uuid_file}" ] || continue
+
+ try_uuid="$(cat "${try_uuid_file}")"
+
+ if [ "${uuid}" = "${try_uuid}" ]
+ then
+ return 0
+ fi
+ done
+
+ return 1
+}
+
+get_backing_device ()
+{
+ case "${1}" in
+ *.squashfs|*.ext2|*.ext3)
+ echo $(setup_loop "${1}" "loop" "/sys/block/loop*" '0' "${LIVE_MEDIA_ENCRYPTION}")
+ ;;
+
+ *.dir)
+ echo "directory"
+ ;;
+
+ *)
+ panic "Unrecognized live filesystem: ${1}"
+ ;;
+ esac
+}
+
+match_files_in_dir ()
+{
+ # Does any files match pattern ${1} ?
+ local pattern="${1}"
+
+ if [ "$(echo ${pattern})" != "${pattern}" ]
+ then
+ return 0
+ fi
+
+ return 1
+}
+
+mount_images_in_directory ()
+{
+ directory="${1}"
+ rootmnt="${2}"
+
+ if match_files_in_dir "${directory}/${LIVE_MEDIA_PATH}/*.squashfs" ||
+ match_files_in_dir "${directory}/${LIVE_MEDIA_PATH}/*.ext2" ||
+ match_files_in_dir "${directory}/${LIVE_MEDIA_PATH}/*.ext3" ||
+ match_files_in_dir "${directory}/${LIVE_MEDIA_PATH}/*.dir"
+ then
+ setup_unionfs "${directory}/${LIVE_MEDIA_PATH}" "${rootmnt}"
+ else
+ :
+ fi
+}
+
+is_nice_device ()
+{
+ sysfs_path="${1#/sys}"
+
+ if /lib/udev/path_id "${sysfs_path}" | grep -E -q "ID_PATH=(usb|pci-[^-]*-[ide|scsi|usb])"
+ then
+ return 0
+ fi
+
+ return 1
+}
+
+is_supported_fs ()
+{
+ # FIXME: do something better like the scan of supported filesystems
+ fstype="${1}"
+
+ case ${fstype} in
+ vfat|iso9660|udf|ext2|ext3|ntfs)
+ return 0
+ ;;
+ esac
+
+ return 1
+}
+
+copy_live_to ()
+{
+ copyfrom="${1}"
+ copytodev="${2}"
+ copyto="${copyfrom}_swap"
+
+ if [ -z "${MODULETORAM}" ]
+ then
+ size=$(fs_size "" ${copyfrom} "used")
+ else
+ MODULETORAMFILE="${copyfrom}/${LIVE_MEDIA_PATH}/${MODULETORAM}"
+
+ if [ -f "${MODULETORAMFILE}" ]
+ then
+ size=$( expr $(ls -la ${MODULETORAMFILE} | awk '{print $5}') / 1024 + 5000 )
+ else
+ log_warning_msg "Error: toram-module ${MODULETORAM} (${MODULETORAMFILE}) could not be read."
+ return 1
+ fi
+ fi
+
+ if [ "${copytodev}" = "ram" ]
+ then
+ # copying to ram:
+ freespace=$( expr $(awk '/MemFree/{print $2}' /proc/meminfo) + $( cat /proc/meminfo | grep Cached | head -n 1 | awk '/Cached/{print $2}' - ) )
+ mount_options="-o size=${size}k"
+ free_string="memory"
+ fstype="tmpfs"
+ dev="/dev/shm"
+ else
+ # it should be a writable block device
+ if [ -b "${copytodev}" ]
+ then
+ dev="${copytodev}"
+ free_string="space"
+ fstype=$(get_fstype "${dev}")
+ freespace=$(fs_size "${dev}")
+ else
+ [ "$quiet" != "y" ] && log_warning_msg "${copytodev} is not a block device."
+ return 1
+ fi
+ fi
+
+ if [ "${freespace}" -lt "${size}" ]
+ then
+ [ "${quiet}" != "y" ] && log_warning_msg "Not enough free ${free_string} (${freespace}k free, ${size}k needed) to copy live media in ${copytodev}."
+ return 1
+ fi
+
+ # begin copying (or uncompressing)
+ mkdir "${copyto}"
+ echo "mount -t ${fstype} ${mount_options} ${dev} ${copyto}"
+ mount -t "${fstype}" ${mount_options} "${dev}" "${copyto}"
+
+ if [ "${extension}" = "tgz" ]
+ then
+ cd "${copyto}"
+ tar zxf "${copyfrom}/${LIVE_MEDIA_PATH}/$(basename ${FETCH})"
+ rm -f "${copyfrom}/${LIVE_MEDIA_PATH}/$(basename ${FETCH})"
+ mount -r --move "${copyto}" "${rootmnt}"
+ cd "${OLDPWD}"
+ else
+ if [ -n "${MODULETORAMFILE}" ]
+ then
+ cp ${MODULETORAMFILE} ${copyto} # copy only the filesystem module
+ else
+ cp -a ${copyfrom}/* ${copyto} # "cp -a" from busybox also copies hidden files
+ fi
+
+ livefs_root
+ umount ${copyfrom}
+ mount -r --move ${copyto} ${copyfrom}
+ fi
+
+ rmdir ${copyto}
+ return 0
+}
+
+do_netmount ()
+{
+ rc=1
+
+ modprobe -q af_packet # For DHCP
+
+ udevtrigger
+ udevsettle
+
+ ipconfig ${DEVICE} | tee /netboot.config
+
+ # source relevant ipconfig output
+ OLDHOSTNAME=${HOSTNAME}
+ . /tmp/net-${DEVICE}.conf
+ [ -z ${HOSTNAME} ] && HOSTNAME=${OLDHOSTNAME}
+ export HOSTNAME
+
+ if [ "${NFSROOT}" = "auto" ]
+ then
+ NFSROOT=${ROOTSERVER}:${ROOTPATH}
+ fi
+
+ if [ -n "${FETCH}" ] && do_httpmount
+ then
+ rc=0
+ return ${rc}
+ fi
+
+ if [ "${NFSROOT#*:}" = "${NFSROOT}" ] && [ "$NETBOOT" != "cifs" ]
+ then
+ NFSROOT=${ROOTSERVER}:${NFSROOT}
+ fi
+
+ [ "${quiet}" != "y" ] && log_begin_msg "Trying netboot from ${NFSROOT}"
+
+ if [ "${NETBOOT}" != "nfs" ] && do_cifsmount
+ then
+ rc=0
+ elif do_nfsmount
+ then
+ NETBOOT="nfs"
+ export NETBOOT
+ rc=0
+ fi
+
+ [ "${quiet}" != "y" ] && log_end_msg
+ return ${rc}
+}
+
+do_httpmount ()
+{
+ rc=1
+ extension=$(echo "${FETCH}" | sed 's/\(.*\)\.\(.*\)/\2/')
+
+ case "${extension}" in
+ squashfs|tgz|tar)
+ [ "${quiet}" != "y" ] && log_begin_msg "Trying wget ${FETCH} -O ${mountpoint}/$(basename ${FETCH})"
+ mkdir -p "${mountpoint}/${LIVE_MEDIA_PATH}"
+ wget "${FETCH}" -O "${mountpoint}/${LIVE_MEDIA_PATH}/$(basename ${FETCH})"
+ [ ${?} -eq 0 ] && rc=0
+ [ "${extension}" = "tgz" ] && live_dest="ram"
+ ;;
+
+ *)
+ [ "${quiet}" != "y" ] && log_begin_msg "Unrecognized archive extension for ${FETCH}"
+ esac
+
+ return ${rc}
+}
+
+do_nfsmount ()
+{
+ rc=1
+
+ modprobe -q nfs
+
+ if [ -z "${NFSOPTS}" ]
+ then
+ NFSOPTS=""
+ fi
+
+ [ "${quiet}" != "y" ] && log_begin_msg "Trying nfsmount -o nolock -o ro ${NFSOPTS} ${NFSROOT} ${mountpoint}"
+
+ # FIXME: This for loop is an ugly HACK round an nfs bug
+ for i in 0 1 2 3 4 5 6 7 8 9 a b c d e f 10 11 12 13
+ do
+ nfsmount -o nolock -o ro ${NFSOPTS} "${NFSROOT}" "${mountpoint}" && rc=0 && break
+ sleep 1
+ done
+
+ return ${rc}
+}
+
+do_cifsmount ()
+{
+ rc=1
+
+ if [ -x "/sbin/mount.cifs" ]
+ then
+ if [ -z "${NFSOPTS}" ]
+ then
+ CIFSOPTS="-ouser=root,password="
+ else
+ CIFSOPTS="${NFSOPTS}"
+ fi
+
+ [ "${quiet}" != "y" ] && log_begin_msg "Trying mount.cifs ${NFSROOT} ${mountpoint} ${CIFSOPTS}"
+ modprobe -q cifs
+
+ if mount.cifs "${NFSROOT}" "${mountpoint}" "${CIFSOPTS}"
+ then
+ rc=0
+ fi
+ fi
+
+ return ${rc}
+}
+
+do_snap_copy ()
+{
+ fromdev="${1}"
+ todir="${2}"
+ snap_type="${3}"
+ size=$(fs_size "${fromdev}" "" "used")
+
+ if [ -b "${fromdev}" ]
+ then
+ # look for free mem
+ if [ -n "${HOMEMOUNTED}" -a "${snap_type}" = "HOME" ]
+ then
+ todev=$(cat /proc/mounts | grep -s " $(base_path ${todir}) " | awk '{print $1}' )
+ freespace=$(df -k | grep -s ${todev} | awk '{print $4}')
+ else
+ freespace=$( expr $(awk '/MemFree/{print $2}' /proc/meminfo) + $( cat /proc/meminfo | grep Cached | head -n 1 | awk '/Cached/{print $2}' - ))
+ fi
+
+ tomount="/mnt/tmpsnap"
+
+ if [ ! -d "${tomount}" ]
+ then
+ mkdir -p "${tomount}"
+ fi
+
+ fstype=$(get_fstype "${fromdev}")
+
+ if [ -n "${fstype}" ]
+ then
+ # Copying stuff...
+ mount -t "${fstype}" -o ro,noatime "${fromdev}" "${tomount}"
+ cp -a "${tomount}"/* ${todir}
+ umount "${tomount}"
+ else
+ log_warning_msg "Unrecognized fstype: ${fstype} on ${fromdev}:${snap_type}"
+ fi
+
+ rmdir "${tomount}"
+
+ if echo ${fromdev} | grep -qs loop
+ then
+ losetup -d "${fromdev}"
+ fi
+
+ return 0
+ else
+ return 1
+
+ [ "${quiet}" != "y" ] && log_warning_msg "Unable to find the snapshot ${snap_type} medium"
+ fi
+}
+
+try_snap ()
+{
+ # Look for ${snap_label}.* in block devices and copy the contents to ${snap_mount}
+ # and remember the device and filename for resync on exit in live-initramfs.init
+
+ snap_label="${1}"
+ snap_mount="${2}"
+ snap_type="${3}"
+ snapdata=$(find_files "${snap_label}.squashfs ${snap_label}.cpio.gz ${snap_label}.ext2 ${snap_label}.ext3")
+
+ if [ ! -z "${snapdata}" ]
+ then
+ snapdev="$(echo ${snapdata} | cut -f1 -d ' ')"
+ snapback="$(echo ${snapdata} | cut -f2 -d ' ')"
+ snapfile="$(echo ${snapdata} | cut -f3 -d ' ')"
+
+ if echo "${snapfile}" | grep -qs '\(squashfs\|ext2\|ext3\)'
+ then
+ # squashfs or ext2/ext3 snapshot
+ dev=$(get_backing_device "${snapback}/${snapfile}")
+
+ if ! do_snap_copy "${dev}" "${snap_mount}" "${snap_type}"
+ then
+ log_warning_msg "Impossible to include the ${snapfile} Snapshot"
+ return 1
+ fi
+ else
+ # cpio.gz snapshot
+ if ! (cd "${snap_mount}" && zcat "${snapback}/${snapfile}" | cpio -i -u -d 2>/dev/null)
+ then
+ log_warning_msg "Impossible to include the ${snapfile} Snapshot"
+ return 1
+ fi
+ fi
+
+ umount "${snapback}"
+ else
+ dev=$(find_cow_device "${snap_label}")
+
+ if [ -b ${dev} ]
+ then
+ if echo "${dev}" | grep -qs loop
+ then
+ # strange things happens, user confused?
+ snaploop=$( losetup ${dev} | awk '{print $3}' | tr -d '()' )
+ snapfile=$(basename ${snaploop})
+ snapdev=$(cat /proc/mounts | awk '{print $2,$1}' | grep -es "^$( dirname ${snaploop} )" | cut -f2 -d ' ')
+ else
+ snapdev="${dev}"
+ fi
+
+ if ! do_snap_copy "${dev}" "${snap_mount}" "${snap_type}"
+ then
+ log_warning_msg "Impossible to include the ${snap_label} Snapshot"
+ return 1
+ else
+ if [ -n "${snapfile}" ]
+ then
+ # it was a loop device, user confused
+ umount ${snapdev}
+ fi
+ fi
+ else
+ log_warning_msg "Impossible to include the ${snap_label} Snapshot"
+ return 1
+ fi
+ fi
+
+ echo "export ${snap_type}SNAP="${snap_mount}":${snapdev}:${snapfile}" >> /etc/live.conf # for resync on reboot/halt
+ return 0
+}
+
+setup_unionfs ()
+{
+ image_directory="${1}"
+ rootmnt="${2}"
+
+ modprobe -q -b ${UNIONTYPE}
+
+ # run-init can't deal with images in a subdir, but we're going to
+ # move all of these away before it runs anyway. No, we're not,
+ # put them in / since move-mounting them into / breaks mono and
+ # some other apps.
+
+ croot="/"
+
+ # Let's just mount the read-only file systems first
+ rofsstring=""
+ rofslist=""
+ minor_kernel_version=$(uname -r|cut -c 5-|sed 's/[^0-9].*//')
+
+ if [ "${NETBOOT}" = "nfs" ] && [ "${minor_kernel_version}" -lt 22 ]
+ then
+ # go aroung a bug in nfs-unionfs locking for unionfs <= 1.4
+ roopt="nfsro"
+ else
+ roopt="ro"
+ fi
+
+ # Read image names from ${MODULE}.module if it exists
+ if [ -e "${image_directory}/filesystem.${MODULE}.module" ]
+ then
+ for IMAGE in $(cat ${image_directory}/filesystem.${MODULE}.module)
+ do
+ image_string="${image_string} ${image_directory}/${IMAGE}"
+ done
+ elif [ -e "${image_directory}/${MODULE}.module" ]
+ then
+ for IMAGE in $(cat ${image_directory}/${MODULE}.module)
+ do
+ image_string="${image_string} ${image_directory}/${IMAGE}"
+ done
+ else
+ # ${MODULE}.module does not exist, create a list of images
+ for FILESYSTEM in squashfs ext2 ext3 xfs dir
+ do
+ for IMAGE in "${image_directory}"/*."${FILESYSTEM}"
+ do
+ if [ -e "${IMAGE}" ]
+ then
+ image_string="${image_string} ${IMAGE}"
+ fi
+ done
+ done
+
+ # Now sort the list
+ image_string="$(echo ${image_string} | sed -e 's/ /\n/g' | sort )"
+ fi
+
+ [ -n "${MODULETORAMFILE}" ] && image_string="${image_directory}/$(basename ${MODULETORAMFILE})"
+
+ mkdir -p "${croot}"
+
+ for image in ${image_string}
+ do
+ imagename=$(basename "${image}")
+
+ if [ -d "${image}" ]
+ then
+ # it is a plain directory: do nothing
+ rofsstring="${image}=${roopt}:${rofsstring}"
+ rofslist="${image} ${rofslist}"
+ elif [ -f "${image}" ]
+ then
+ backdev=$(get_backing_device "${image}")
+ fstype=$(get_fstype "${backdev}")
+
+ if [ "${fstype}" = "unknown" ]
+ then
+ panic "Unknown file system type on ${backdev} (${image})"
+ fi
+
+ mkdir -p "${croot}/${imagename}"
+ echo "debug: Can not mount backdev ${backdev} (image = ${image}) on croot/imagename ${croot}/${imagename}"
+ mount -t "${fstype}" -o ro,noatime "${backdev}" "${croot}/${imagename}" || panic "Can not mount ${backdev} (${image}) on ${croot}/${imagename}" && rofsstring="${croot}/${imagename}=${roopt}:${rofsstring}" && rofslist="${croot}/${imagename} ${rofslist}"
+ fi
+ done
+
+ rofsstring=${rofsstring%:}
+
+ mkdir -p /cow
+
+ # Looking for "${root_persistence}" device or file
+ if [ -n "${PERSISTENT}" ]
+ then
+ cowprobe=$(find_cow_device "${root_persistence}")
+
+ if [ -b "${cowprobe}" ]
+ then
+ cowdevice=${cowprobe}
+ cow_fstype=$(get_fstype "${cowprobe}")
+ else
+ [ "${quiet}" != "y" ] && log_warning_msg "Unable to find the persistent medium"
+ fi
+ elif [ -n "${NFS_COW}" ]
+ then
+ # check if there are any nfs options
+ if echo ${NFS_COW}|grep -q ','
+ then
+ nfs_cow_opts="-o nolock,$(echo ${NFS_COW}|cut -d, -f2-)"
+ nfs_cow=$(echo ${NFS_COW}|cut -d, -f1)
+ else
+ nfs_cow_opts="-o nolock"
+ nfs_cow=${NFS_COW}
+ fi
+ mac=$(get_mac)
+ if [ -n "${mac}" ]
+ then
+ cowdevice=$(echo ${nfs_cow}|sed "s/client_mac_address/${mac}/")
+ cow_fstype="nfs"
+ else
+ panic "unable to determine mac address"
+ fi
+ else
+ cowdevice="tmpfs"
+ cow_fstype="tmpfs"
+ fi
+
+ if [ "${cow_fstype}" = "nfs" ]
+ then
+ [ "${quiet}" != "y" ] && log_begin_msg \
+ "Trying nfsmount ${nfs_cow_opts} ${cowdevice} /cow"
+ nfsmount ${nfs_cow_opts} ${cowdevice} /cow || \
+ panic "Can not mount ${cowdevice} on /cow"
+ else
+ mount ${cowdevice} -t ${cow_fstype} -o rw,noatime /cow || \
+ panic "Can not mount ${cowdevice} on /cow"
+ fi
+
+ rofscount=$(echo ${rofslist} |wc -w)
+
+ if [ -n "${EXPOSED_ROOT}" ]
+ then
+ if [ ${rofscount} -ne 1 ]
+ then
+ panic "only one RO file system supported with exposedroot: ${rofslist}"
+ fi
+ exposedrootfs=${rofslist%% }
+
+ mount --bind ${exposedrootfs} ${rootmnt} || \
+ panic "bind mount of ${exposedrootfs} failed"
+
+ cow_dirs='/var/tmp /var/lock /var/run /var/log /var/spool
+ /home /var/lib/live'
+
+ for dir in ${cow_dirs}; do
+ mkdir -p /cow${dir}
+ mount -t ${UNIONTYPE} \
+ -o rw,noatime,dirs=/cow${dir}=rw:${exposedrootfs}${dir}=ro \
+ ${UNIONTYPE} "${rootmnt}${dir}" || \
+ panic "mount ${UNIONTYPE} on ${rootmnt}${dir} failed with option \
+ rw,noatime,dirs=/cow${dir}=rw:${exposedrootfs}${dir}=ro"
+ done
+ else
+ mount -t ${UNIONTYPE} -o noatime,dirs=/cow=rw:${rofsstring} \
+ ${UNIONTYPE} "${rootmnt}" || panic "mount ${UNIONTYPE} on \
+ ${rootmnt} failed with option noatime,dirs=/cow=rw:${rofsstring}"
+ fi
+
+ # tmpfs file systems
+ mkdir -p "${rootmnt}/live"
+ mount -t tmpfs tmpfs ${rootmnt}/live
+
+ # Adding other custom mounts
+ if [ -n "${PERSISTENT}" ]
+ then
+ # directly mount /home
+ # FIXME: add a custom mounts configurable system
+ homecow=$(find_cow_device "${home_persistence}" )
+
+ if [ -b "${homecow}" ]
+ then
+ mount -t $(get_fstype "${homecow}") -o rw,noatime "${homecow}" "${rootmnt}/home"
+ export HOMEMOUNTED=1 # used to proper calculate free space in do_snap_copy()
+ else
+ [ "${quiet}" != "y" ] && log_warning_msg "Unable to find the persistent home medium"
+ fi
+
+ # Look for other snapshots to copy in
+ try_snap "${root_snapshot_label}" "${rootmnt}" "ROOT"
+ try_snap "${home_snapshot_label}" "${rootmnt}/home" "HOME"
+ fi
+
+ if [ -n "${SHOWMOUNTS}" ]
+ then
+ for d in ${rofslist}
+ do
+ mkdir -p "${rootmnt}/live/${d##*/}"
+
+ case d in
+ *.dir)
+ # do nothing # mount -o bind "${d}" "${rootmnt}/live/${d##*/}"
+ ;;
+
+ *)
+ mount --move "${d}" "${rootmnt}/live/${d##*/}"
+ ;;
+ esac
+ done
+ fi
+
+ # shows cow fs on /cow for use by live-snapshot
+ mkdir -p "${rootmnt}/live/cow"
+ mount -o move /cow "${rootmnt}/live/cow"
+}
+
+check_dev ()
+{
+ sysdev="${1}"
+ devname="${2}"
+ skip_uuid_check="${3}"
+
+ if [ -z "${devname}" ]
+ then
+ devname=$(sys2dev "${sysdev}")
+ fi
+
+ if [ -n "${LIVE_MEDIA_OFFSET}" ]
+ then
+ loopdevname=$(setup_loop "${devname}" "loop" "/sys/block/loop*" "${LIVE_MEDIA_OFFSET}" '')
+ devname="${loopdevname}"
+ fi
+
+ fstype=$(get_fstype "${devname}")
+
+ if is_supported_fs ${fstype}
+ then
+ mount -t ${fstype} -o ro,noatime "${devname}" ${mountpoint} || continue
+
+ if is_live_path ${mountpoint} && \
+ ([ "${skip_uuid_check}" ] || matches_uuid ${mountpoint})
+ then
+ echo ${mountpoint}
+ return 0
+ else
+ umount ${mountpoint}
+ fi
+ fi
+
+ if [ -n "${LIVE_MEDIA_OFFSET}" ]
+ then
+ losetup -d "${loopdevname}"
+ fi
+
+ return 1
+}
+
+find_livefs ()
+{
+ timeout="${1}"
+
+ # first look at the one specified in the command line
+ if [ ! -z "${LIVE_MEDIA}" ]
+ then
+ if check_dev "null" "${LIVE_MEDIA}" "skip_uuid_check"
+ then
+ return 0
+ fi
+ fi
+
+ # don't start autodetection before timeout has expired
+ if [ -n "${LIVE_MEDIA_TIMEOUT}" ]
+ then
+ if [ "${timeout}" -lt "${LIVE_MEDIA_TIMEOUT}" ]
+ then
+ return 1
+ fi
+ fi
+
+ # or do the scan of block devices
+ for sysblock in $(echo /sys/block/* | tr ' ' '\n' | grep -v loop | grep -v ram)
+ do
+ devname=$(sys2dev "${sysblock}")
+ fstype=$(get_fstype "${devname}")
+
+ if /lib/udev/cdrom_id ${devname} > /dev/null
+ then
+ if check_dev "null" "${devname}"
+ then
+ return 0
+ fi
+ elif is_nice_device "${sysblock}"
+ then
+ for dev in $(subdevices "${sysblock}")
+ do
+ if check_dev "${dev}"
+ then
+ return 0
+ fi
+ done
+ elif [ "${fstype}" = "squashfs" -o \
+ "${fstype}" = "ext2" -o \
+ "${fstype}" = "ext3" ]
+ then
+ # This is an ugly hack situation, the block device has
+ # an image directly on it. It's hopefully
+ # live-initramfs, so take it and run with it.
+ ln -s "${devname}" "${devname}.${fstype}"
+ echo "${devname}.${fstype}"
+ return 0
+ fi
+ done
+
+ return 1
+}
+
+pulsate ()
+{
+ if [ -x /sbin/usplash_write ]
+ then
+ /sbin/usplash_write "PULSATE"
+ fi
+}
+
+set_usplash_timeout ()
+{
+ if [ -x /sbin/usplash_write ]
+ then
+ /sbin/usplash_write "TIMEOUT 120"
+ fi
+}
+
+mountroot ()
+{
+ exec 6>&1
+ exec 7>&2
+ exec > live.log
+ exec 2>&1
+
+ Arguments
+
+ set_usplash_timeout
+ [ "${quiet}" != "y" ] && log_begin_msg "Running /scripts/live-premount"
+ pulsate
+ run_scripts /scripts/live-premount
+ [ "${quiet}" != "y" ] && log_end_msg
+
+ # Needed here too because some things (*cough* udev *cough*)
+ # changes the timeout
+
+ set_usplash_timeout
+
+ if [ ! -z "${NETBOOT}" ] || [ ! -z "${FETCH}" ]
+ then
+ if do_netmount
+ then
+ livefs_root="${mountpoint}"
+ else
+ panic "Unable to find a live file system on the network"
+ fi
+ else
+ # Scan local devices for the image
+ for i in 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
+ do
+ livefs_root=$(find_livefs ${i})
+
+ if [ -n "${livefs_root}" ]
+ then
+ break
+ fi
+
+ sleep 1
+ done
+ fi
+
+ if [ -z "${livefs_root}" ]
+ then
+ panic "Unable to find a medium containing a live file system"
+ fi
+
+ if [ "${TORAM}" ]
+ then
+ live_dest="ram"
+ elif [ "${TODISK}" ]
+ then
+ live_dest="${TODISK}"
+ fi
+
+ if [ "${live_dest}" ]
+ then
+ log_begin_msg "Copying live media to ${live_dest}"
+ copy_live_to "${livefs_root}" "${live_dest}"
+ log_end_msg
+ fi
+
+ if [ -n "${MODULETORAMFILE}" ]
+ then
+ setup_unionfs "${livefs_root}" "${rootmnt}"
+ else
+ mount_images_in_directory "${livefs_root}" "${rootmnt}"
+ fi
+
+ log_end_msg
+
+ maybe_break live-bottom
+ [ "${quiet}" != "y" ] && log_begin_msg "Running /scripts/live-bottom"
+
+ pulsate
+ run_scripts /scripts/live-bottom
+ [ "${quiet}" != "y" ] && log_end_msg
+
+ exec 1>&6 6>&-
+ exec 2>&7 7>&-
+ cp live.log "${rootmnt}/var/log/"
+}
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs script
+
+if grep -qs integrity-check /proc/cmdline
+then
+ cd /live/image
+ md5sum -c md5sum.txt < /dev/tty8 > /dev/tty8
+ reboot
+ while :; do sleep 60; done
+fi
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+. /scripts/live-functions
+
+log_begin_msg "Copying config on real root fs..."
+
+# live-initramfs script
+
+if [ -f /etc/live.conf ]
+then
+ if [ ! -z "${LIVECONF}" ]
+ then
+ # Updating live.conf
+ sed -i -e 's/\(USERNAME="\).*"/\1'"${USERNAME}"'"/g' \
+ -e 's/\(USERFULLNAME="\).*"/\1'"${USERFULLNAME}"'"/g' \
+ -e 's/\(HOSTNAME="\).*"/\1'"${HOSTNAME}"'"/g' \
+ /etc/live.conf
+ fi
+
+ cp -p /etc/live.conf /root/etc/live.conf
+else
+
+cat > /root/etc/live.conf << EOF
+export USERNAME="${USERNAME}"
+export USERFULLNAME="${USERFULLNAME}"
+export HOSTNAME="${HOSTNAME}"
+EOF
+
+fi
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NOTIMEZONE}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Setting timezone..."
+
+# live-initramfs script
+
+if [ -n "${TIMEZONE}" ]
+then
+ area="$(echo ${TIMEZONE} | cut -f1 -d '/')"
+ zone="$(echo ${TIMEZONE} | cut -f2 -d '/')"
+
+chroot /root debconf-communicate -fnoninteractive live-initramfs > /dev/null << EOF
+set tzdata/Areas ${area}
+set tzdata/Zones/${area} ${zone}
+EOF
+
+ cp -f /root/usr/share/zoneinfo/${area}/${zone} /root/etc/localtime
+else
+
+chroot /root debconf-communicate -fnoninteractive live-initramfs > /dev/null << EOF
+set tzdata/Areas Etc
+set tzdata/Zones/Etc UTC
+EOF
+
+ cp -f /root/usr/share/zoneinfo/UTC /root/etc/localtime
+fi
+
+if [ -n "${UTC}" ]
+then
+ sed -i -e "s/UTC=.*/UTC=${UTC}/" /root/etc/default/rcS
+fi
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+. /scripts/live-functions
+
+log_begin_msg "Moving mount points..."
+
+# live-initramfs script
+
+# Move to the new root filesystem so that programs there can get at it.
+if [ ! -d /root/live/image ]
+then
+ mkdir -p /root/live/image
+ mount -n --move /live/image /root/live/image
+fi
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NOUSER}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Adding live session user..."
+
+# live-initramfs script
+
+user_crypted="8Ab05sVQ4LLps" # as in $(echo "live" | mkpasswd -s)
+
+# U6aMy0wojraho is just a blank password
+chroot /root debconf-communicate -fnoninteractive live-initramfs > /dev/null << EOF
+set passwd/make-user true
+set passwd/root-password-crypted *
+set passwd/user-password-crypted ${user_crypted}
+set passwd/user-fullname ${USERFULLNAME}
+set passwd/username ${USERNAME}
+set passwd/user-uid 999
+EOF
+
+chroot /root /usr/bin/env -i HOME="/root" \
+ TERM="${TERM}" PATH="/usr/sbin:/usr/bin:/sbin:/bin" \
+ /usr/lib/user-setup/user-setup-apply > /dev/null
+
+# Clear out debconf database again to avoid confusing ubiquity later.
+chroot /root debconf-communicate -fnoninteractive live-initramfs > /dev/null << EOF
+set passwd/make-user
+set passwd/root-password-crypted
+set passwd/user-password-crypted
+set passwd/user-fullname
+set passwd/username
+set passwd/user-uid
+EOF
+
+if [ -z "${NOSUDO}" ]
+then
+ if [ -f /root/etc/sudoers ]
+ then
+ echo "${USERNAME} ALL=(ALL) NOPASSWD: ALL" >> /root/etc/sudoers
+
+ chroot /root sudo -u "${USERNAME}" sh -c "echo 'SU_TO_ROOT_SU=sudo' >> /home/${USERNAME}/.su-to-rootrc"
+ chroot /root sudo -u "${USERNAME}" gconftool-2 -s -t bool /apps/gksu/sudo-mode true
+ chroot /root sudo -u "${USERNAME}" gconftool-2 -s -t bool /apps/gksu/display-no-pass-info false
+
+chroot /root sudo -u "${USERNAME}" sh -c "umask 0077 && mkdir -p /home/${USERNAME}/.kde/share/config && cat > /home/${USERNAME}/.kde/share/config/kdesurc" << EOF
+[super-user-command]
+super-user-command=sudo
+EOF
+
+ if [ -f /root/usr/share/apps/konsole/sumc.desktop ]
+ then
+ chroot /root sudo -u "${USERNAME}" sh -c "umask 0077 && mkdir -p /home/${USERNAME}/.kde/share/apps/konsole && sed -e's/Exec=su.*$/Exec=sudo mc -c/' /usr/share/apps/konsole/sumc.desktop > /home/${USERNAME}/.kde/share/apps/konsole/sumc.desktop"
+ fi
+
+ if [ -f /root/usr/share/apps/konsole/su.desktop ]
+ then
+ chroot /root sudo -u "${USERNAME}" sh -c "umask 0077 && mkdir -p /home/${USERNAME}/.kde/share/apps/konsole && sed -e's/Exec=su.*$/Exec=sudo -i/' /usr/share/apps/konsole/su.desktop > /home/${USERNAME}/.kde/share/apps/konsole/su.desktop"
+ fi
+ fi
+fi
+
+if [ -L /root/home/${USERNAME}/Examples ]
+then
+ chroot /root install -o ${USERNAME} -g ${USERNAME} -d /home/${USERNAME}/Desktop/
+ mv /root/home/${USERNAME}/Examples /root/home/${USERNAME}/Desktop/
+fi
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+FSTAB=/root/etc/fstab
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+. /scripts/live-functions
+
+if [ -n "${NOFSTAB}" ]
+then
+ exit 0
+fi
+
+if [ -s ${FSTAB} ]
+then
+ log_begin_msg "Not touching preexisting fstab..."
+else
+ log_begin_msg "Configuring fstab..."
+
+ cat >> ${FSTAB} <<-EOF
+ # /etc/fstab: static file system information.
+ #
+ # <file system> <mount point> <type> <options> <dump> <pass>
+ ${UNIONTYPE} / ${UNIONTYPE} rw 0 0
+ tmpfs /tmp tmpfs nosuid,nodev 0 0
+ EOF
+fi
+
+# live-initramfs script
+
+
+# disabled for now
+#rm -f /root/etc/rcS.d/S*checkroot.sh
+
+if [ "${NOFASTBOOT}" != "Yes" ]
+then
+ touch root/fastboot
+fi
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NOSWAP}" ] || [ -n "${NOFSTAB}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Setting up swap..."
+
+# live-initramfs script
+
+FSTAB=/root/etc/fstab
+devices=""
+
+for device in /dev/[hs]d[a-z][0-9]*
+do
+ if ! [ -b "${device}" ]
+ then
+ continue
+ fi
+
+ magic=$(/bin/dd if="${device}" bs=4086 skip=1 count=1 2>/dev/null | /bin/dd bs=10 count=1 2>/dev/null) || continue
+
+ if [ "${magic}" = "SWAPSPACE2" -o "${magic}" = "SWAP-SPACE" ]
+ then
+ #log "Found ${device}"
+ devices="${devices} ${device}"
+ fi
+done
+
+for device in ${devices}
+do
+
+cat >> ${FSTAB} << EOF
+${device} swap swap defaults 0 0
+EOF
+
+done
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NOLOCALES}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Setting up locales..."
+
+# live-initramfs script
+
+if [ -e /root/etc/default/locale ]
+then
+ grep_file=/root/etc/default/locale
+elif [ -e /root/etc/environment ]
+then
+ # Old locales policy
+ grep_file=/root/etc/environment
+fi
+
+if [ -n "${grep_file}" ]
+then
+ # use rootfs configured locale
+ locale=$(grep -s 'LANG=' ${grep_file} | sed s/'LANG='// | tr -d '"' )
+else
+ grep_file=/root/etc/default/locale
+fi
+
+if [ -n "${LOCALE}" ]
+then
+ locale="${LOCALE}"
+ set_locale="true"
+fi
+
+if [ -z "${locale}" ]
+then
+ # Set a default one
+ locale=en_US.UTF-8
+ set_locale="true"
+fi
+
+if [ "${set_locale}" ]
+then
+ if echo "${locale}" | grep -sqE '^[[:lower:]]{2}$'
+ then
+ # input is like "locale=it", so we will convert and setup also the keyboard if not already set
+ if [ -z "${KBD}" ]
+ then
+ # FIXME: look if this keyb is supported
+ KBD="${locale}"
+ really_export KBD
+ fi
+
+ uploc=$(echo "${locale}" | tr '[a-z]' '[A-Z]')
+ locale="${locale}_${uploc}.UTF-8"
+ fi
+
+ LANG=$(grep "^${locale}" /root/usr/share/i18n/SUPPORTED | grep UTF-8 | sed -e 's, .*,,' -e q)
+
+ if [ -z "${LANG}" ]
+ then
+ log_warning_message "Locale ${locale} is unsupported."
+ locale="en_US.UTF-8"
+ LANG="${locale}"
+ fi
+
+ really_export LANG
+
+ printf 'LANG=%s\n' "${LANG}" > "${grep_file}"
+ printf '%s UTF-8\n' "${LANG}" > /root/etc/locale.gen
+ chroot /root /usr/sbin/locale-gen
+fi
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+. /scripts/live-functions
+
+log_begin_msg "Setting up automatic login..."
+
+# live-initramfs script
+
+if [ -n "${NOXAUTOLOGIN}" ]
+then
+ exit 0
+fi
+
+# chroot needed to handle symlinks correctly
+if chroot /root [ -f /etc/gdm/gdm-cdd.conf ]
+then
+ GDMCONF=/etc/gdm/gdm-cdd.conf
+else
+ GDMCONF=/etc/gdm/gdm.conf
+fi
+
+# chroot needed to handle symlinks correctly
+if chroot /root [ -f ${GDMCONF} ]
+then
+ # true hack ! -- nohar
+ chroot /root cp /usr/share/gdm/defaults.conf /etc/gdm/gdm.conf
+
+ # Configure GDM autologin
+ chroot /root \
+ sed -i -e "s/^AutomaticLoginEnable=.*\$/AutomaticLoginEnable=true/" \
+ -e "s/^AutomaticLogin=.*\$/AutomaticLogin=${USERNAME}/" \
+ -e "s/^TimedLoginEnable=.*\$/TimedLoginEnable=true/" \
+ -e "s/^TimedLogin=.*\$/TimedLogin=${USERNAME}/" \
+ -e "s/^TimedLoginDelay=.*\$/TimedLoginDelay=10/" \
+ ${GDMCONF}
+fi
+
+if [ -f /root/etc/kde3/kdm/kdmrc ]
+then
+ # Configure KDM autologin
+ sed -i -r -e "s/^#?AutoLoginEnable=.*\$/AutoLoginEnable=true/" \
+ -e "s/^#?AutoLoginUser=.*\$/AutoLoginUser=${USERNAME}/" \
+ -e "s/^#?AutoReLogin=.*\$/AutoReLogin=true/" \
+ /root/etc/kde3/kdm/kdmrc
+fi
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NOHOSTS}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Setting hostname..."
+
+# live-initramfs script
+
+echo "${HOSTNAME}" > /root/etc/hostname
+
+cat >> /root/etc/hosts << EOF
+127.0.0.1 localhost
+127.0.1.1 ${HOSTNAME}
+
+# The following lines are desirable for IPv6 capable hosts
+::1 ip6-localhost ip6-loopback
+fe00::0 ip6-localnet
+ff00::0 ip6-mcastprefix
+ff02::1 ip6-allnodes
+ff02::2 ip6-allrouters
+ff02::3 ip6-allhosts
+EOF
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NOCONSOLEKEYBOARD}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Setting up console keyboard..."
+
+# live-initramfs script
+
+kbd=
+cslayout=
+csvariant=
+csmodel=
+
+# commandline
+if [ -n "${KBD}" ]
+then
+ kbd="${KBD}"
+else
+ kbd=us
+fi
+
+really_export kbd
+
+if [ -n "${KLAYOUT}" ]
+then
+ cslayout="${KLAYOUT}"
+fi
+
+if [ -n "${KVARIANT}" ]
+then
+ csvariant="${KVARIANT}"
+fi
+
+if [ -n "${KMODEL}" ]
+then
+ csmodel="${KMODEL}"
+fi
+
+if [ -x /root/bin/setupcon ] && [ -f /root/etc/default/console-setup ]
+then
+ if [ "${cslayout}" ]
+ then
+ chroot /root sed -i "s/^XKBLAYOUT=.*/XKBLAYOUT=\"${cslayout}\"/" \
+ /etc/default/console-setup
+
+ if [ "${csvariant}" ]
+ then
+ chroot /root sed -i "s/^XKBVARIANT=.*/XKBVARIANT=\"${csvariant}\"/" \
+ /etc/default/console-setup
+ else
+ live-preseed /root console-setup/variantcode '' false
+ fi
+
+ if [ "${csmodel}" ]
+ then
+ chroot /root sed -i "s/^XKBMODEL=.*/XKBMODEL=\"${csmodel}\"/" \
+ /etc/default/console-setup
+ else
+ live-preseed /root console-setup/modelcode '' false
+ fi
+ else
+ live-preseed /root console-setup/layoutcode '' false
+ live-preseed /root console-setup/variantcode '' false
+ live-preseed /root console-setup/modelcode '' false
+ fi
+
+ sed -i 's/CONSOLE_SCREEN=$/CONSOLE_SCREEN=setupcon/; t END; b; : END; n; b END' /root/etc/init.d/usplash
+else
+ chroot /root /usr/sbin/install-keymap ${kbd}
+ live-preseed /root debian-installer/keymap "${kbd}"
+ live-preseed /root kbd-chooser/method "${kbd}"
+fi
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NOXAUTOCONFIG}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Configuring X..."
+
+# live-initramfs script
+
+if [ "${TERM_TYPE}" = "serial" ]
+then
+ # Don't bother trying to configure or start X on a serial console
+ rm -f /root/etc/rc?.d/S??[gkx]dm
+ exit 0
+fi
+
+if [ -n "${TEXTONLY}" ]
+then
+ exit 0
+fi
+
+locale=en_US.UTF-8
+
+mount -n -o bind /sys /root/sys
+mount -n -o bind /proc /root/proc
+mount -n -o bind /dev /root/dev
+
+if [ -n "${XDEBCONF}" -a -x /root/usr/sbin/xdebconfigurator ]
+then
+ # xdebconfigurator
+ chroot /root /usr/sbin/xdebconfigurator
+fi
+
+if [ -n "${KOPTIONS}" ]
+then
+ setoptions="set xserver-xorg/config/inputdevice/keyboard/options ${KOPTIONS}"
+fi
+
+if [ -n "${KVARIANT}" ]
+then
+ setvariant="set xserver-xorg/config/inputdevice/keyboard/variant ${KVARIANT}"
+fi
+
+if [ -n "${KMODEL}" ]
+then
+ setmodel="set xserver-xorg/config/inputdevice/keyboard/model ${KMODEL}"
+fi
+
+chroot /root debconf-communicate -fnoninteractive live-initramfs > /dev/null << EOF
+set xserver-xorg/config/inputdevice/keyboard/layout ${kbd}
+${setvariant}
+${setmodel}
+${setoptions}
+EOF
+
+DEBUG_XORG_PACKAGE=1 DEBUG_XORG_DEBCONF=1 live-reconfigure /root xserver-xorg
+umount /root/sys
+umount /root/proc
+umount /root/dev
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NOXAUTOCONFIG}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Configuring X kludges..."
+
+# live-initramfs script
+
+if [ -n "$XVIDEOMODE" ]
+then
+ mount -n -o bind /sys /root/sys
+ mount -n -o bind /proc /root/proc
+ mount -n -o bind /dev /root/dev
+
+chroot /root debconf-communicate -fnoninteractive live-initramfs > /dev/null << EOF
+set xserver-xorg/config/monitor/mode-list ${XVIDEOMODE}
+set xserver-xorg/config/display/modes ${XVIDEOMODE}
+EOF
+
+ chroot /root dexconf
+
+ umount /root/sys
+ umount /root/proc
+ umount /root/dev
+fi
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NOGNOMEPANEL}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Configuring gnome-panel-data..."
+
+# live-initramfs script
+
+if [ -x /root/usr/sbin/laptop-detect ]
+then
+ if chroot /root laptop-detect
+ then
+ live-reconfigure /root gnome-panel-data
+ fi
+fi
+
+panel_version=$(chroot /root /usr/bin/dpkg-query -W --showformat='${Version}' gnome-panel-data 2>/dev/null) || panel_version=""
+
+if [ -n "${panel_version}" ]
+then
+ chroot /root sudo -u "${USERNAME}" gconftool-2 -s -t bool /apps/panel/global/disable_lock_screen true
+fi
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NOXSCREENSAVER}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Configuring screensaver..."
+
+# live-initramfs script
+
+gnome_screensaver_version=$(chroot /root dpkg-query -W --showformat='${Version}' gnome-screensaver 2>/dev/null) || gnome_screensaver_version=""
+
+if [ -n "${gnome_screensaver_version}" ]
+then
+ # Support legacy gconf value
+ chroot /root sudo -u "${USERNAME}" gconftool-2 -t bool -s /apps/gnome-screensaver/lock false
+ chroot /root sudo -u "${USERNAME}" gconftool-2 -t bool -s /apps/gnome-screensaver/lock_enabled false
+fi
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+. /scripts/live-functions
+
+log_begin_msg "Preconfiguring /etc/modules..."
+
+# live-initramfs script
+
+# load the right modules
+case "${DPKG_ARCH}" in
+ powerpc|ppc64)
+ echo snd_powermac >> /root/etc/modules
+ ;;
+esac
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NONETWORKING}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Preconfiguring networking..."
+
+# live-initramfs script
+
+IFFILE="/root/etc/network/interfaces"
+
+if [ "${STATICIP}" = "frommedia" -a -e "${IFFILE}" ]
+then
+ # will use existent /etc/network/interfaces
+ log_end_msg
+ exit 0
+fi
+
+cat > "${IFFILE}" << EOF
+auto lo
+iface lo inet loopback
+
+EOF
+
+udevtrigger
+udevsettle
+
+if [ -z "${NETBOOT}" -a -n "${STATICIP}" -a "${STATICIP}" != "frommedia" ]
+then
+ parsed=$(echo "${STATICIP}" | sed -e 's/:/ /g')
+
+ for ifline in ${parsed}
+ do
+ ifname="$(echo ${ifline} | cut -f1 -d ',')"
+ ifaddress="$(echo ${ifline} | cut -f2 -d ',')"
+ ifnetmask="$(echo ${ifline} | cut -f3 -d ',')"
+ ifgateway="$(echo ${ifline} | cut -f4 -d ',')"
+
+cat >> "${IFFILE}" << EOF
+auto ${ifname}
+iface ${ifname} inet static
+ address ${ifaddress}
+ netmask ${ifnetmask}
+ gateway ${ifgateway}
+
+EOF
+
+ done
+else
+ if [ -z "${NETBOOT}" ]
+ then
+ # default, dhcp assigned
+ method="dhcp"
+ else
+ # make sure that the preconfigured interface would not get reassigned by dhcp
+ # on startup by ifup script - otherwise our root fs might be disconnected!
+ method="manual"
+ fi
+
+ # iterate the physical interfaces and add them to the interfaces list
+ if [ "${method}" != dhcp ] || [ ! -x /root/usr/sbin/NetworkManager ]
+ then
+ for interface in /sys/class/net/eth* /sys/class/net/ath* /sys/class/net/wlan*
+ do
+ [ -e ${interface} ] || continue
+ i="$(basename ${interface})"
+
+cat >> "${IFFILE}" << EOF
+auto ${i}
+iface ${i} inet ${method}
+
+EOF
+
+ done
+ fi
+
+ if [ ! -f /root/etc/resolv.conf -a -f /netboot.config ]
+ then
+ # create a resolv.conf if it is not present
+ cp /netboot.config /root/var/log/netboot.config
+
+ rc_search=$(cat netboot.config | awk '/domain/{print $3}')
+ rc_server0=$(cat netboot.config | awk '/dns0/{print $5}')
+ rc_server1=$(cat netboot.config | awk '/dns0/{print $8}')
+ rc_server0="nameserver ${rc_server0}"
+
+ if [ "${rc_server1}" = "0.0.0.0" ]
+ then
+ rc_server1=""
+ else
+ rc_server1="nameserver ${rc_server1}"
+ fi
+
+cat > /root/etc/resolv.conf << EOF
+# /etc/resolv.conf
+# Autogenerated by live-initramfs
+search ${rc_search}
+domain ${rc_search}
+${rc_server0}
+${rc_server1}
+EOF
+
+ cat /root/etc/resolv.conf >> /root/var/log/netboot.config
+ fi
+fi
+
+#if [ ! -x /root/usr/sbin/NetworkManager ]
+#then
+# for i in eth0 eth1 eth2 ath0 wlan0
+# do
+# grep -q "iface ${i}" ${IFFILE} && continue
+#
+#cat >> "${IFFILE}" << EOF
+#auto ${i}
+#iface ${i} inet dhcp
+#
+#EOF
+#
+# done
+#fi
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NOPRESEED}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Loading preseed file..."
+
+# live-initramfs script
+
+if [ -e /preseed.cfg ]
+then
+ chroot /root debconf-set-selections < /preseed.cfg
+fi
+
+if [ -f "/root/${LOCATION}" ]
+then
+ chroot /root debconf-set-selections < "/root/${LOCATION}"
+fi
+
+if [ -n "${PRESEEDS}" ]
+then
+ for preseed in ${PRESEEDS}
+ do
+ question="${preseed%%=*}"
+ value="${preseed#*=}"
+
+ live-preseed /root "${question}" "${value}"
+ done
+fi
+
+reply="$(echo "GET preseed/early_command" | chroot /root debconf-communicate -fnoninteractive live-initramfs)"
+
+if [ "${reply#0 }" != "${reply}" ]
+then
+ reply="${reply#0 }"
+ sh -c "${reply}"
+fi
+
+# Clear out debconf database backup files to save memory.
+rm -f /root/var/cache/debconf/*.dat-old
+
+log_end_msg
+
+exit 0
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+. /scripts/live-functions
+
+log_begin_msg "Setting up init..."
+
+# live-initramfs script
+
+# Arrange for shells on virtual consoles, rather than login prompts
+
+if [ -z "${NOAUTOLOGIN}" ]
+then
+ if [ -n "${USERNAME}" ]
+ then
+ if [ ! -z "${LIVE_GETTY}" ]
+ then
+ if echo "${DEFCONSOLE}" | grep -qs ttyS
+ then
+ # AUTOMATIC SERIAL CONSOLE #
+ PORT=$(echo "${DEFCONSOLE}" | \
+ sed -e 's%,.*%%')
+ SPEED=$(echo "${DEFCONSOLE}" | \
+ sed -e 's%ttyS[0-9]\+,%%' \
+ -e's%\([0-9]\+\).*%\1%')
+
+ if ! ( sed -n -e'/^[^#]/p' /root/etc/inittab | grep -qs ":respawn:/sbin/getty.*${PORT}" )
+ then
+ IDs="A B C D E F G H I J K L M N O P Q R S T Q U V V X Y Z 0 1 2 3 4 5 6 7 8 9"
+
+ for ID1 in ${IDs}
+ do
+ for ID2 in ${IDs}
+ do
+ ID="${ID1}${ID2}"
+
+ if ! grep "^${ID}:" /etc/inittab
+ then
+ #make sure it is not already in use
+ break 2
+ fi
+ done
+ done
+
+ echo "${ID}:2345:respawn:/sbin/live-getty -L ${PORT} ${SPEED} vt100" >> /root/etc/inittab
+ fi
+ fi
+
+ if [ -f /root/etc/inittab ]
+ then
+ sed -i -e'/^[^#]/s%respawn:/sbin/getty%respawn:/sbin/live-getty%' /root/etc/inittab
+ fi
+ else
+ if [ -f /root/etc/inittab ]
+ then
+ sed -i -e "s|^\([^:]*:[^:]*:[^:]*\):.*getty.*\<\(tty[0-9]*\).*$|\1:/bin/login -f ${USERNAME} </dev/\2 >/dev/\2 2>\&1|" /root/etc/inittab
+ fi
+
+ if [ "/root/etc/event.d/tty*" != "$(echo /root/etc/event.d/tty*)" ]
+ then
+ for f in /root/etc/event.d/tty*
+ do
+ sed -i -e "s|^respawn.*|respawn /bin/login -f ${USERNAME} </dev/$(basename ${f}) > /dev/$(basename ${f}) 2>\&1|" ${f}
+ done
+ fi
+ fi
+
+ # Since we use autologin, lastlog doesn't make sense on the console.
+ sed -i '/^[^#].*pam_lastlog\.so/s/^/# /' /root/etc/pam.d/login
+ fi
+fi
+
+# do not try to remove files if using file-rc
+if [ -d /etc/rc0.d ]
+then
+ # This has the nice side effect of the cron.{daily,weekly,monthly} jobs in
+ # /etc/crontab remaining disabled, yet also not run by anacron
+ if [ -x /root/usr/sbin/anacron ]
+ then
+ chroot /root dpkg-divert --add --rename --quiet /usr/sbin/anacron
+ ln -s /bin/true /usr/sbin/anacron
+ fi
+
+ # No point, really
+ rm -f /root/etc/rc?.d/[SK]??postfix
+
+ # Avoid clobbering the user's clock
+ rm -f /root/etc/rc?.d/K??hwclock.sh
+fi
+
+# Disable readahead since it doesn't play well with squashfs + unionfs
+# use chmod instead of mv to not trigger unionfs bugs.
+if [ -e /root/sbin/readahead-list ]
+then
+ chmod -x /root/sbin/readahead-list
+fi
+
+log_end_msg
+
+exit 0
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NOACCESSIBILITY}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Configuring accessibility options..."
+
+# live-initramfs script
+
+gconf_version=$(chroot /root /usr/bin/dpkg-query -W --showformat='${Version}' gconf2 2>/dev/null) || gconf_version=""
+
+gct ()
+{
+ if [ "${gconf_version}" ]
+ then
+ chroot /root sudo -u "${USERNAME}" gconftool-2 "${@}"
+ fi
+}
+
+case ${ACCESS} in
+ access=v1)
+ # Lesser Visual Impairment
+ gct -s -t string /desktop/gnome/interface/gtk_theme HighContrastLargePrint
+ gct -s -t string /desktop/gnome/interface/icon_theme HighContrast
+ gct -s -t string /desktop/gnome/interface/monospace_font_name "monospace 18"
+ gct -s -t string /desktop/gnome/interface/font_name "sans 18"
+ gct -s -t string /apps/metacity/general/theme Atlanta
+ gct -s -t string /desktop/gnome/background/picture_filename ""
+ gct -s -t string /desktop/gnome/background/picture_options none
+ gct -s -t string /desktop/gnome/background/primary_color \#666666
+ gct -s -t string /desktop/gnome/background/secondary_color \#7F7F7F
+ gct -s -t string /desktop/gnome/background/color_shading_type solid
+ gct -s -t int /desktop/gnome/peripherals/mouse/cursor_size 48
+ gct -s -t string /desktop/gnome/peripherals/mouse/cursor_theme whiteglass
+ ;;
+
+ access=v2)
+ # Moderate Visual Impairment
+ gct -s -t bool /desktop/gnome/interface/accessibility true
+ gct -s -t bool /desktop/gnome/applications/at/visual/startup true
+ gct -s -t bool /apps/gksu/disable-grab true
+
+ if [ -e /root/usr/share/pycentral/gnome-orca/site-packages/orca/settings.py ]
+ then
+ sed -i '/^enableSpeech\W/ s/True/False/;/^enableMagnifier/ s/False/True/' /root/usr/share/pycentral/gnome-orca/site-packages/orca/settings.py
+ fi
+ ;;
+
+ access=v3)
+ # Blindness
+ # Disabled for now, until we know eSpeak works.
+ #gct -s -t bool /desktop/gnome/sound/enable_esd false
+ gct -s -t bool /desktop/gnome/interface/accessibility true
+ gct -s -t bool /desktop/gnome/applications/at/visual/startup true
+ gct -s -t bool /apps/gksu/disable-grab true
+ ;;
+
+ braille=ask)
+ # Braille
+ gct -s -t bool /desktop/gnome/interface/accessibility true
+ gct -s -t bool /desktop/gnome/applications/at/visual/startup true
+ gct -s -t bool /apps/gksu/disable-grab true
+
+ if [ -e /root/usr/share/pycentral/gnome-orca/site-packages/orca/settings.py ]
+ then
+ sed -i '/^enableSpeech\W/ s/True/False/;/^enableBraille/ s/False/True/' /root/usr/share/pycentral/gnome-orca/site-packages/orca/settings.py
+ fi
+ ;;
+
+ access=m1)
+ # Minor Motor Difficulties
+ gct -s -t bool /desktop/gnome/accessibility/keyboard/enable true
+ gct -s -t bool /desktop/gnome/accessibility/keyboard/mousekeys_enable true
+ gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_enable true
+ gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_modifier_beep true
+ gct -s -t bool /desktop/accessibility/gnome/keyboard/stickykeys_two_key_off false
+ gct -s -t bool /desktop/gnome/peripherals/keyboard/repeat true
+ gct -s -t int /desktop/gnome/peripherals/keyboard/delay 700
+ gct -s -t int /desktop/gnome/peripherals/keyboard/rate 10
+ gct -s -t bool /apps/gksu/disable-grab true
+
+ if [ -e /root/etc/xdg/xfce4/mcs_settings/keyboard.xml ]
+ then
+ sed -i 's/0/1/' /root/etc/xdg/xfce4/mcs_settings/keyboard.xml
+ fi
+ ;;
+
+ access=m2)
+ # Motor Difficulties - pointing devices
+ gct -s -t bool /desktop/gnome/accessibility/keyboard/enable true
+ gct -s -t bool /desktop/gnome/interface/accessibility true
+ gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_enable true
+ gct -s -t bool /desktop/gnome/accessibility/keyboard/stickykeys_modifier_beep false
+ gct -s -t bool /desktop/accessibility/gnome/keyboard/stickykeys_two_key_off false
+ gct -s -t list --list-type=string /desktop/gnome/accessibility/startup/exec_ats [onboard]
+
+ if [ -e /root/etc/xdg/xfce4/mcs_settings/keyboard.xml ]
+ then
+ sed -i '/Sticky/ s/0/1/' /root/etc/xdg/xfce4/mcs_settings/keyboard.xml
+ fi
+ ;;
+esac
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NOUPDATENOTIFIER}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Disabling update-notifier..."
+
+# live-initramfs script
+
+# For GNOME, we divert away apt-check to avoid a regular 'apt-get update'
+# equivalent in the live session. We want to run update-notifier for crash
+# report handling.
+chroot /root dpkg-divert --add --rename --quiet \
+ /usr/lib/update-notifier/apt-check
+
+ln -s /bin/true /root/usr/lib/update-notifier/apt-check
+
+# For KDE, adept_notifier's only useful function at the moment is an
+# 'apt-get update' equivalent, so we disable it entirely.
+rm -f /root/usr/share/autostart/adept_notifier_auto.desktop
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NOPOWERMANAGEMENT}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Configuring power management..."
+
+# live-initramfs script
+
+gpm_version=$(chroot /root /usr/bin/dpkg-query -W --showformat='${Version}' gnome-power-manager 2>/dev/null) || panel_version=""
+
+if [ -n "${gpm_version}" ]
+then
+ #live-reconfigure /root gnome-power-manager
+ # Gnome < 2.20
+ chroot /root sudo -u "${USERNAME}" gconftool-2 -s -t bool /apps/gnome-power-manager/can_hibernate false
+ # Gnome >= 2.20
+ chroot /root sudo -u "${USERNAME}" gconftool-2 -s -t bool /apps/gnome-power-manager/general/can_hibernate false
+fi
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NOPROGRAMCRASHES}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Enabling notifications about program crashes..."
+
+# live-initramfs script
+
+update_notifier_version=$(chroot /root dpkg-query -W --showformat='${Version}' update-notifier 2>/dev/null) || update_notifier_version=""
+
+if [ -n "${update_notifier_version}" ]
+then
+ chroot /root sudo -u "${USERNAME}" gconftool-2 -t bool -s /apps/update-notifier/show_apport_crashes true
+fi
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NOKPERSONALIZER}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Disabling kpersonalizer..."
+
+# live-initramfs script
+
+if chroot /root /usr/bin/which kpersonalizer >/dev/null
+then
+ # Disable first-login wizard for KDE
+ if [ ! -f /root/etc/kde3/kpersonalizerrc ]
+ then
+
+cat > /root/etc/kde3/kpersonalizerrc << EOF
+[General]
+FirstLogin=false
+EOF
+
+ else
+ echo "I'm not smart enough to disable kpersonalizer startup" >&2
+ echo "Because kpersonalizerrc already exists" >&2
+ fi
+fi
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NOKWALLET}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Disabling kwallet..."
+
+# live-initramfs script
+
+rm -f /root/usr/share/services/kded/kwalletd.desktop
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NOLANGUAGESELECTOR}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Fixing language selector..."
+
+# live-initramfs script
+
+if [ -e /root/usr/share/applications/language-selector.desktop ]
+then
+ sed -i '/^Exec/ s|/usr/bin/gnome-language-selector|"& -n"|' /root/usr/share/applications/language-selector.desktop
+fi
+
+if [ -x /root/usr/bin/fontconfig-voodoo ]
+then
+ chroot /root fontconfig-voodoo --auto --quiet || true
+fi
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NOTIMEZONE}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Disabling trackerd..."
+
+# live-initramfs script
+
+rm -f /root/etc/xdg/autostart/trackerd.desktop \
+ /root/usr/share/autostart/trackerd.desktop
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+PREREQ=""
+
+. /scripts/live-functions
+
+prereqs()
+{
+ echo "$PREREQ"
+}
+
+case $1 in
+# get pre-requisites
+prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+if [ -n "${NORESTRICTEDMANAGER}" ]
+then
+ exit 0
+fi
+
+log_begin_msg "Disabling restricted-manager..."
+
+rm -f /root/etc/xdg/autostart/restricted-manager.desktop
+rm -f /root/etc/xdg/autostart/restricted-manager-kde.desktop
+
+# Since we disable restricted-manager, there isn't much point generating the
+# fglrx or nvidia modules either. The other restricted modules may still be
+# useful.
+sed -i 's/^DISABLED_MODULES=""/DISABLED_MODULES="fglrx nv"/' \
+ /root/etc/default/linux-restricted-modules-common
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NOAPTCDROM}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Adding APT-CDROM source..."
+
+# live-initramfs script
+
+chroot /root apt-cdrom -m add
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ=""
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs header
+
+if [ -n "${NOAPPARMOR}" ]
+then
+ exit 0
+fi
+
+. /scripts/live-functions
+
+log_begin_msg "Disabling AppArmor (does not work with stacked file systems)..."
+
+# live-initramfs script
+
+chroot /root update-rc.d -f apparmor remove
+
+log_end_msg
--- /dev/null
+#!/bin/sh
+
+. /scripts/functions
+. /live.vars
+
+log_end_msg ()
+{
+ # Override this so we don't call PROGRESS
+ if [ -x /sbin/usplash_write ]
+ then
+ /sbin/usplash_write "SUCCESS ok"
+ fi
+
+ _log_msg "Done."
+}
+
+log_wait_msg ()
+{
+ # Print a message and wait for enter
+ if [ -x /sbin/usplash_write ]
+ then
+ /sbin/usplash_write "INPUTENTER ${@}"
+ read nunya < /dev/.initramfs/usplash_outfifo
+ fi
+
+ _log_msg "Waiting: ${@} ..."
+}
+
+really_export ()
+{
+ STRING="${1}"
+ VALUE="$(eval echo -n \${$STRING})"
+
+ if [ -f /live.vars ] && cat /live.vars | grep -sq "export ${STRING}"
+ then
+ sed -i -e 's/\('${STRING}'=\).*$/\1'${VALUE}'/' /live.vars
+ else
+ echo "export ${STRING}=\"${VALUE}\"" >> /live.vars
+ fi
+
+ eval export "${STRING}"="${VALUE}"
+}
--- /dev/null
+#!/bin/sh
+# live-initramfs helper functions, used by live-initramfs on boot and by live-snapshot
+
+if [ ! -x "/bin/fstype" ]
+then
+ # klibc not in path -> not in initramfs
+ export PATH="${PATH}:/usr/lib/klibc/bin"
+fi
+
+sys2dev ()
+{
+ sysdev=${1#/sys}
+ echo "/dev/$(udevinfo -q name -p ${sysdev} 2>/dev/null|| echo ${sysdev##*/})"
+}
+
+subdevices ()
+{
+ sysblock=${1}
+ r=""
+
+ for dev in "${sysblock}" "${sysblock}"/*
+ do
+ if [ -e "${dev}/dev" ]
+ then
+ r="${r} ${dev}"
+ fi
+ done
+
+ echo ${r}
+}
+
+get_fstype ()
+{
+ local FSTYPE
+ local FSSIZE
+
+ eval $(fstype < ${1})
+
+ if [ "${FSTYPE}" != "unknown" ]
+ then
+ echo ${FSTYPE}
+ return 0
+ fi
+
+ /lib/udev/vol_id -t ${1} 2>/dev/null
+}
+
+where_is_mounted ()
+{
+ device=${1}
+
+ if grep -q "^${device} " /proc/mounts
+ then
+ grep "^${device} " /proc/mounts | read d mountpoint rest
+ echo ${mountpoint}
+ return 0
+ fi
+
+ return 1
+}
+
+lastline ()
+{
+ while read lines
+ do
+ line=${lines}
+ done
+
+ echo "${line}"
+}
+
+base_path ()
+{
+ testpath="${1}"
+ mounts="$(awk '{print $2}' /proc/mounts)"
+ testpath="$(busybox realpath ${testpath})"
+
+ while true
+ do
+ if echo "${mounts}" | grep -qs "^${testpath}"
+ then
+ set -- $(echo "${mounts}" | grep "^${testpath}" | lastline)
+ echo ${1}
+ break
+ else
+ testpath=$(dirname $testpath)
+ fi
+ done
+}
+
+fs_size ()
+{
+ # Returns used/free fs kbytes + 5% more
+ # You could pass a block device as ${1} or the mount point as ${2}
+
+ dev="${1}"
+ mountp="${2}"
+ used="${3}"
+
+ if [ -z "${mountp}" ]
+ then
+ mountp=$(where_is_mounted "${dev}")
+
+ if [ "${?}" -gt 0 ]
+ then
+ mountp="/mnt/tmp_fs_size"
+
+ mkdir -p "${mountp}"
+ mount -t $(get_fstype "${dev}") -o ro "${dev}" "${mountp}"
+
+ doumount=1
+ fi
+ fi
+
+ if [ "${used}" = "used" ]
+ then
+ size=$(du -ks ${mountp} | cut -f1)
+ size=$(expr ${size} + ${size} / 20 ) # FIXME: 5% more to be sure
+ else
+ # free space
+ size="$(df -k | grep -s ${mountp} | awk '{print $4}')"
+ fi
+
+ if [ -n "${doumount}" ]
+ then
+ umount "${mountp}"
+ rmdir "${mountp}"
+ fi
+
+ echo "${size}"
+}
+
+load_keymap ()
+{
+ # Load custom keymap
+ if [ -x /bin/loadkeys -a -r /etc/boottime.kmap.gz ]
+ then
+ loadkeys /etc/boottime.kmap.gz
+ fi
+}
+
+setup_loop ()
+{
+ local fspath=${1}
+ local module=${2}
+ local pattern=${3}
+ local offset=${4}
+ local encryption=${5}
+
+ modprobe -q -b "${module}"
+ udevsettle
+
+ for loopdev in ${pattern}
+ do
+ if [ "$(cat ${loopdev}/size)" -eq 0 ]
+ then
+ dev=$(sys2dev "${loopdev}")
+ options=''
+
+ if [ 0 -lt "${offset}" ]
+ then
+ options="${options} -o ${offset}"
+ fi
+
+ if [ -z "${encryption}" ]
+ then
+ losetup ${options} "${dev}" "${fspath}"
+ else
+ # Loop AES encryption
+ while true
+ do
+ load_keymap
+
+ echo -n "Enter passphrase for ${fspath}: " >&6
+ read -s passphrase
+ echo "${passphrase}" > /tmp/passphrase
+ exec 9</tmp/passphrase
+ /sbin/losetup ${options} -e "${encryption}" -p 9 "${dev}" "${fspath}"
+ error=${?}
+ exec 9<&-
+ rm -f /tmp/passphrase
+
+ if [ 0 -eq ${error} ]
+ then
+ unset error
+ break
+ fi
+
+ echo -n "Something went wrong... Retry? [YES/no] " >&6
+ read answer
+
+ if [ 'no' = "${answer}" ]
+ then
+ unset answer
+ break
+ fi
+ done
+ fi
+
+ echo "${dev}"
+ return 0
+ fi
+ done
+
+ panic "No loop devices available"
+}
+
+try_mount ()
+{
+ dev="${1}"
+ mountp="${2}"
+ opts="${3}"
+
+ if where_is_mounted ${dev} > /dev/null
+ then
+ mount -o remount,"${opts}" ${dev} $(where_is_mounted ${dev}) || panic "Remounting failed"
+ mount -o bind $(where_is_mounted ${dev}) ${mountp} || panic "Cannot bind-mount"
+ else
+ mount -t $(get_fstype "${dev}") -o "${opts}" "${dev}" "${mountp}" || panic "Cannot mount ${dev} on ${mountp}"
+ fi
+}
+
+find_cow_device ()
+{
+ pers_label="${1}"
+ cow_backing="/${pers_label}-backing"
+
+ for sysblock in $(echo /sys/block/* | tr ' ' '\n' | grep -v loop)
+ do
+ for dev in $(subdevices "${sysblock}")
+ do
+ devname=$(sys2dev "${dev}")
+
+ if [ "$(/lib/udev/vol_id -l ${devname} 2>/dev/null)" = "${pers_label}" ]
+ then
+ echo "${devname}"
+ return
+ elif [ "$(get_fstype ${devname})" = "vfat" ]
+ then
+ # FIXME: all supported block devices should be scanned
+ mkdir -p "${cow_backing}"
+ try_mount "${devname}" "${cow_backing}" "rw"
+
+ if [ -e "${cow_backing}/${pers_label}" ]
+ then
+ echo $(setup_loop "${cow_backing}/${pers_label}" "loop" "/sys/block/loop*")
+ return 0
+ else
+ umount ${cow_backing}
+ fi
+ fi
+ done
+ done
+}
+
+find_files ()
+{
+ # return the first of ${filenames} found on vfat and ext2/ext3 devices
+ # FIXME: merge with above function
+
+ filenames="${1}"
+ snap_backing="/snap-backing"
+
+ for sysblock in $(echo /sys/block/* | tr ' ' '\n' | grep -v loop)
+ do
+ for dev in $(subdevices "${sysblock}")
+ do
+ devname=$(sys2dev "${dev}")
+ devfstype="$(get_fstype ${devname})"
+
+ if [ "${devfstype}" = "vfat" ] || [ "${devfstype}" = "ext2" ] || [ "${devfstype}" = "ext3" ]
+ then
+ # FIXME: all supported block devices should be scanned
+ mkdir -p "${snap_backing}"
+ try_mount "${devname}" "${snap_backing}" "ro"
+
+ for filename in ${filenames}
+ do
+ if [ -e "${snap_backing}/${filename}" ]
+ then
+ echo "${devname} ${snap_backing} ${filename}"
+ return 0
+ fi
+ done
+
+ umount ${snap_backing}
+ fi
+ done
+ done
+}
+
+get_mac ()
+{
+ mac=""
+ for adaptor in /sys/class/net/*;do
+ status=$(cat ${adaptor}/iflink)
+ if [ ${status} -eq 2 ];
+ then
+ mac=$(cat ${adaptor}/address)
+ mac=$(echo ${mac}|sed 's/:/-/g'|tr '[a-z]' '[A-Z]')
+ fi
+ done
+ echo $mac
+}
--- /dev/null
+#!/bin/sh
+
+#set -e
+
+# initramfs-tools header
+
+PREREQ="udev"
+
+prereqs()
+{
+ echo "${PREREQ}"
+}
+
+case "${1}" in
+ prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+# live-initramfs script
+
+# The following modprobe entry is a workaround to live-initramfs not
+# finding the root filesytem.
+#
+# See also:
+# * http://lists.alioth.debian.org/pipermail/debian-live-devel/2007-May/001459.html
+# * http://lists.alioth.debian.org/pipermail/debian-live-devel/2007-June/001517.html
+# * http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=363047
+
+modprobe ide-generic