aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* [archiso] /lib/initcpio -> /usr/lib/initcpioGerardo Exequiel Pozzi2012-03-045-43/+43
| | | | | | | | | | 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>
* [archiso] Remove uneeded /run/archiso/img_dev_loopGerardo Exequiel Pozzi2012-02-231-2/+0
| | | | | | Superseded by /run/archiso/used_block_devices Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Update archiso_shutdown hookGerardo Exequiel Pozzi2012-02-232-13/+10
| | | | | | | * Add libraries from /usr/lib and /sbin/losetup. * Use used_block_devices to detach loop devices. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [configs/releng] Add /run/aif/ignore_block_devicesGerardo Exequiel Pozzi2012-02-221-0/+7
| | | | | | This is just a symlink to /run/archiso/used_block_devices Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Add /run/archiso/used_block_devicesGerardo Exequiel Pozzi2012-02-222-1/+15
| | | | | | | | | | | This list includes block devices of: * Boot medium [archisodevice] (only if no copytoram= is used) * Loop medium [img_dev] (only if no copytoram= is used) * COW space [cowdevice] (only if cowdevice= is used (no tmpfs is used)) * Loop devices used for SquashFS images. * Loop devices used for device-mapper devices (two per each dm-device, one RO{*.fs} and one RW{*.cow}) Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Use losetup/mount instead of mount directly *.sfsGerardo Exequiel Pozzi2012-02-221-1/+3
| | | | Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Setup ro loop devs as read-onlyGerardo Exequiel Pozzi2012-02-222-2/+2
| | | | Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Use _mnt_dev() for SquashFS and dm-mapperGerardo Exequiel Pozzi2012-02-221-16/+3
| | | | Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Remove uneeded ;Gerardo Exequiel Pozzi2012-02-221-1/+1
| | | | Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [configs/releng] packages: btrfs-progs-unstable -> btrfs-progsGerardo Exequiel Pozzi2012-02-222-2/+2
| | | | Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Misc style cleanupsGerardo Exequiel Pozzi2012-02-228-53/+41
| | | | | | | | | * Add #!/bin/bash to install hooks and fixed vimlines. * Removed empty variables. * Reorder variables, adjust brace/parens in functions. * Removed things implemented in base hook (/tmp, /etc/fstab). Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Avoid full path in add_binaryGerardo Exequiel Pozzi2012-02-033-6/+7
| | | | Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Refactor: Use losetup from util-linuxGerardo Exequiel Pozzi2012-01-113-40/+8
| | | | | | | | | | New losetup from util-linux 2.21 uses new /dev/loop-control from Linux 3.1. Needs mkinitcpio-0.8.2+ (provides modules.devname, or workaround with earlymodules=loop) Get advantages from it! Removing custom shell code. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] simplify _mnt_fs() and _mnt_sfs()Gerardo Exequiel Pozzi2012-01-051-6/+4
| | | | | | mount is now from util-linux (like in e135003c13aef15abc78562a3ab17fa41c0330cc) Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Make fstab from initramfsGerardo Exequiel Pozzi2012-01-051-7/+10
| | | | | | | This is needed for initscripts 2012.01, at least the entry for /. Otherwise / is remounted ro, but not remounted rw later. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] README: Fixed a tiny issuejamesm-sitegen2012-01-051-2/+2
| | | | | | We are not inside the chroots until we are chrooted ;-) Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] update testisoGerardo Exequiel Pozzi2011-12-161-5/+5
| | | | Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Rename archiso_curl_url= to archiso_http_srv=Gerardo Exequiel Pozzi2011-12-048-56/+22
| | | | | | Also rename curlspace_size= to archiso_http_spc= Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] archiso_pxe_curl rename to archiso_pxe_httpGerardo Exequiel Pozzi2011-12-036-12/+12
| | | | Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Cleanup: pxe_curl: Remove download-iso-loopback support.Gerardo Exequiel Pozzi2011-12-032-39/+22
| | | | | | | This was the first implementation that downloads the complete ISO, but now we have the posibility of download only needed *.sfs files. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Cleanup: Remove *.fs support.Gerardo Exequiel Pozzi2011-12-034-34/+8
| | | | | | | | | | This was useful to me during development of dm-snapshot support to create very quickly isos without wating for SquashFS compression. Is time to remove this, I think the is no practical usage, and make the code a bit more simple. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [configs/releng] Add darkhttpd to packages.*Gerardo Exequiel Pozzi2011-12-022-0/+2
| | | | | | | | | | | | | | | | Simple way to enable self-PXE-server live-enviroment with HTTP. dnsmasq --port=0 \ --enable-tftp \ --tftp-root=/run/archiso/bootmnt \ --dhcp-range=192.168.0.2,192.168.0.254,86400 \ --dhcp-boot=/arch/boot/syslinux/gpxelinux.0 \ --dhcp-option-force=209,boot/syslinux/archiso.cfg \ --dhcp-option-force=210,/arch/ darkhttpd /run/archiso/bootmnt Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [configs/releng] Make syslinux.cfg (loadconfig) with relative paths.Gerardo Exequiel Pozzi2011-12-022-4/+4
| | | | | | | | | | | | We are only using these files only for SYSLINUX bootloader that supports ".." as directories. ISOLINUX jumps to archiso.cfg via isolinux.cfg PXELINUX goes directly to archiso.cfg via DHCP configuration. Suggested by Thomas. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [configs/releng] Use whichsys.c32 to determine bootloader typeGerardo Exequiel Pozzi2011-12-0219-26/+194
| | | | | | | | | | | | | | | * In that way we can have two differents syslinux menus depending if booting from PXE or from non-PXE. Some file renames are made to keep things ordered: archiso_pxe* all things related to PXELINUX archiso_sys* all things related to SYSLINUX *_inc.cfg only contains INCLUDE directive * By default NBD PXE option is selected for booting on timeout. * As (NDB/NFS/HTTP/FTP) server is used the same IP from pxeserver. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Do not use PXE NBD as default.Gerardo Exequiel Pozzi2011-12-023-3/+10
| | | | | | | | | * Now we have more than one PXE boot methods. * archiso_ndb_srv= accepts special ${pxeserver} parameter like in others PXE hooks. * This allows to setup network from initramfs without forcing using a special PXE hook. * Update README Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [configs/*] syslinux: Use UI instead of DEFAULT for *menu.c32Gerardo Exequiel Pozzi2011-12-025-17/+3
| | | | | | | | * UI is more correct than DEFAULT for simple menu system. * Remove TIMEOUT * Remove PROMPT 0, this is the default value. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [configs/releng] Split syslinux cfgs in single arch, like in dual archGerardo Exequiel Pozzi2011-12-024-69/+70
| | | | Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* actually copy the archiso_kms hook to workdirThomas Bächler2011-11-291-0/+1
|
* Add common KMS modules to the releng initramfs image.Thomas Bächler2011-11-293-1/+17
| | | | | | On machines with common graphics chipsets (radeon, intel, nvidia), enable KMS early. Downloading images from a remote server can take time, better view the status with a nice resolution.
* [archiso] Fix libnss symlinks.Gerardo Exequiel Pozzi2011-11-291-2/+2
| | | | | | | | | | | | | | Otherwise does not work. 22100 Nov 29 09:29 ./lib/libnss_dns-2.14.1.so 20 Nov 29 09:29 ./lib/libnss_dns.so.2 -> libnss_dns-2.14.1.so 46732 Nov 29 09:29 ./lib/libnss_files-2.14.1.so 22 Nov 29 09:29 ./lib/libnss_files.so.2 -> libnss_files-2.14.1.so Looks like my test was made before introducing symlinks and using directly libnss_dns-$VERSION.so.2 as libnss_dns.so.2. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Add checksum support to pxe_curlGerardo Exequiel Pozzi2011-11-281-0/+4
| | | | Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Checksum only aitab and *.sfs (per architecture)Gerardo Exequiel Pozzi2011-11-282-11/+21
| | | | | | | | | | | | | | | | | | | | We are currently checksuming all files inside $archisobasedir (aitab, *sfs, kernel/initramfs and boot/syslinux related files) this is stored in one file only. Its works good for now, but I think we only need to checksum only aitab and *.sfs if they are needed. Currently if you boot a dual-iso in i686, also checksum is done for *.sfs of x86_64. Not a big issue, this just take a bit more time. The real issue is when booting via PXE with HTTP/FTP methods, since they download only aitab and needed *.sfs files, can not use directly the only one file where checksums are stored. This patch does: (1) Do not checksum syslinux related files, anyway you are already reach initramfs stage. (2) Do not checksum kernel/initramfs files, for the same as (1) (3) Two checksum.${arch}.md5 for each i686 and x86_64 for only aitab and *.sfs. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [configs/releng] Make all syslinux bootloaders works with the sames configs.Gerardo Exequiel Pozzi2011-11-2814-109/+118
| | | | | | | | | | | | | * 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>
* [archiso] Add DNS resolver support to archiso_pxe_commonGerardo Exequiel Pozzi2011-11-282-0/+17
| | | | | | | | | | | | | | | [ramfs /]# cat /etc/resolv.conf nameserver 192.168.0.77 [ramfs /]# curl -O http://releng.archlinux.org/pxeboot/README % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 1129 100 1129 0 0 2191 0 --:--:-- --:--:-- --:--:-- 4589 [ramfs /]# Do not "add_binary /lib/libnss_dns.so.2", because will add libnss_dns-VERSION.so.2 as libnss_dns.so.2 Is not an issue will work (nobody links directly to VERSION), but is not nice. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Add PXE NFS supportGerardo Exequiel Pozzi2011-11-286-2/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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)
* [archiso] Add archiso_pxe_curl hookGerardo Exequiel Pozzi2011-11-288-5/+115
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* [archiso] Split archiso_pxe_nbd in two hooks.Gerardo Exequiel Pozzi2011-11-288-49/+81
| | | | | | | | | | | 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>
* [configs/*] chroot to root-image for initramfs buildGerardo Exequiel Pozzi2011-11-282-26/+23
| | | | | | | | | | | 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>
* [archiso] Check if /run/archiso/bootmnt is a mountpoint.Gerardo Exequiel Pozzi2011-11-282-1/+2
| | | | | | | In this way allow to mount /run/archiso/bootmnt from another hook, but still use the logic from the main mount_hook, skipping only this mount. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Only accepts aitab insideGerardo Exequiel Pozzi2011-11-281-1/+1
| | | | Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Use different logic when archisodevice == cow_deviceGerardo Exequiel Pozzi2011-11-283-11/+7
| | | | | | | | | | | | * Now bootmnt/img_dev is always a ro-mount, and cowspace is first ro-mount then rw-mount. * Fix a "hidden" bug: at the time of test [[ -ef ]], if devices nodes are not ready, such test will fail then archisodevice will mounted ro and when cow_device is mounted to be rw it fails. (I recently suffered this on a machine with slow USB) Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] simplify _mnt_dev() (mount is now from util-linux)Gerardo Exequiel Pozzi2011-11-281-16/+3
| | | | Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Do not bind mount on /bootmntGerardo Exequiel Pozzi2011-11-161-3/+0
| | | | | | | Boot media is already available in /run/archiso/bootmnt if no copytoram is used. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [configs/releng] Remove inetutils from packages.*Gerardo Exequiel Pozzi2011-11-162-2/+0
| | | | | | Is in {base} since 1.8-4. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [hooks/archiso_pxe_nbd] Refactor, remove sed usage.Gerardo Exequiel Pozzi2011-11-162-40/+12
| | | | | | | | * ipconfig cmd writes a file in /tmp that is ready for direct evaluation. We can use this instead of parsing the output, to do this some variable renames are needed. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [hooks/archiso_pxe_nbd] Remove grep usageGerardo Exequiel Pozzi2011-11-151-4/+9
| | | | Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] install hook cleanupsGerardo Exequiel Pozzi2011-11-053-7/+3
| | | | | | | | * Remove IDE stuff. * Remove modules that can be added via relevant hooks. * Replace sata with virtio in baseline profile. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Add archiso_shutdown hook.Gerardo Exequiel Pozzi2011-10-237-3/+89
| | | | | | | | | | | | | | | | | | 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>
* [archiso] Add support for img_label= and allow img_dev same as cow_devGerardo Exequiel Pozzi2011-10-232-19/+20
| | | | | | | | | * Support img_label= * Allow use img_dev= as cow_device= * Use new function _mnt_dev() from archiso. * Check for error while setting loopback device. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
* [archiso] Mount all fs on /run/archiso instead of /Gerardo Exequiel Pozzi2011-10-235-41/+40
| | | | | | | This allow to take control again of these mountpoints outside initramfs. (i.e: on deinitramfs stage at shutdown for unmount it) Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>