[arch-releng] [RFC] archiso patches
I will merge all these patches in master during this weekend (maybe on Sat or Sun) Please review if something does not like ;)
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> --- README | 29 ++++--- configs/releng/aitab | 4 + configs/releng/aitab.core | 6 -- configs/releng/aitab.netinstall | 4 - configs/releng/build.sh | 151 ++++++------------------------------- configs/releng/core.exclude.i686 | 4 - configs/releng/core.exclude.x86_64 | 4 - 7 files changed, 40 insertions(+), 162 deletions(-) create mode 100644 configs/releng/aitab delete mode 100644 configs/releng/aitab.core delete mode 100644 configs/releng/aitab.netinstall delete mode 100644 configs/releng/core.exclude.i686 delete mode 100644 configs/releng/core.exclude.x86_64 diff --git a/README b/README index 00ac59e..c030038 100644 --- a/README +++ b/README @@ -165,13 +165,12 @@ if nothing is specified on command line. *** Transfer ISO image to target medium (configs/releng) -ISO images names consist of: archlinux-<YYYY>.<MM>.<DD>-<TYPE>-<ARCH>.iso +ISO images names consist of: archlinux-<YYYY>.<MM>.<DD>-<ARCH>.iso Where: <YYYY> Year <MM> Month <DD> Day - <TYPE> netinstall | core <ARCH> i686 | x86_64 | dual(*) (*) "dual" includes both i686 and x86_64 architectures. @@ -190,7 +189,7 @@ Nomeclature: 1) Write it directly using your favorite recording program. -# cdrecord dev=<B>,<T>,<L> -dao archlinux-<YYYY>.<MM>.<DD>-<TYPE>-<ARCH>.iso +# cdrecord dev=<B>,<T>,<L> -dao archlinux-<YYYY>.<MM>.<DD>-<ARCH>.iso ** To -> USB Flash Drive (USB-key) / Memory card (SD) / @@ -209,10 +208,10 @@ Nomeclature: (example: /dev/sdx1) <MNT-TARGET-N>: Mount point path where <DEV-TARGET-N> is mounted (example: /mnt/sdx/1) -<ISO-SOURCE>: Path to the ISO file archlinux-<YYYY>.<MM>.<DD>-<TYPE>-<ARCH>.iso - (example: ~/archlinux-2012.04.16-netinstall-x86_64.iso) +<ISO-SOURCE>: Path to the ISO file archlinux-<YYYY>.<MM>.<DD>-<ARCH>.iso + (example: ~/archlinux-2012.07.22-x86_64.iso) <FS-LABEL>: Represents the filesystem label of the <ISO-SOURCE> - (example: ARCH_201204 [for all ~/archlinux-2012.04.*.iso]) + (example: ARCH_201207 [for all ~/archlinux-2012.07.*.iso]) * PC-BIOS (MBR): @@ -288,19 +287,19 @@ Note: Using here a GPT partition mode as example, but MBR should also works ** ISO in loopback mode. Note: Described method is for using with GRUB2. - GRUB2 is installed on target media and archlinux-<YYYY>.<MM>.<DD>-<TYPE>-<ARCH>.iso + GRUB2 is installed on target media and archlinux-<YYYY>.<MM>.<DD>-<ARCH>.iso is at path <TARGET-PATH> on disk <D> and partition <P>, where filesystem is labeled as <TARGET-FS-LABEL>. menuentry "Arch Linux (x86_64)" { - set isofile="/<TARGET-PATH>/archlinux-<YYYY>.<MM>.<DD>-<TYPE>-<ARCH>.iso" + set isofile="/<TARGET-PATH>/archlinux-<YYYY>.<MM>.<DD>-<ARCH>.iso" loopback loop (hd<D>,<P>)$isofile linux (loop)/arch/boot/x86_64/vmlinuz archisolabel=<FS-LABEL> img_label=<TARGET-FS-LABEL> img_loop=$isofile initrd (loop)/arch/boot/x86_64/archiso.img } menuentry "Arch Linux (i686)" { - set isofile="/<TARGET-PATH>/archlinux-<YYYY>.<MM>.<DD>-<TYPE>-<ARCH>.iso" + set isofile="/<TARGET-PATH>/archlinux-<YYYY>.<MM>.<DD>-<ARCH>.iso" loopback loop (hd<D>,<P>)$isofile linux (loop)/arch/boot/i686/vmlinuz archisolabel=<FS-LABEL> img_label=<TARGET-FS-LABEL> img_loop=$isofile initrd (loop)/arch/boot/i686/archiso.img @@ -311,7 +310,7 @@ menuentry "Arch Linux (i686)" { Note: Described method is for using with SYSLINUX. Anyway MEMDISK from SYSLINUX can work with other bootloaders. - SYSLINUX is installed on target media and archlinux-<YYYY>.<MM>.<DD>-<TYPE>-<ARCH>.iso + SYSLINUX is installed on target media and archlinux-<YYYY>.<MM>.<DD>-<ARCH>.iso is at path <TARGET-PATH>. On 32-bit systems, is needed to pass vmalloc=nnM to the kernel, where nn is the size of the ISO image plus 64 MiB (or 128 MiB). @@ -319,12 +318,12 @@ Note: Described method is for using with SYSLINUX. Anyway MEMDISK from SYSLINUX LABEL arch_x64 LINUX memdisk - INITRD /<TARGET-PATH>/archlinux-<YYYY>.<MM>.<DD>-<TYPE>-<ARCH>.iso + INITRD /<TARGET-PATH>/archlinux-<YYYY>.<MM>.<DD>-<ARCH>.iso APPEND iso LABEL arch_x32 LINUX memdisk - INITRD /<TARGET-PATH>/archlinux-<YYYY>.<MM>.<DD>-<TYPE>-<ARCH>.iso + INITRD /<TARGET-PATH>/archlinux-<YYYY>.<MM>.<DD>-<ARCH>.iso APPEND iso @@ -378,13 +377,13 @@ methods can be used to serve the rest of live-medium. * NBD -Note: Adjust ARCH_201204 as needed. +Note: Adjust ARCH_201207 as needed. # cat << EOF > /tmp/nbd-server.conf [generic] [archiso] readonly = true - exportname = /dev/disk/by-label/ARCH_201204 + exportname = /dev/disk/by-label/ARCH_201207 EOF # nbd-server -C /tmp/nbd-server.conf @@ -497,6 +496,6 @@ used to build official images with much more things. # make -C archiso/archiso install * Build them! - # /usr/share/archiso/configs/releng/build.sh build all all + # /usr/share/archiso/configs/releng/build.sh build all Note: See build.sh -h for more options. diff --git a/configs/releng/aitab b/configs/releng/aitab new file mode 100644 index 0000000..ede4033 --- /dev/null +++ b/configs/releng/aitab @@ -0,0 +1,4 @@ +# <img> <mnt> <arch> <sfs_comp> <fs_type> <fs_size> +root-image / %ARCH% xz ext4 50% +usr-lib-modules /usr/lib/modules %ARCH% xz ext4 50% +usr-share /usr/share any xz ext4 50% diff --git a/configs/releng/aitab.core b/configs/releng/aitab.core deleted file mode 100644 index ffceeda..0000000 --- a/configs/releng/aitab.core +++ /dev/null @@ -1,6 +0,0 @@ -# <img> <mnt> <arch> <sfs_comp> <fs_type> <fs_size> -root-image / %ARCH% xz ext4 50% -usr-lib-modules /usr/lib/modules %ARCH% xz ext4 50% -usr-share /usr/share any xz ext4 50% -repo-core-%ARCH% /repo/core/%ARCH% %ARCH% xz none 0 -repo-core-any /repo/core/any any xz none 0 diff --git a/configs/releng/aitab.netinstall b/configs/releng/aitab.netinstall deleted file mode 100644 index ede4033..0000000 --- a/configs/releng/aitab.netinstall +++ /dev/null @@ -1,4 +0,0 @@ -# <img> <mnt> <arch> <sfs_comp> <fs_type> <fs_size> -root-image / %ARCH% xz ext4 50% -usr-lib-modules /usr/lib/modules %ARCH% xz ext4 50% -usr-share /usr/share any xz ext4 50% diff --git a/configs/releng/build.sh b/configs/releng/build.sh index 5352000..2d792b5 100755 --- a/configs/releng/build.sh +++ b/configs/releng/build.sh @@ -175,51 +175,11 @@ make_usr_share() { fi } -# Make [core] repository, keep "any" pkgs in a separate fs (makes more "dual-iso" friendly) -make_core_repo() { - if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then - local _url _urls _pkg_name _dst _pkgs _cache_dir - mkdir -p ${work_dir}/repo-core-any - mkdir -p ${work_dir}/repo-core-${arch} - mkdir -p ${work_dir}/pacman.db/var/lib/pacman - pacman --config "${pacman_conf}" -Sy -r ${work_dir}/pacman.db - _pkgs=$(comm -2 -3 <(pacman --config "${pacman_conf}" -Sql -r ${work_dir}/pacman.db core | sort | sed 's@^@core/@') \ - <(grep -v ^# ${script_path}/core.exclude.${arch} | sort | sed 's@^@core/@')) - _urls=$(pacman --config "${pacman_conf}" -Sddp -r ${work_dir}/pacman.db ${_pkgs}) - pacman --config "${pacman_conf}" -Swdd -r ${work_dir}/pacman.db --noprogressbar --noconfirm ${_pkgs} - for _url in ${_urls}; do - _pkg_name=${_url##*/} - _dst=${work_dir}/repo-core-${arch}/${_pkg_name} - for _cache_dir in ${cache_dirs[@]}; do - if [[ -e "${_cache_dir}/${_pkg_name}" ]]; then - cp "${_cache_dir}/${_pkg_name}" ${_dst} - fi - done - # download the package signature - curl -sC - -f "${_url}.sig" > "${_dst}.sig" - repo-add -q ${work_dir}/repo-core-${arch}/core.db.tar.gz ${_dst} - # remove the signature file again as it is now included in the db file - rm -f "${_dst}.sig" - if [[ ${_pkg_name} == *any.pkg.tar* ]]; then - mv ${_dst} ${work_dir}/repo-core-any/${_pkg_name} - ln -sf ../any/${_pkg_name} ${_dst} - fi - done - # Remove old copy of db file - rm -f ${work_dir}/repo-core-${arch}/core.db.tar.gz.old - mkdir -p ${work_dir}/iso/${install_dir} - pacman --config "${pacman_conf}" -Sp -r ${work_dir}/pacman.db --print-format "%r/%n-%v" ${_pkgs} | sort > ${work_dir}/iso/${install_dir}/pkglist.repo-core.${arch}.txt - : > ${work_dir}/build.${FUNCNAME} - fi -} - # Process aitab -# args: $1 (core | netinstall) make_aitab() { - local _iso_type=${1} - if [[ ! -e ${work_dir}/build.${FUNCNAME}_${_iso_type} ]]; then - sed "s|%ARCH%|${arch}|g" ${script_path}/aitab.${_iso_type} > ${work_dir}/iso/${install_dir}/aitab - : > ${work_dir}/build.${FUNCNAME}_${_iso_type} + if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then + sed "s|%ARCH%|${arch}|g" ${script_path}/aitab > ${work_dir}/iso/${install_dir}/aitab + : > ${work_dir}/build.${FUNCNAME} fi } @@ -230,18 +190,14 @@ make_prepare() { } # Build ISO -# args: $1 (core | netinstall) make_iso() { - local _iso_type=${1} mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" checksum - mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" -L "${iso_label}" -o "${out_dir}" iso "${iso_name}-${iso_version}-${_iso_type}-${arch}.iso" + mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" -L "${iso_label}" -o "${out_dir}" iso "${iso_name}-${iso_version}-${arch}.iso" } # Build dual-iso images from ${work_dir}/i686/iso and ${work_dir}/x86_64/iso -# args: $1 (core | netinstall) make_dual() { - local _iso_type=${1} - if [[ ! -e ${work_dir}/dual/build.${FUNCNAME}_${_iso_type} ]]; then + if [[ ! -e ${work_dir}/dual/build.${FUNCNAME} ]]; then if [[ ! -d ${work_dir}/i686/iso || ! -d ${work_dir}/x86_64/iso ]]; then echo "ERROR: i686 or x86_64 builds does not exist." _usage 1 @@ -259,29 +215,15 @@ make_dual() { cp -a -l -n ${_src_two} ${work_dir}/dual rm -f ${work_dir}/dual/iso/${install_dir}/aitab rm -f ${work_dir}/dual/iso/${install_dir}/boot/syslinux/*.cfg - if [[ ${_iso_type} == "core" ]]; then - if [[ ! -e ${work_dir}/dual/iso/${install_dir}/any/repo-core-any.sfs || - ! -e ${work_dir}/dual/iso/${install_dir}/i686/repo-core-i686.sfs || - ! -e ${work_dir}/dual/iso/${install_dir}/x86_64/repo-core-x86_64.sfs ]]; then - echo "ERROR: core_iso_single build is not found." - _usage 1 - fi - else - rm -f ${work_dir}/dual/iso/${install_dir}/any/repo-core-any.sfs - rm -f ${work_dir}/dual/iso/${install_dir}/i686/repo-core-i686.sfs - rm -f ${work_dir}/dual/iso/${install_dir}/x86_64/repo-core-x86_64.sfs - rm -f ${work_dir}/dual/iso/${install_dir}/pkglist.repo-core.i686.txt - rm -f ${work_dir}/dual/iso/${install_dir}/pkglist.repo-core.x86_64.txt - fi - paste -d"\n" <(sed "s|%ARCH%|i686|g" ${script_path}/aitab.${_iso_type}) \ - <(sed "s|%ARCH%|x86_64|g" ${script_path}/aitab.${_iso_type}) | uniq > ${work_dir}/dual/iso/${install_dir}/aitab + paste -d"\n" <(sed "s|%ARCH%|i686|g" ${script_path}/aitab) \ + <(sed "s|%ARCH%|x86_64|g" ${script_path}/aitab) | uniq > ${work_dir}/dual/iso/${install_dir}/aitab for _cfg in ${script_path}/syslinux.dual/*.cfg; do sed "s|%ARCHISO_LABEL%|${iso_label}|g; s|%INSTALL_DIR%|${install_dir}|g" ${_cfg} > ${work_dir}/dual/iso/${install_dir}/boot/syslinux/${_cfg##*/} done mkarchiso ${verbose} -w "${work_dir}/dual" -D "${install_dir}" checksum - mkarchiso ${verbose} -w "${work_dir}/dual" -D "${install_dir}" -L "${iso_label}" -o "${out_dir}" iso "${iso_name}-${iso_version}-${_iso_type}-dual.iso" - : > ${work_dir}/dual/build.${FUNCNAME}_${_iso_type} + mkarchiso ${verbose} -w "${work_dir}/dual" -D "${install_dir}" -L "${iso_label}" -o "${out_dir}" iso "${iso_name}-${iso_version}-dual.iso" + : > ${work_dir}/dual/build.${FUNCNAME} fi } @@ -326,9 +268,9 @@ make_common_single() { make_customize_root_image make_usr_lib_modules make_usr_share - make_aitab $1 - make_prepare $1 - make_iso $1 + make_aitab + make_prepare + make_iso } _usage () @@ -352,8 +294,8 @@ _usage () echo " -h This help message" echo echo " Commands:" - echo " build <mode> <type>" - echo " Build selected .iso by <mode> and <type>" + echo " build <mode>" + echo " Build selected .iso by <mode>" echo " purge <mode>" echo " Clean working directory except iso/ directory of build <mode>" echo " clean <mode>" @@ -361,7 +303,6 @@ _usage () echo echo " Command options:" echo " <mode> Valid values 'single', 'dual' or 'all'" - echo " <type> Valid values 'netinstall', 'core' or 'all'" exit ${1} } @@ -422,14 +363,6 @@ if [[ $# -lt 2 ]]; then fi command_mode="${2}" -if [[ ${command_name} == "build" ]]; then - if [[ $# -lt 3 ]]; then - echo "No build type specified" - _usage 1 - fi -command_type="${3}" -fi - if [[ ${command_mode} == "all" && ${arch} != "x86_64" ]]; then echo "This mode <all> needs to be run on x86_64" _usage 1 @@ -445,58 +378,18 @@ case "${command_name}" in build) case "${command_mode}" in single) - case "${command_type}" in - netinstall) - make_common_single netinstall - ;; - core) - make_core_repo - make_common_single core - ;; - all) - make_common_single netinstall - make_core_repo - make_common_single core - ;; - *) - echo "Invalid build type '${command_type}'" - _usage 1 - ;; - esac + make_common_single ;; dual) - case "${command_type}" in - netinstall) - make_dual netinstall - ;; - core) - make_dual core - ;; - all) - make_dual netinstall - make_dual core - ;; - *) - echo "Invalid build type '${command_type}'" - _usage 1 - ;; - esac + make_dual ;; all) - case "${command_type}" in - netinstall|core|all) - $0 ${cmd_args} build single ${command_type} - $0 ${cmd_args} purge single - linux32 $0 ${cmd_args} build single ${command_type} - linux32 $0 ${cmd_args} purge single - $0 ${cmd_args} build dual ${command_type} - $0 ${cmd_args} purge dual - ;; - *) - echo "Invalid build type '${command_type}'" - _usage 1 - ;; - esac + $0 ${cmd_args} build single + $0 ${cmd_args} purge single + linux32 $0 ${cmd_args} build single + linux32 $0 ${cmd_args} purge single + $0 ${cmd_args} build dual + $0 ${cmd_args} purge dual ;; *) echo "Invalid build mode '${command_mode}'" diff --git a/configs/releng/core.exclude.i686 b/configs/releng/core.exclude.i686 deleted file mode 100644 index a04ceef..0000000 --- a/configs/releng/core.exclude.i686 +++ /dev/null @@ -1,4 +0,0 @@ -gcc-ada -gcc-fortran -gcc-go -gcc-objc diff --git a/configs/releng/core.exclude.x86_64 b/configs/releng/core.exclude.x86_64 deleted file mode 100644 index a04ceef..0000000 --- a/configs/releng/core.exclude.x86_64 +++ /dev/null @@ -1,4 +0,0 @@ -gcc-ada -gcc-fortran -gcc-go -gcc-objc -- 1.7.11.4
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> --- configs/releng/build.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/configs/releng/build.sh b/configs/releng/build.sh index 2d792b5..1dbf4ba 100755 --- a/configs/releng/build.sh +++ b/configs/releng/build.sh @@ -141,6 +141,7 @@ make_isolinux() { make_customize_root_image() { if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then cp -af ${script_path}/root-image ${work_dir} + cp -aT ${work_dir}/root-image/etc/skel/ ${work_dir}/root-image/root/ chmod 750 ${work_dir}/root-image/etc/sudoers.d chmod 440 ${work_dir}/root-image/etc/sudoers.d/g_wheel mkdir -p ${work_dir}/root-image/etc/pacman.d -- 1.7.11.4
From: Pierre Schmitz <pierre@archlinux.de> This dist function creates a tar archive of a tag. Signed-off-by: Pierre Schmitz <pierre@archlinux.de> --- archiso/Makefile | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/archiso/Makefile b/archiso/Makefile index 03f9a16..6a73d00 100644 --- a/archiso/Makefile +++ b/archiso/Makefile @@ -1,3 +1,5 @@ +V=1 + all: install: install-program install-hooks install-examples install-doc @@ -54,4 +56,8 @@ uninstall: rm -f $(DESTDIR)/usr/lib/initcpio/install/archiso_kms rm -rf $(DESTDIR)/usr/share/archiso/ -.PHONY: install install-program install-hooks install-examples install-doc uninstall +dist: + git archive --format=tar --prefix=archiso-$(V)/ v$(V) | gzip -9 > archiso-$(V).tar.gz + gpg --detach-sign --use-agent archiso-$(V).tar.gz + +.PHONY: install install-program install-hooks install-examples install-doc uninstall dist -- 1.7.11.4
From: Pierre Schmitz <pierre@archlinux.de> * We use a rc.conf file loser to the upstream default. * Use the recommend config files to setup hostname, locale, timezone and console EDIT (Gerardo): Add empty FONT= and use ln -f for localtime Signed-off-by: Pierre Schmitz <pierre@archlinux.de> Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> --- README | 18 -------- configs/releng/build.sh | 1 + configs/releng/root-image/etc/hostname | 1 + configs/releng/root-image/etc/locale.conf | 1 + configs/releng/root-image/etc/rc.conf | 48 +++++++++------------- .../etc/rc.d/functions.d/prepare_locale_gen | 11 ----- configs/releng/root-image/etc/timezone | 1 + configs/releng/root-image/etc/vconsole.conf | 2 + 8 files changed, 25 insertions(+), 58 deletions(-) create mode 100644 configs/releng/root-image/etc/hostname create mode 100644 configs/releng/root-image/etc/locale.conf delete mode 100644 configs/releng/root-image/etc/rc.d/functions.d/prepare_locale_gen create mode 100644 configs/releng/root-image/etc/timezone create mode 100644 configs/releng/root-image/etc/vconsole.conf diff --git a/README b/README index c030038..5bf64f0 100644 --- a/README +++ b/README @@ -145,24 +145,6 @@ INDEX -*** Boot parameters (only for configs/releng) - -** /etc/rc.conf - -By default these parameters are set by default to these values -if nothing is specified on command line. - -* locale= "en_US.UTF-8" -* daemon_locale= "no" -* hardwareclock= "UTC" -* timezone= "UTC" -* keymap= "us" -* consolefont= (unset) -* consolemap= (unset) -* usecolor= "yes" - - - *** Transfer ISO image to target medium (configs/releng) ISO images names consist of: archlinux-<YYYY>.<MM>.<DD>-<ARCH>.iso diff --git a/configs/releng/build.sh b/configs/releng/build.sh index 1dbf4ba..ea081d9 100755 --- a/configs/releng/build.sh +++ b/configs/releng/build.sh @@ -142,6 +142,7 @@ make_customize_root_image() { if [[ ! -e ${work_dir}/build.${FUNCNAME} ]]; then cp -af ${script_path}/root-image ${work_dir} cp -aT ${work_dir}/root-image/etc/skel/ ${work_dir}/root-image/root/ + ln -sf /usr/share/zoneinfo/UTC ${work_dir}/root-image/etc/localtime chmod 750 ${work_dir}/root-image/etc/sudoers.d chmod 440 ${work_dir}/root-image/etc/sudoers.d/g_wheel mkdir -p ${work_dir}/root-image/etc/pacman.d diff --git a/configs/releng/root-image/etc/hostname b/configs/releng/root-image/etc/hostname new file mode 100644 index 0000000..2dbe21e --- /dev/null +++ b/configs/releng/root-image/etc/hostname @@ -0,0 +1 @@ +archiso diff --git a/configs/releng/root-image/etc/locale.conf b/configs/releng/root-image/etc/locale.conf new file mode 100644 index 0000000..01ec548 --- /dev/null +++ b/configs/releng/root-image/etc/locale.conf @@ -0,0 +1 @@ +LANG=en_US.UTF-8 diff --git a/configs/releng/root-image/etc/rc.conf b/configs/releng/root-image/etc/rc.conf index d8dedec..f97ec88 100644 --- a/configs/releng/root-image/etc/rc.conf +++ b/configs/releng/root-image/etc/rc.conf @@ -1,33 +1,23 @@ -# -# /etc/rc.conf - Main Configuration for Arch Linux - . /etc/archiso/functions +# +# /etc/rc.conf - configuration file for initscripts +# +# Most of rc.conf has been replaced by various other configuration +# files. See archlinux(7) for details. +# +# For more details on rc.conf see rc.conf(5). +# -LOCALE_DEFAULT="en_US.UTF-8" -DAEMON_LOCALE_DEFAULT="no" -CLOCK_DEFAULT="UTC" -TIMEZONE_DEFAULT="UTC" -KEYMAP_DEFAULT="us" -CONSOLEFONT_DEFAULT= -CONSOLEMAP_DEFAULT= -USECOLOR_DEFAULT="yes" - -LOCALE="$(kernel_cmdline locale ${LOCALE_DEFAULT})" -DAEMON_LOCALE="$(kernel_cmdline daemon_locale ${DAEMON_LOCALE_DEFAULT})" -HARDWARECLOCK="$(kernel_cmdline clock ${CLOCK_DEFAULT})" -TIMEZONE="$(kernel_cmdline timezone ${TIMEZONE_DEFAULT})" -KEYMAP="$(kernel_cmdline keymap ${KEYMAP_DEFAULT})" -CONSOLEFONT="$(kernel_cmdline consolefont ${CONSOLEFONT_DEFAULT})" -CONSOLEMAP="$(kernel_cmdline consolemap ${CONSOLEMAP_DEFAULT})" -USECOLOR="$(kernel_cmdline usecolor ${USECOLOR_DEFAULT})" - -MODULES=() - -UDEV_TIMEOUT=30 -USEDMRAID="no" -USEBTRFS="no" -USELVM="no" +DAEMONS=(syslog-ng haveged pacman-init) -HOSTNAME="archiso" +# Storage +# +# USEDMRAID="no" +# USELVM="no" -DAEMONS=(hwclock syslog-ng haveged pacman-init) +# Network +# +# interface= +# address= +# netmask= +# gateway= diff --git a/configs/releng/root-image/etc/rc.d/functions.d/prepare_locale_gen b/configs/releng/root-image/etc/rc.d/functions.d/prepare_locale_gen deleted file mode 100644 index 47ed79d..0000000 --- a/configs/releng/root-image/etc/rc.d/functions.d/prepare_locale_gen +++ /dev/null @@ -1,11 +0,0 @@ -prepare_locale_gen () -{ - if [[ ${LOCALE} != "en_US.UTF-8" ]]; then - stat_busy "Generating locales..." - sed -i "s/#\(${LOCALE/[@.]*}\)/\1/" /etc/locale.gen - /usr/sbin/locale-gen > /dev/null - stat_done - fi -} - -add_hook sysinit_postmount prepare_locale_gen diff --git a/configs/releng/root-image/etc/timezone b/configs/releng/root-image/etc/timezone new file mode 100644 index 0000000..e2e7775 --- /dev/null +++ b/configs/releng/root-image/etc/timezone @@ -0,0 +1 @@ +UTC diff --git a/configs/releng/root-image/etc/vconsole.conf b/configs/releng/root-image/etc/vconsole.conf new file mode 100644 index 0000000..c58bf7e --- /dev/null +++ b/configs/releng/root-image/etc/vconsole.conf @@ -0,0 +1,2 @@ +KEYMAP=us +FONT= -- 1.7.11.4
From: Pierre Schmitz <pierre@archlinux.de> * add the network daemon to rc.conf * configure dhcpd to background immediatly so we don't timeout if network is not up yet Signed-off-by: Pierre Schmitz <pierre@archlinux.de> --- configs/releng/root-image/etc/conf.d/dhcpcd | 6 ++++++ configs/releng/root-image/etc/rc.conf | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 configs/releng/root-image/etc/conf.d/dhcpcd diff --git a/configs/releng/root-image/etc/conf.d/dhcpcd b/configs/releng/root-image/etc/conf.d/dhcpcd new file mode 100644 index 0000000..76b56ff --- /dev/null +++ b/configs/releng/root-image/etc/conf.d/dhcpcd @@ -0,0 +1,6 @@ +# +# Arguments to be passed to the DHCP client daemon +# + +DHCPCD_ARGS="-qb" + diff --git a/configs/releng/root-image/etc/rc.conf b/configs/releng/root-image/etc/rc.conf index f97ec88..a2e6ebf 100644 --- a/configs/releng/root-image/etc/rc.conf +++ b/configs/releng/root-image/etc/rc.conf @@ -8,7 +8,7 @@ # For more details on rc.conf see rc.conf(5). # -DAEMONS=(syslog-ng haveged pacman-init) +DAEMONS=(syslog-ng network haveged pacman-init) # Storage # -- 1.7.11.4
From: Pierre Schmitz <pierre@archlinux.de> This installs zsh and sets it as default for root and the arch user. grml-zsh-config is installed as a userfriendly default configuration. Signed-off-by: Pierre Schmitz <pierre@archlinux.de> --- configs/releng/build.sh | 5 ++++- configs/releng/packages.i686 | 2 ++ configs/releng/packages.x86_64 | 2 ++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/configs/releng/build.sh b/configs/releng/build.sh index ea081d9..795f217 100755 --- a/configs/releng/build.sh +++ b/configs/releng/build.sh @@ -155,7 +155,10 @@ make_customize_root_image() { -r 'locale-gen' \ run mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" \ - -r 'useradd -m -p "" -g users -G "audio,disk,optical,wheel" arch' \ + -r 'usermod -s /bin/zsh root' \ + run + mkarchiso ${verbose} -w "${work_dir}" -C "${pacman_conf}" -D "${install_dir}" \ + -r 'useradd -m -p "" -g users -G "audio,disk,optical,wheel" -s /bin/zsh arch' \ run : > ${work_dir}/build.${FUNCNAME} fi diff --git a/configs/releng/packages.i686 b/configs/releng/packages.i686 index aaf0f37..0b23596 100644 --- a/configs/releng/packages.i686 +++ b/configs/releng/packages.i686 @@ -14,6 +14,7 @@ efibootmgr elinks gnu-netcat gptfdisk +grml-zsh-config grub-bios haveged hdparm @@ -45,3 +46,4 @@ vpnc wireless_tools wpa_actiond zd1211-firmware +zsh diff --git a/configs/releng/packages.x86_64 b/configs/releng/packages.x86_64 index 24f655f..09c3c94 100644 --- a/configs/releng/packages.x86_64 +++ b/configs/releng/packages.x86_64 @@ -14,6 +14,7 @@ efibootmgr elinks gnu-netcat gptfdisk +grml-zsh-config grub-bios grub-efi-x86_64 haveged @@ -46,3 +47,4 @@ vpnc wireless_tools wpa_actiond zd1211-firmware +zsh -- 1.7.11.4
To test it, just boot with init=/bin/systemd Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> --- configs/releng/packages.i686 | 1 + configs/releng/packages.x86_64 | 1 + 2 files changed, 2 insertions(+) diff --git a/configs/releng/packages.i686 b/configs/releng/packages.i686 index 0b23596..f3683d3 100644 --- a/configs/releng/packages.i686 +++ b/configs/releng/packages.i686 @@ -41,6 +41,7 @@ rp-pppoe rsync smartmontools speedtouch +systemd tcpdump vpnc wireless_tools diff --git a/configs/releng/packages.x86_64 b/configs/releng/packages.x86_64 index 09c3c94..6654e28 100644 --- a/configs/releng/packages.x86_64 +++ b/configs/releng/packages.x86_64 @@ -42,6 +42,7 @@ rp-pppoe rsync smartmontools speedtouch +systemd tcpdump vpnc wireless_tools -- 1.7.11.4
Am 03.08.2012 03:08, schrieb Gerardo Exequiel Pozzi:
To test it, just boot with init=/bin/systemd
I don't think it will be that useful to simply add the package when we don't fully support it yet. E.g. the gpg keyring wont get generated on boot etc.; -- Pierre Schmitz, https://pierre-schmitz.com
From: Florian Pritz <bluewind@xinu.at> Signed-off-by: Florian Pritz <bluewind@xinu.at> --- archiso/hooks/archiso_pxe_http | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/archiso/hooks/archiso_pxe_http b/archiso/hooks/archiso_pxe_http index ae56210..32e8ab0 100644 --- a/archiso/hooks/archiso_pxe_http +++ b/archiso/hooks/archiso_pxe_http @@ -19,7 +19,7 @@ _curl_get() { local _dst="${2}" msg ":: Downloading '${_url}'" - if ! curl -f -o "/run/archiso/httpspace/${archisobasedir}${_dst}/${_url##*/}" --create-dirs "${_url}"; then + if ! curl -L -f -o "/run/archiso/httpspace/${archisobasedir}${_dst}/${_url##*/}" --create-dirs "${_url}"; then echo "ERROR: Downloading '${_url}'" echo " Falling back to interactive prompt" echo " You can try to fix the problem manually, log out when you are finished" -- 1.7.11.4
It does not make sense, since filesystem inside the imege is re-formated. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> --- README | 3 +-- archiso/mkarchiso | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/README b/README index 5bf64f0..2494e64 100644 --- a/README +++ b/README @@ -376,7 +376,6 @@ EOF ** For mkarchiso script needs these packages (build host): + squashfs-tools for mksquashfs + libisoburn for xorriso - + rsync for rsync + btrfs-progs for mkfs.btrfs (optional) ** For configs/releng build.sh needs theses packages (build host): @@ -471,7 +470,7 @@ used to build official images with much more things. *** Building official Arch Linux live media. (configs/releng) * Install needed packages. - # pacman -S git make squashfs-tools libisoburn rsync dosfstools lynx patch --needed + # pacman -S git make squashfs-tools libisoburn dosfstools lynx patch --needed * Install archiso. # git clone git://projects.archlinux.org/archiso.git diff --git a/archiso/mkarchiso b/archiso/mkarchiso index c8fc6ff..e3a3346 100755 --- a/archiso/mkarchiso +++ b/archiso/mkarchiso @@ -361,7 +361,7 @@ _mkfs () { _msg_info "Done!" _mount_fs "${_fs_img}" "${work_dir}/mnt/${_src}" _msg_info "Copying '${_fs_src}/' to '${work_dir}/mnt/${_src}/'..." - rsync -aH "${_fs_src}/" "${work_dir}/mnt/${_src}/" + cp -aT "${_fs_src}/" "${work_dir}/mnt/${_src}/" _msg_info "Done!" _umount_fs "${work_dir}/mnt/${_src}" } -- 1.7.11.4
Am 03.08.2012 03:08, schrieb Gerardo Exequiel Pozzi:
I will merge all these patches in master during this weekend (maybe on Sat or Sun)
Please review if something does not like ;)
This is a little late for the iso. As those patches area already reviewed I don't see the need to wait more. I'd prefer to push these today, test and package it. Then a new iso can be build and tested, published tomorrow and announced late sunday. Greetings, Pierre -- Pierre Schmitz, https://pierre-schmitz.com
On 08/03/2012 03:06 AM, Pierre Schmitz wrote:
I will merge all these patches in master during this weekend (maybe on Sat or Sun)
Please review if something does not like ;) This is a little late for the iso. As those patches area already reviewed I don't see the need to wait more. I'd prefer to push these today, test and package it. Then a new iso can be build and tested,
Am 03.08.2012 03:08, schrieb Gerardo Exequiel Pozzi: published tomorrow and announced late sunday.
Greetings,
Pierre
pushed -- Gerardo Exequiel Pozzi \cos^2\alpha + \sin^2\alpha = 1
Am 03.08.2012 21:33, schrieb Gerardo Exequiel Pozzi:
On 08/03/2012 03:06 AM, Pierre Schmitz wrote:
I will merge all these patches in master during this weekend (maybe on Sat or Sun)
Please review if something does not like ;) This is a little late for the iso. As those patches area already reviewed I don't see the need to wait more. I'd prefer to push these today, test and package it. Then a new iso can be build and tested,
Am 03.08.2012 03:08, schrieb Gerardo Exequiel Pozzi: published tomorrow and announced late sunday.
Greetings,
Pierre
pushed
Great, I did some adjustments to make the package built and tagged it. The package is now in [extra]. ATM I am uploading the iso. Greetings, Pierre -- Pierre Schmitz, https://pierre-schmitz.com
participants (2)
-
Gerardo Exequiel Pozzi
-
Pierre Schmitz