1. 26 Dec, 2020 1 commit
  2. 01 Dec, 2020 1 commit
  3. 30 Nov, 2020 4 commits
    • David Runge's avatar
      Fix issues with file ownerships/modes · c10004df
      David Runge authored
      archiso/mkarchiso:
      Make sure to always compare absolute paths in `_make_custom_airootfs()` (as `realpath` is used).
      Remove `echo` calls that prevent the setting of actual file ownerships and modes.
      
      configs/releng/profiledef.sh:
      Set file mode of /root/.automated_script.sh to 755.
      
      Fixes #82
      c10004df
    • nl6720's avatar
      Keep all SYSLINUX files in /syslinux · 863247d0
      nl6720 authored
      This gets rid of the duplicate ldlinux.c32 and the useless isolinux.cfg which only points to syslinux.cfg.
      
      Implements #46 .
      863247d0
    • nl6720's avatar
      Prevent path traversal outside of $airootfs_dir · 183ae527
      nl6720 authored
      183ae527
    • nl6720's avatar
      Allow specifying ownership and mode of custom airootfs files and directories · 42d9e4f9
      nl6720 authored
      profiledef.sh can now contain an associative array called file_permissions which can be used to set custom ownership and mode of custom airootfs files. The array's keys contain the path and the value is a colon separated list of owner UID, owner GID and access mode.
      For example:
      
          file_permissions=(
            ["/etc/shadow"]="0:0:400"
          )
      
      This means that mkarchiso now copies airootfs files (and directores) without permissions and anything that should be owned by a user other than root and/or if the mode should be something other than 644 for files and 755 for directories must to be listed in ${file_permission[@]} in profiledef.sh.
      
      Fixes #61 .
      42d9e4f9
  4. 18 Nov, 2020 2 commits
    • Francois Dupoux's avatar
    • David Runge's avatar
      Fix evaluation bugs in mkarchiso · 3160db0e
      David Runge authored
      archiso/mkarchiso:
      Guard the call to `_mksignature()` in `_prepare_airootfs_image()` by an if statement.
      Using the `&&` logic leads to `_prepare_airootfs_image()` evaluating to false if `$gpg_key` is not set.
      
      Add `_msg_info()` calls to `_set_override()` which prevent the function from evaluating to false if no override is
      being done. Additionally this is great for debugging purposes.
      
      Add `_msg_info()` calls to `_read_profile()` (which is great for debugging purposes).
      
      Fixes #81
      3160db0e
  5. 17 Nov, 2020 1 commit
  6. 14 Nov, 2020 3 commits
  7. 03 Nov, 2020 1 commit
  8. 01 Nov, 2020 1 commit
  9. 31 Oct, 2020 2 commits
    • David Runge's avatar
      Set syslinux bootloader timeout to 15s · 40ae3ba9
      David Runge authored
      configs/releng/syslinux/archiso_sys.cfg:
      Set the syslinux bootloader timeout to 15s.
      In !97 it has accidentally been set to 1.5s.
      40ae3ba9
    • David Runge's avatar
      Set bootloader timeouts to 15s · ee6c5faa
      David Runge authored
      configs/releng/efiboot/loader/loader.conf,
      configs/releng/syslinux/archiso_sys.cfg:
      
      Set the bootloader timeout to 15s, as they have been set to an overly generous 30s in !79.
      
      Fixes #80
      ee6c5faa
  10. 30 Oct, 2020 1 commit
  11. 29 Oct, 2020 8 commits
  12. 24 Oct, 2020 5 commits
    • Alexander Epaneshnikov's avatar
      run_archiso: fixup !86 · 551edcd5
      Alexander Epaneshnikov authored
      forgot to enable USB support.
      551edcd5
    • Alexander Epaneshnikov's avatar
      run_archiso: add braille support · cc2d9bbf
      Alexander Epaneshnikov authored
      necessary for testing brltty in archiso
      cc2d9bbf
    • nl6720's avatar
      configs/baseline: support UEFI · ae0e9141
      nl6720 authored
      ae0e9141
    • David Runge's avatar
      Set CacheDir and HookDir for profile more sanely · f3af5692
      David Runge authored
      archiso/mkarchiso:
      Change `_pacman()` to use the *modified* pacman.conf from the work_dir, instead of using the *unmodified* pacman.conf from
      the profile.
      
      Change `_make_pacman_conf()` to compare the system's and the profile's CacheDir setting and use the profile's CacheDir
      setting only if it's not the default and not the same as the system's.
      
      Always set the HookDir to the airootfs' override directory, so that no hooks from the host system are being run.
      
      Remove DBPath, LogFile and RootDir settings from the work_dir pacman.conf as they are otherwise referring to the host
      system, **even if** pacman is being called with the `-r` flag.
      
      Fix a typo in _make_custom_airootfs().
      
      README.profile.rst:
      Add information about the pacman.conf in a profile and how configuration options behave, when used by mkarchiso.
      
      Fixes #73
      Fixes #74
      f3af5692
    • nl6720's avatar
      Move FAT image to a separate partition outside the ISO 9660 file system · 729d16b4
      nl6720 authored
      Support bios.syslinux.eltorito boot mode without bios.syslinux.mbr.
      bios.syslinux.mbr does not work without bios.syslinux.eltorito because -isohybrid-mbr requires the El Torito boot image.
      
      Support uefi-x64.systemd-boot.esp boot mode without uefi-x64.systemd-boot.eltorito and vice versa.
      If uefi-x64.systemd-boot.eltorito is used without uefi-x64.systemd-boot.esp, the El Torito boot image will be placed in the ISO 9660 file system as before.
      Note that an ISO created with only uefi-x64.systemd-boot.eltorito will still be bootable as a "hard disk" on OVMF. OVMF will boot the El Torito image.
      
      This change has the following effect on the partition tables:
      
      - *.eltorito options add El Torito boot catalog entries. MBR and GPT are not affected.
      - uefi-x64.systemd-boot.esp creates a protective MBR partition table and a GPT table that includes a Linux filesystem data partition for the ISO 9660 volume, an EFI system partition and a Microsoft basic data partition that maps the 300 KiB padding added by xorriso.
      - bios.syslinux.mbr (without uefi-x64.systemd-boot.esp): adds a MBR partition table and maps the ISO 9660 volume as a partition of type 0x83. No GPT is produced.
      - bios.syslinux.mbr (with uefi-x64.systemd-boot.esp): adds an second partition in the MBR (after 0xEE) starting from sector 0 to sector 1 with type 0 and marks it as bootable. This violates the GPT specification, but allows some systems to succesfully boot in BIOS mode from GPT.
      
      Fixes #49
      729d16b4
  13. 10 Oct, 2020 2 commits
  14. 07 Oct, 2020 3 commits
  15. 04 Oct, 2020 1 commit
  16. 03 Oct, 2020 1 commit
    • David Runge's avatar
      Replace bash arithmetic with awk functions · 55cfb8ba
      David Runge authored
      archiso/mkarchiso:
      The bash arithmethics in _make_boot_uefi-x64.systemd-boot.esp() introduced rounding issues, that can lead to
      insufficient FAT image size for the files.
      Conversion functions for awk now replace the bash arithmetics and additionally a ceil() function rounds the calculated
      size up to the next full MiB.
      Add an info message about the size of the created FAT image.
      
      Fixes #70
      55cfb8ba
  17. 29 Sep, 2020 1 commit
    • David Runge's avatar
      Fix info message for legacy command · 2e1ddec0
      David Runge authored
      archiso/mkarchiso:
      Change the way _show_config() displays information about the build environment, as displaying a profile directory as a
      legacy command to mkarchiso is confusing.
      The function now prints a deprecation message if '$command_name' is not a directory (i.e. not a profile).
      Remove 'command_' prefix from help output for legacy commands (the prefix is only in use for internal functions).
      
      Relates to !69
      Fixes #60
      2e1ddec0
  18. 27 Sep, 2020 2 commits
    • nl6720's avatar
      Calculate required efiboot.img size instead of hardcoding it · f34c9579
      nl6720 authored
      Use du to count the file size of the kernel(s), initramfs images and boot loader (and its configuration).
      This allows to compress initramfs with something other than xz, or have more than one kernel installed.
      
      Fixes #62 .
      f34c9579
    • nl6720's avatar
      Split SYSLINUX configuration into per-kernel configuration files · 8c047047
      nl6720 authored
      Slightly simplifies adding boot loader configuration for more kernels.
      Unfortunately the INCLUDE statement doesn't support wildcards, so each new file must be manually included in the main syslinux configuration file (syslinux.cfg for baseline and archiso_sys.cfg for releng).
      8c047047