Commit Graph

218 Commits

Author SHA1 Message Date
Pierre Schmitz
4a33b67542 Move Makefile to project root to avoid issues with git archive
Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2012-08-03 22:36:22 +02:00
Gerardo Exequiel Pozzi
ab7c443a4a [archiso] Replace rsync with cp
It does not make sense, since filesystem inside the imege is re-formated.

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-08-01 20:16:45 -03:00
Florian Pritz
a2d2022ccf archiso_pxe_http: curl should follow redirects
Signed-off-by: Florian Pritz <bluewind@xinu.at>
2012-08-01 20:16:45 -03:00
Pierre Schmitz
281234509f Add dist function to Makefile
This dist function creates a tar archive of a tag.

Signed-off-by: Pierre Schmitz <pierre@archlinux.de>
2012-07-31 19:52:09 -03:00
Gerardo Exequiel Pozzi
36a2496fad [archiso] archiso_pxe_common: /lib -> /usr/lib
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-07-24 21:20:29 -03:00
Gerardo Exequiel Pozzi
ac2d67929b [archiso] Update Makefile
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-07-24 18:54:28 -03:00
Gerardo Exequiel Pozzi
56c2e88913 [archiso] Remove testiso from Makefile
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-07-23 11:49:29 -03:00
Gerardo Exequiel Pozzi
8312642050 [archiso] Remove testiso script
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-07-22 20:29:18 -03:00
Gerardo Exequiel Pozzi
a1424446a1 [archiso] Add btrfs support as filesystem for *.fs.sfs
Implements FS#30378

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-07-20 17:31:20 -03:00
Gerardo Exequiel Pozzi
5ea02f68fe [archiso] archiso_shutdown: use run_cleanuphook()
Simplify build process, using the same method like in shutdown hook by mkinitcpio
we still need a custom shutdown script for archiso,
since "twisted" structure of block devices.

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-07-17 02:25:18 -03:00
Gerardo Exequiel Pozzi
8e9c65fa5d [archiso] mkarchiso: improve info messages
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-05-29 23:48:24 -03:00
Gerardo Exequiel Pozzi
0b39407e68 [archiso] archiso_pxe_common: add copy_resolvconf= boot option 2012-05-29 23:48:15 -03:00
Gerardo Exequiel Pozzi
36e8d6322f [archiso] use new mkinitcpio API in hooks
Needs mkinitcpio >= 0.9.0

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-05-19 15:29:17 -03:00
Gerardo Exequiel Pozzi
c1ecc9b604 [archiso] archiso_pxe_nfs hook: /lib -> /usr/lib
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-05-03 00:18:06 -03:00
Gerardo Exequiel Pozzi
f844c7ed45 [archiso] Update install hook to new device-mapper udev rules location
device-mapper >= 2.02.95-2

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-04-26 22:08:34 -03:00
Gerardo Exequiel Pozzi
c816a33d0e [archiso] Canonicalize path to dm-devices in used_block_devices
All devices listed at used_block_devices, now are canonicalized.

