summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
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 DNS resolver support to archiso_pxe_commonGerardo Exequiel Pozzi
[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>
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-11-28[archiso] Check if /run/archiso/bootmnt is a mountpoint.Gerardo Exequiel Pozzi
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>
2011-11-28[archiso] Only accepts aitab insideGerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-11-28[archiso] Use different logic when archisodevice == cow_deviceGerardo Exequiel Pozzi
* 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>
2011-11-28[archiso] simplify _mnt_dev() (mount is now from util-linux)Gerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-11-16[archiso] Do not bind mount on /bootmntGerardo Exequiel Pozzi
Boot media is already available in /run/archiso/bootmnt if no copytoram is used. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-11-16[configs/releng] Remove inetutils from packages.*Gerardo Exequiel Pozzi
Is in {base} since 1.8-4. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-11-16[hooks/archiso_pxe_nbd] Refactor, remove sed usage.Gerardo Exequiel Pozzi
* 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>
2011-11-15[hooks/archiso_pxe_nbd] Remove grep usageGerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-11-05[archiso] install hook cleanupsGerardo Exequiel Pozzi
* 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>
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>
2011-10-23[archiso] Add support for img_label= and allow img_dev same as cow_devGerardo Exequiel Pozzi
* 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>
2011-10-23[archiso] Mount all fs on /run/archiso instead of /Gerardo Exequiel Pozzi
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>
2011-10-23[archiso] Allow persistent cow dm-snapshots.Gerardo Exequiel Pozzi
Add some options to control where all COW files will be located. Until this moment all files are located in a tmpfs filesystem. Now is posible to set a device via a filesystem label or device node plus a directory, where all these files will be stored. All dm-snapshot devices will be persistent by default, but this can be changed if wanted. Take care, a filesystem that does not support sparse files maybe is not the best choice for COW files, because they are created with the same size (is apparent) like the read-only device (the image.fs inside .sfs). Of course sooner or later, depending on use, these files actually end up being as big as the read-only device. KNOW-ISSUE: On shutdown in step "Unmounting Filesystems" will [FAIL], all filesystem except $cow_device, will be unmounted/remounted-ro. For this reason this change needs an archiso_shutdown hook, thats unmount all block devices used by archiso. (Work in progress) Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-10-23[archiso] Add a new function _mnt_dev(), use it for mounting archisodevice.Gerardo Exequiel Pozzi
Separate this code from main mount hook, and make it more generic. _mnt_dev(device, mountpoint, flags) -> wait for device and mount, launch a shell if something goes wrong. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-10-22[configs/releng] Disable pacman progress bar during core-repo downloadGerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-10-21[configs/releng] Add gptfdisk to live enviroment.Gerardo Exequiel Pozzi
Image size in MiB: old -- new -- iso 679 -> 693 core-dual 374 -> 381 core-i686 380 -> 387 core-x86_64 309 -> 323 netinstall-dual 182 -> 189 netinstall-i686 185 -> 192 netinstall-x86_64 Was requested: mailing-list and bugtracker. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-10-14[archiso] disable progress bar in mksquashfsGerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-10-12[archiso] Unify ->Gerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-10-03[archiso] Create /etc/mtab as symlink.Gerardo Exequiel Pozzi
This is now supported since util-linux pkg enable it. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-30[configs/releng] Replace wget with pacman for make_core_repo()Gerardo Exequiel Pozzi
Fix: FS#18959 - download_repos.sh does not report tcp timeouts and such * Always use pacman cache. Previously pacman cache was used if package already exists on it, now is also used to download pkg on it. Finally copy all packages from cache with cp and make core.db. * Using pacman, we can sure that package integrity is right. * Always get a [core] package, in case of [testing] enabled. * Now works when mirror is: Server = file:// ;) Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-30[archiso] Cleanup archiso install hook.Gerardo Exequiel Pozzi
* These files was added during developement stage of dm-snapshot branch of archiso. Never was used, sinse archiso works directly with dmsetup and with device nodes in /dev/mapper/ * Added 11-dm-initramfs.rules to keep dm info about nodes persistent in udev db across initramfs/real-root. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-29[archiso] Integrate omit_kill_nbd_client logic in hook.Gerardo Exequiel Pozzi
This makes archiso_pxe_nbd functionallity full-independient from archiso profiles (configs/*). Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-29[archiso] Switch from cdrkit to libisoburnGerardo Exequiel Pozzi
* Preparing terrain for UEFI support. * Also make isohybrid hack in one step. * Removed UDF layer, since xorriso does not support it. * Removed unsupported options by xorriso (-uid/-gid/-allow-limited-size) * Removed option already default in xorriso (-input-charset utf-8) Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-29[configs/releng] Support configurable build options via command lineGerardo Exequiel Pozzi
usage ./build.sh [options] command <command options> General options: -N <iso_name> Set an iso filename (prefix) Default: archlinux -V <iso_version> Set an iso version (in filename) Default: 2011.08.18 -L <iso_label> Set an iso label (disk label) Default: ARCH_201108 -D <install_dir> Set an install_dir (directory inside iso) Default: arch -w <work_dir> Set the working directory Default: work -o <out_dir> Set the output directory Default: out -v Enable verbose output -h This help message Commands: build <mode> <type> Build selected .iso by <mode> and <type> purge <mode> Clean working directory except iso/ directory of build <mode> clean <mode> Clean working directory and .iso file in output directory of build <mode> Command options: <mode> Valid values 'single' or 'dual' <type> Valid values 'netinstall', 'core' or 'all' Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-29[archiso] Use -w <work_dir> instead of cmd <work>, add -o <out_dir>Gerardo Exequiel Pozzi
Default (if not specified) -w work -o out. -o <out_dir> is only used by 'iso' command. Adjust build.sh of releng and baseline profile to reflect this change. <project> - work <- $work_dir - out <- $out_dir Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-29[configs/*] Rename $name -> $iso_name, $version -> $iso_versionGerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-28[archiso] Change location of nbd_client.pidGerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-26[archiso] Load module loop in run_hook()Gerardo Exequiel Pozzi
Otherwise archiso_loop_mnt will fail. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-26[archiso] Avoid regenerate checksum -> .iso.Gerardo Exequiel Pozzi
Also put _is_directory_changed() inside 'if' avoiding premature execution if it returns non-zero. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-24[archiso] Add missing 'rm' some files on uninstallGerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-19[configs/releng] Add irssi to live-enviromentGerardo Exequiel Pozzi
extra/irssi: * Requested by Florian Pritz http://mailman.archlinux.org/pipermail/arch-releng/2011-July/001853.html Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-19[configs/releng] Add three packages to live-enviromentGerardo Exequiel Pozzi
core/linux-atm: * This was present in 2010.05 * Optionally needed by iproute2. Needed for ATM connections. extra/mtools: * This was present in 2010.05 * Optionally dependency of syslinux. Needed if want to install syslinux on vfat. extra/smartmontools: * Requested by Thomas Mudrunka https://bugs.archlinux.org/task/25633 Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-18[configs/releng] Set /lib/modules with 50% of free spaceGerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-18[configs/releng] Add missing serial console support to syslinuxGerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-18[configs/releng] Replace rc.d/archiso with initscripts hooks.Gerardo Exequiel Pozzi
In this way: * Prepare locales requested by boot param mostly early possible. * Setup special console at end of rc.sysinit Remove unneded include from automated_script (already included by rc.conf) Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-18[configs/baseline] Add missing -D param to checksum commandGerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-18[configs/releng] Add missing -D param to checksum commandGerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-15[configs/releng] Fixed and improved serial console support.Gerardo Exequiel Pozzi
Current implementation fails if console=ttyS0 (without more options). Tested with: console=ttyS0 console=ttyS0,9600 console=ttyS0,38400 console=ttyS0,9600n8 console=ttyS0,38400n8r Closing FS#16232 Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-15[archiso] Delete README.oldGerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-15[archiso] Makefile trivial fix (if configs/ already on DESTDIR)Gerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-15[archiso] Add checksum= boot paramGerardo Exequiel Pozzi
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-15[configs/releng] Add purge_* commandsGerardo Exequiel Pozzi
purge_single command can be usefull to save space during build. It removes all files in working directory except "iso/" and *.iso. Workflow can be: (32) ./build.sh all_iso_single -> i686 *.iso are ready. (32) ./build.sh purge_single -> safe cleanup. (64) ./build.sh all_iso_single -> x86_64 *.iso are ready. (64) ./build.sh purge_single -> safe cleanup. (any) ./build.sh all_iso_dual -> dual *.iso are ready. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-15[configs/*] Use $script_path for "source" files.Gerardo Exequiel Pozzi
Allows to execute directly build.sh from any directory, using it as working dir. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-15[configs/*] Remove custom fstab, not needed anymore.Gerardo Exequiel Pozzi
re-mount / as rw does not fail since regular file /etc/mtab does not exist at that stage. /etc/mtab was removed from root-image in this commit: 93763a2d8225a92ef99e73478ac118919872ab27 Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>