Skip to content
Snippets Groups Projects
  1. Jul 20, 2012
  2. Jun 24, 2012
  3. May 30, 2012
  4. Apr 25, 2012
  5. Apr 17, 2012
  6. Apr 15, 2012
  7. Apr 11, 2012
    • Gerardo Pozzi's avatar
      [configs/releng] Add UEFI boot support via Linux >= 3.3 EFI boot stub on x86_64 · 6caa5bcb
      Gerardo Pozzi authored
      
      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: default avatarGerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
      6caa5bcb
  8. Mar 17, 2012
  9. Mar 16, 2012
  10. Mar 12, 2012
  11. Mar 05, 2012
  12. Jan 05, 2012
  13. Dec 04, 2011
  14. Dec 03, 2011
  15. Dec 02, 2011
  16. Nov 28, 2011
    • Gerardo Pozzi's avatar
      [archiso] Add PXE NFS support · 76dea165
      Gerardo Pozzi authored
      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)
      76dea165
    • Gerardo Pozzi's avatar
      [archiso] Add archiso_pxe_curl hook · 8eb4c624
      Gerardo Pozzi authored
      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: default avatarGerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
      8eb4c624
    • Gerardo Pozzi's avatar
      [archiso] Split archiso_pxe_nbd in two hooks. · 1edaf15c
      Gerardo Pozzi authored
      
      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: default avatarGerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
      1edaf15c
  17. Oct 24, 2011
  18. Aug 29, 2011
    • Gerardo Pozzi's avatar
      [archiso] Switch from cdrkit to libisoburn · 14743f42
      Gerardo Pozzi authored
      
      * 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: default avatarGerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
      14743f42
    • Gerardo Pozzi's avatar
      [configs/releng] Support configurable build options via command line · 48023e33
      Gerardo Pozzi authored
      
      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: default avatarGerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
      48023e33
  19. Aug 15, 2011
  20. Aug 09, 2011
  21. Jul 09, 2011
  22. Jun 18, 2011
    • Gerardo Pozzi's avatar
      [archiso] Use dm-snapshot instead of aufs2 (A.K.A. "The Big Commit") · 85d243ff
      Gerardo Pozzi authored
      
      * Use device mapper + snapshot module, instead union layer filesystem.
        * A block-level approach vs vfs-level.
        * No more unofficial (Linux) things.
        * More memory is needed.
      * Refactor mkarchiso.
      * Refactor hooks/archiso.
      * Fix install/archiso_pxe_nbd
        (due recent change in mkinitcpio-0.6.15 on checked_modules()/all_modules())
        [Thanks Dave for the improved workaround]
      * New configs/releng to build official images.
        * Works with a Bash script instead of Makefile.
          (better control and easy to maintain)
      * Remove configs/syslinux-iso.
      * Remove archiso2dual script. Integrate functionality in configs/releng.
      * New configs/baseline to build the most basic live medium or use as template.
      * New README (draft). [Thanks Dieter for fixing english grammar]
      
      Signed-off-by: default avatarGerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
      85d243ff
  23. Mar 18, 2010
  24. Mar 05, 2010
  25. Nov 30, 2009
Loading