Fix FS#29538

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-04-19 12:06:07 -03:00
Gerardo Exequiel Pozzi
f12097b2c4 [archiso] mkarchiso: add new pkglist command.
This command makes a list of installed packages on root-image,
on <ISO>/$archisobasedir/pkglist.$arch.txt with the format
<repo>/<package>-<version>

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-04-09 17:41:12 -03:00
Gerardo Exequiel Pozzi
fbb6272b86 [archiso] adjust archiso hook for udev>=181-9
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-04-05 20:05:21 -03:00
Gerardo Exequiel Pozzi
9069e2c103 [archiso] mkarchiso: optionally add EFI "El Torito" boot support.
If EFI/archiso/efiboot.img exists then an alternative "El Torito"
boot image is added to the ISO image compatible for EFI.
This image is a FAT filesystem, that is interpreted by EFI as ESP
(EFI System Partition).

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-04-01 12:04:00 -03:00
Gerardo Exequiel Pozzi
67096caef2 [archiso] Re-order and use long xorrisofs options.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-04-01 11:06:29 -03:00
Gerardo Exequiel Pozzi
eed6c84e40 [archiso] Set a safe locale to C
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-03-17 13:47:09 -03:00
Gerardo Exequiel Pozzi
911888b150 [archiso] Improve help message of mkarchiso
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-03-17 13:39:40 -03:00
Gerardo Exequiel Pozzi
3d05bef2b9 [archiso] Implement own chroot functions in mkarchiso
* 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-16 02:15:59 -03:00
Gerardo Exequiel Pozzi
ab5d67fe43 [archiso] archiso_shutdown: Avoid mtab warning (not found)
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-03-15 23:43:58 -03:00
Gerardo Exequiel Pozzi
6f9c629393 [archiso] Copy "mount" in archiso_shutdown
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-03-15 23:25:20 -03:00
Gerardo Exequiel Pozzi
1f66a737de [archiso] /lib/initcpio -> /usr/lib/initcpio
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>
2012-03-04 21:04:37 -03:00
Gerardo Exequiel Pozzi
4f79083856 [archiso] Remove uneeded /run/archiso/img_dev_loop
Superseded by /run/archiso/used_block_devices

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-02-23 00:50:35 -03:00
Gerardo Exequiel Pozzi
354a202bcc [archiso] Update archiso_shutdown hook
* 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>
2012-02-23 00:01:17 -03:00
Gerardo Exequiel Pozzi
5123b25aa1 [archiso] Add /run/archiso/used_block_devices
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>
2012-02-22 23:46:14 -03:00
Gerardo Exequiel Pozzi
f0b4c35337 [archiso] Use losetup/mount instead of mount directly *.sfs
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-02-22 21:18:15 -03:00
Gerardo Exequiel Pozzi
e6c885d29f [archiso] Setup ro loop devs as read-only
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-02-22 21:18:15 -03:00
Gerardo Exequiel Pozzi
9703564262 [archiso] Use _mnt_dev() for SquashFS and dm-mapper
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-02-22 21:18:15 -03:00
Gerardo Exequiel Pozzi
bc4731a0d3 [archiso] Remove uneeded ;
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-02-22 21:18:15 -03:00
Gerardo Exequiel Pozzi
27940c420f [archiso] Misc style cleanups
* 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>
2012-02-22 21:18:07 -03:00
Gerardo Exequiel Pozzi
c593c2bd24 [archiso] Avoid full path in add_binary
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-02-03 10:58:01 -03:00
Gerardo Exequiel Pozzi
0720ac9bd4 [archiso] Refactor: Use losetup from util-linux
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>
2012-01-11 04:44:41 -03:00
Gerardo Exequiel Pozzi
36f327c6d4 [archiso] simplify _mnt_fs() and _mnt_sfs()
mount is now from util-linux (like in e135003c13)

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2012-01-05 17:58:12 -03:00
Gerardo Exequiel Pozzi
2b211a9017 [archiso] Make fstab from initramfs
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>
2012-01-05 17:58:12 -03:00
Gerardo Exequiel Pozzi
882d9fa5ec [archiso] update testiso
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-12-16 16:27:17 -03:00
Gerardo Exequiel Pozzi
dceb5a029f [archiso] Rename archiso_curl_url= to archiso_http_srv=
Also rename curlspace_size= to archiso_http_spc=

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-12-04 17:18:06 -03:00
Gerardo Exequiel Pozzi
9ca157c140 [archiso] archiso_pxe_curl rename to archiso_pxe_http
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-12-03 18:08:57 -03:00
Gerardo Exequiel Pozzi
92dbba6c11 [archiso] Cleanup: pxe_curl: Remove download-iso-loopback support.
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>
2011-12-03 17:45:45 -03:00
Gerardo Exequiel Pozzi
305bca4692 [archiso] Cleanup: Remove *.fs support.
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>
2011-12-03 11:22:03 -03:00
Gerardo Exequiel Pozzi
3df0be6a22 [archiso] Do not use PXE NBD as default.
* 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>
2011-12-02 14:12:16 -03:00
Thomas Bächler
cd91ad28b0 Add common KMS modules to the releng initramfs image.
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.
2011-11-29 09:53:22 -03:00
Gerardo Exequiel Pozzi
f3a3526ab0 [archiso] Fix libnss symlinks.
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>
2011-11-29 09:42:46 -03:00
Gerardo Exequiel Pozzi
5b9eba924d [archiso] Add checksum support to pxe_curl
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-11-28 12:28:03 -03:00
Gerardo Exequiel Pozzi
cd359bc37a [archiso] Checksum only aitab and *.sfs (per architecture)
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>
2011-11-28 12:28:03 -03:00
Gerardo Exequiel Pozzi
8bd067461d [archiso] Add DNS resolver support to archiso_pxe_common
[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 12:28:03 -03:00
Gerardo Exequiel Pozzi
76dea1654e [archiso] Add PXE NFS support
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 12:28:03 -03:00