summaryrefslogtreecommitdiff
path: root/configs/releng/build.sh
AgeCommit message (Collapse)Author
2013-04-13[configs/releng] pacman 4.1 compatibilityPierre Schmitz
* Remove the unattended-keyring-init patch as this was applied by upstream with pacamn 4.1 * Update our pacman.conf following the new upstream default Signed-off-by: Pierre Schmitz <pierre@archlinux.de> Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2013-02-28[configs/releng] Use curl instead of wgetGerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-12-21[configs/releng] Refactor build.sh: build only dual-isoGerardo Exequiel Pozzi
* This scripts, now runs only in x86_64. * build.sh does not require arguments to run (no more build, clean, purge). * /usr/share split is not done anymore: there are some differences between two arches. (ISO size +60MiB) * /usr/lib/modules split is not done anymore: this was never enabled officially in aitab. Tested and works fine. Maybe some small cosmetic changes needed. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-12-10[configs/releng] Always use x86_64 as primary source for dual-isoGerardo Exequiel Pozzi
Simplify code path. Previously in "dual" mode is executed when arch=i686, i686 was used as primary source. This does not change current behaviour of building "dual" on x86_64. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-11-02[configs/releng] Rework make_customize_root_image()Gerardo Exequiel Pozzi
Using a separate shell script to customize live-enviroment, makes much more readable code. Move all thing except: * Need network access (name resolving). * Need access to some file outside chroot. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-10-25[configs/releng] Remove redundant package installationGerardo Exequiel Pozzi
curl is a dependency for pacman Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-10-20[configs/releng] Rename again / rework autologin@.serviceGerardo Exequiel Pozzi
-f is not needed anymore, disable explicitly default getty service Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-10-19[config/releng] Set again multi-user.target as defaultGerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-10-13[configs/releng] Remove uneeded hack (systemd transition)Gerardo Exequiel Pozzi
initscripts/sysvinit are not part from {base} anymore, systemd* is now in {base}. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-10-13[configs/releng] make packages.both for common packages for each x86_64Gerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-10-06Add the arch user to some useful groupsv3Pierre Schmitz
Only use groups that wont allow damaging the host system by accident. Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2012-10-06Only enable the needed servicesPierre Schmitz
* pacman-init already pulls in services it depends on * the multi-user.target is the default * do not rename the getty service so tools like systemd-delta still work Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2012-10-05Run dhcpcd on all devicesPierre Schmitz
As we did with initscripts, run dhcpcd on all devices and not just eth0. Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2012-10-05Disable ntpd service by defaultPierre Schmitz
A live system should never alter the host system in any way. This includes setting the bios clock. E.g. if the user runs his system in local time we would do the wrong thing here. Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2012-10-03[configs/releng] Install systemd as default (with sysvcompat)Gerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-10-03[configs/releng] Enable systemd servicesGerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-10-03[configs/releng] Add autologin.serviceGerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-09-26[configs/releng] Increase efiboot.img sizeGerardo Exequiel Pozzi
* Increase size to a safe 31M, (currently we have 400K free since latest changes) * Also set a filesystem label, can be useful for future usage... Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-09-26[configs/releng] split make_boot_efi() -> make_efi() / make_efiboot()Gerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-09-26[configs/releng] Use gummiboot-efi instead of UEFI Shell for bootingKeshav P R
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-09-12Copy UEFI Shell to (ISO)/EFI/boot/bootx64.efi for setting up UEFI bootable ↵Keshav P R
USB and add refind-efi-x86_64 to ISO
2012-08-25[archiso] Always copytoram for NBDGerardo Exequiel Pozzi
Avoid issues on shutdown (and during normal usage if network settings changed) Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-08-01Use zsh as default interactive shellPierre Schmitz
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>
2012-08-01Adjust rc.conf for recent initscripts changesPierre Schmitz
* 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>
2012-07-31[configs/releng] Copy default config files from /etc/skel to /rootGerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-07-31[configs/releng] Remove [core] ISO generationGerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-07-25[configs/releng] Add installation guidePierre Schmitz
Download and add the current installation guide as plain text. Signed-off-by: Pierre Schmitz <pierre@archlinux.de> Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-07-18[configs/releng] Add version of pacman-key that allows unattended keyring ↵Gerardo Exequiel Pozzi
initialization This was made originally using directly pacman-key file, convert it in a patch form, to be more easy to track it. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-07-16Adjust for /lib/modules -> /usr/lib/modules moveThomas Bächler
Although everything should be fine now (due to the /lib -> /usr/lib symlink), adjust everything to the proper path. Edited (Gerardo): Also rename function name and image name to be consisten. Signed-off-by: Pierre Schmitz <pierre@archlinux.de> Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-06-24Use the host's package cachePierre Schmitz
Signed-off-by: Pierre Schmitz <pierre@archlinux.de> Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-06-24Use a default pacman.conf to build releng imagesPierre Schmitz
This ensures we do not pick up any testing or third party repos from the host. Signed-off-by: Pierre Schmitz <pierre@archlinux.de> Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-06-24Fix creation of [core] repositoryPierre Schmitz
* Download and add package signatures to the repository database * Support any number of configured package caches Signed-off-by: Pierre Schmitz <pierre@archlinux.de> Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-06-24Use pci.ids from the root image instead of downloading it every timePierre Schmitz
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-06-24Use mirror_status to rank mirrorsPierre Schmitz
Signed-off-by: Pierre Schmitz <pierre@archlinux.de> Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-04-10[configs/releng] Add UEFI boot support via Linux >= 3.3 EFI boot stub on x86_64Gerardo Exequiel Pozzi
Makes an efiboot.img (FAT16) for "El Torito" (additional). Under an EFI-system, implies that this .ISO works only if is used as "CD-ROM/DVD-ROM" not in ISO-HYBRID-MBR mode. If you want, an EFI-ready USB-key, just unpack this "<ISO>/EFI/efiboot.img" (FAT16) to "<USB-key-FAT-formatted>/EFI" then copy "<ISO>/arch" and setup the filesystem label. An aditional EFI shell is provided with an startup script for automatic booting until EFI_STUB supports "linux.conf" to pass boot parms to kernel. Anyway I think that is a good idea to keep this shell, so can customize boot parms, or for doing other tasks on systems without an EFI-shell. RFCv1: Initial efiboot.img build with vmlinuz.efi (Linux with EFI_STUB enabled) and archiso.img (initramfs). RFCv2: Use an startup.nsh with EFI-Shell 2.0 (generated from build.sh) for automatic boot. RFCv3: Use and older EFI-Shell 1.0 instead of 2.0, since not all UEFI-systems are compatible with 2.3+ specs. RFCv4: The script "startup.nsh" improved by Keshav P R, using a for-loop (see notes below from original commit), now that has more than 1-line, I moved it to an independent file and is parsed by build.sh. ---- About startup.nsh: Author: Keshav P R <the.ridikulus.rat@gmail.com> Date: Thu Apr 5 10:33:20 2012 +0530 [configs/releng] Search in all existing UEFI FS mountpoints for archiso efistub kernel file There is no guarantee that the efistub kernel will always be in fs0: (similar to the case inside linux OS where the sda, sdb confusion exists, hence the need for UUIDs), especially when USB (instead os CD/ISO) is used for booting. Hence loop through all possible fs mountpoints (in UEFI) in startup.nsh and try to launch the first mountpoint that contains the archiso files. Cd's into the fs%m:\EFI\archiso directory also may remove future issues with efistub's linux.conf where the efistub might have problems identifying the directory from which the kernel was launched. Also add an helpful echo message showing the user the UEFI PATH to the archiso kernel file being launched by startup.nsh . Hopefully this should work in both CD and USB. Tested in Tianocore UDK/EDK2 DuetPkg X64 UEFI 2.3.1 firmware with EdkShellBinPkg's Shell. ---- Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-04-10[configs/releng] Remove pkglist.repo-core.* from non core-dual images.Gerardo Exequiel Pozzi
They are present by mistake. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-04-09[configs/releng] Generate list of packages.Gerardo Exequiel Pozzi
* For installed packages on live-enviroment use mkarchiso pkglist command. * For packages in [core] repo in core.iso, make a list of them during repo generation. It uses the same format like done by pkglist command: <repo>/<package>-<version> (anyway repo is always core in this case). Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-03-17[configs/releng] Use installed locale.gen instead of local copy.Gerardo Exequiel Pozzi
Now we can do this, since nobody touches this file before this step. (previously by mkarchroot) Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-03-17[configs/releng] Add new build mode: allGerardo Exequiel Pozzi
This mode allow to build all 6 ISOs in just one step if build type is <all>. So "build.sh build all all" -> (single-i686, single-x86_64, dual) X (netinstall, core). Note that the <purge> command is executed between each build step to save space, so do not use this mode if you want to keep all temporal files in work_dir. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-03-16[configs/releng] Use private pacman.db on make_core_repoGerardo Exequiel Pozzi
This allow to execute build.sh in 32-bit-compat without using a chroot and doing tricks. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-03-16[archiso] Implement own chroot functions in mkarchisoGerardo Exequiel Pozzi
* Remove devtools dependency. * Better control over what files are touched inside chroot (root-image). Now: NONE :) * Two new commands: + init: To install {base} group and other needed packages (syslinux for now) + run: If we want to run some command inside chroot (mkinitcpio, locale-gen, useradd, etc etc...) * Renamed command: "created" to "install", says much better what does. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-03-04[archiso] /lib/initcpio -> /usr/lib/initcpioGerardo Exequiel Pozzi
Needs mkinitpcio >= 0.8.4 Next changes will be for mdadm and mkinitcpio-nfs-utils: * /lib/initcpio/udev/11-dm-initramfs.rules * /lib/initcpio/ipconfig , /lib/initcpio/nfsmount Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-12-03[archiso] archiso_pxe_curl rename to archiso_pxe_httpGerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-11-29actually copy the archiso_kms hook to workdirThomas Bächler
2011-11-28[configs/releng] Make all syslinux bootloaders works with the sames configs.Gerardo Exequiel Pozzi
* In that way, we have unified directory scheme among {pxe,sys,ext,iso}linux, sharing the same directory structure and config files. * Also enable IPAPPEND (will show a warning message about unknown directive in non-pxelinux before menu) NEW: * Rename syslinux*.cfg -> archiso*.cfg * Now syslinux.cfg is only a "loadconfig" trick like we are doing for isolinux * All paths are now relative to %INSTALL_DIR% ($archisobasedir) (Default: /arch/) Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-11-28[archiso] Add PXE NFS supportGerardo Exequiel Pozzi
It add support for using *.sfs images via NFS. It must be located after archiso_pxe_nbd in mkinitcpio.conf, in that way NBD is the default. New boot parameters: archiso_nfs_srv=IP:/path Set the NFS IP and path. Accepts ${pxeserver} as IP. archiso_nfs_opt= Sets NFS mount opts (comma separated) Defaults to: port = as given by server portmap daemon rsize = 1024 wsize = 1024 timeo = 7 retrans = 3 acregmin = 3 acregmax = 60 acdirmin = 30 acdirmax = 60 flags = hard, nointr, noposix, cto, ac :: Running Hook [archiso_pxe_common] IP-Config: eth0 hardware address 52:54:00:12:34:57 mtu 1500 IP-Config: eth0 guessed broadcast address 192.168.0.255 IP-Config: eth0 guessed nameserver address 192.168.0.218 IP-Config: eth0 complete (from 192.168.0.218): address: 192.168.0.90 broadcast: 192.168.0.255 netmask: 255.255.255.0 gateway: 192.168.0.218 dns0 : 192.168.0.218 dns1 : 0.0.0.0 rootserver: 192.168.0.218 rootpath: filename : :: Running Hook [archiso_pxe_nbd] :: Running Hook [archiso_pxe_curl] :: Running Hook [archiso_pxe_nfs] :: Mounting '192.168.0.77:/mnt/iso' ... 192.168.0.77:/mnt/iso/ on /run/archiso/bootmnt type nfs (rw,relatime,vers=3,rsize=524288,wsize=524288,namlen=255,hard,nolock,proto=tcp,port=65535,timeo=7,retrans=3,sec=sys,local_lock=all,addr=192.168.0.77) ... My /etc/exports /mnt/iso 192.168.0.90(ro,no_subtree_check,no_root_squash)
2011-11-28[archiso] Add archiso_pxe_curl hookGerardo Exequiel Pozzi
Its add support for downloading the ISO image via HTTP/FTP with curl or download *.sfs files. The files are downloaded on /run/archiso/curlspace (tmpfs) and setup a loop dev from it (like in archiso_loop_mnt) in the ISO case, or just do a bind mount to /run/archiso/bootmnt in the other case. This hook must be located after archiso_pxe_nbd in mkinitcpio.conf, in that way NBD is the default. New bootparm: * archiso_curl_url=(first form) archiso_curl_url=http://192.168.0.7/archlinux/iso/archlinux.iso (absolute form) Use an absolute URL. Fetch the entire ISO archiso_curl_url=ftp://${pxeserver}/archlinux/iso/archlinux.iso (relative form) Use the as IP the same server where PXE reside. Fetch the entire ISO * archiso_curl_url=(second form) archiso_curl_url=http://192.168.0.7/archlinux/iso/unpacked (absolute form) Use an absolute URL. Where unpacked (an example name) is a directory where ${archisobasedir} ("arch" by default) is located with all *.sfs. This fetch only needed files. archiso_curl_url=ftp://${pxeserver}/archlinux/iso/unpacked (relative form) Use the as IP the same server where PXE reside. Where unpacked (an example name) is a directory where ${archisobasedir} ("arch" by default) is located with all *.sfs. This fetch only needed files. * curlspace_size= Set a size for a tmpfs filesystem where files are downloaded. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-11-28[archiso] Split archiso_pxe_nbd in two hooks.Gerardo Exequiel Pozzi
One hook only setup the network device (archiso_pxe_common) the other setup the NBD client (archiso_pxe_nbd). New bootparam: archiso_pxe_srv=IP Allow to set an IP different from the PXE server. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-11-28[configs/*] chroot to root-image for initramfs buildGerardo Exequiel Pozzi
Avoid issues with -b BASEDIR (*). We became independent of the mkinitcpio version of the build environment. (*) For example of a recent issue: http://mailman.archlinux.org/pipermail/arch-projects/2011-November/002202.html http://mailman.archlinux.org/pipermail/arch-projects/2011-November/002205.html Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-10-23[archiso] Add archiso_shutdown hook.Gerardo Exequiel Pozzi
STATUS: Working (std boot, loop_mnt, pxe) with copytoram=[y|n]. NEEDS: initscript > 2011.07.3, mkinitcpio > 0.7.2, mkinitcpio-busybox > 1.18.5-1 Purpose: we need this for propertly unmount $cow_device, used for persistent dm-snapshot devices. This hook is based on work from Tom Gundersen[#1], but adapted for archiso things (specially the shutdown script) [#1] http://mailman.archlinux.org/pipermail/arch-projects/2011-July/001549.html [#2] http://projects.archlinux.org/initscripts.git/commit/?id=1fa7b4b453e96533ae1db3630031285e5fc302b3 [#3] http://mailman.archlinux.org/pipermail/arch-projects/2011-August/001749.html Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>