Commit Graph

73 Commits

Author SHA1 Message Date
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
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
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
51db47e74b [archiso] disable progress bar in mksquashfs
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-10-14 22:46:45 -03:00
Gerardo Exequiel Pozzi
1dcf439c30 [archiso] Create /etc/mtab as symlink.
This is now supported since util-linux pkg enable it.

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-10-03 21:12:56 -03:00
Gerardo Exequiel Pozzi
14743f4202 [archiso] Switch from cdrkit to libisoburn
* 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 01:47:57 -03:00
Gerardo Exequiel Pozzi
ad2385c082 [archiso] Use -w <work_dir> instead of cmd <work>, add -o <out_dir>
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 01:45:49 -03:00
Gerardo Exequiel Pozzi
23e1cd01cd [archiso] Avoid regenerate checksum -> .iso.
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-26 19:23:25 -03:00
Gerardo Exequiel Pozzi
90cfe3ce2c [archiso] Add checksum= boot param
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-08-15 01:07:31 -03:00
Gerardo Exequiel Pozzi
93763a2d82 [archiso] Delete etc/mtab on _cleanup step
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-07-09 15:14:49 -03:00
Gerardo Exequiel Pozzi
0d895a225a [archiso] Ensure that there is no .fs before create it
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-07-09 15:14:49 -03:00
Gerardo Exequiel Pozzi
98c457c26f [archiso] mark installed packages, after installing it, not before
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-07-09 15:14:49 -03:00
Gerardo Exequiel Pozzi
85d243ff58 [archiso] Use dm-snapshot instead of aufs2 (A.K.A. "The Big Commit")
* 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: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-06-18 18:38:27 -03:00
Gerardo Exequiel Pozzi
54be7d1529 [archiso] Set default SquashFS compressor to XZ
Also change all references from lzma to xz format.

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2011-04-11 10:25:37 -03:00
Gerardo Exequiel Pozzi
6bcbf95f82 [archiso] Fix tabs/spaces in mkarchiso
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2010-12-08 14:47:45 -03:00
Gerardo Exequiel Pozzi
85d2ddd762 Unify scheme of sed replacements.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2010-12-07 23:48:24 -03:00
Gerardo Exequiel Pozzi
02caf25be9 [archiso] Place *.sqfs images in /${install_dir}/${arch}/
Unify with dir layout of -dual images.

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2010-12-07 23:48:23 -03:00
Gerardo Exequiel Pozzi
c186a206a1 [archiso] Add -D <install_dir> option to mkarchiso
-D <install_dir> allow to select install directory on target media
                  defaults to "arch".

There is a new %INSTALL_DIR% macro for syslinux.cfg.

This is how ISO will look now:
/syslinux    only syslinux related files (syslinux.cfg, *.c32, etc)
/arch/       isomounts + *.sqfs images
/arch/boot/  Linux + initramfs + Memtest86+ + other files for early boot stage

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2010-11-30 21:55:13 -03:00
Gerardo Exequiel Pozzi
487436b8ea [archiso] Add support for squashfs compression types
Add a note about supported status in Linux versions.
Needs squashfs-tools-4.1 (now on extra).

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2010-10-18 18:59:31 -03:00
Gerardo Exequiel Pozzi
16422ba3b6 Do not copy host configuration to root-image
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2010-09-16 16:55:38 +02:00
Thomas Bächler
86ca33e76d Rename all occurrences of isolinux to syslinux
The name of the bootloader is syslinux, while isolinux is just one
of many components. isolinux.bin now also accepts syslinux.cfg
as a configuration file name (as do all other loaders).

Thus, rename the isolinux/ folder to syslinux/, and rename
isolinux.cfg to syslinux.cfg. The only occurrence of 'isolinux'
is now the actual loader file 'isolinux.bin'. This makes
the transition from isolinux to the other syslinux loaders
easier when remastering the ISO onto another medium.
2010-07-22 00:04:46 +02:00
Gerardo Exequiel Pozzi
1114731c28 [archiso] Rewrite cleanup step in mkarchiso
Currently works partially since in bash "*" is not expanded.
Old dirs removed, always empty dirs removed from list.
Also cleanup sync databases from pacman 3.4.0, avoiding problems with
pacman -Sy since "sync" directory is deleted.

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2010-06-30 00:16:34 -03:00
Gerardo Exequiel Pozzi
56750f37ed Revert back isohybrid offset to default setting.
This revert back the commit 991a5c69.
This causes more problems than solving (fixing the warning issue in parted)

With the default offset 0:
* makes posibble to create others extra partitions on USB key
  and use them inside the live enviroment.
* makes posible to use /dev/disk/by-label/ symlinks.
  archiso_early hook, can be removed.

Note: archboot also uses the default offset 0.

More info at:
http://mailman.archlinux.org/pipermail/arch-releng/2010-March/000912.html
http://mailman.archlinux.org/pipermail/arch-releng/2010-March/000890.html

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2010-03-16 00:02:47 -03:00
Gerardo Exequiel Pozzi
991a5c6972 Fixed offset of partition on iso
Split from commit 00dda7d4 from Svenstaro repo: changed -offset for mkarchiso
from default 0 to 1 so that the other partition on the usb device can
still be edited after dd'ing to it

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2010-02-08 03:47:50 -03:00
Gerardo Exequiel Pozzi
19af41afb4 Fix indentation of previus commit
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2009-12-04 15:02:44 -03:00
Gerardo Exequiel Pozzi
5f8999e3ea Abort mkarchiso if isolinux.cfg is not found.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2009-12-02 02:35:26 -03:00
Gerardo Exequiel Pozzi
9350558f60 Removed unused gen_grubscan script and grub reference in mkarchiso
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2009-12-01 21:28:42 -03:00
Gerardo Exequiel Pozzi
ce454c4c72 Use 11 chars for fslabel for VFAT compatibility
Also use ARCH_YYYYMM format instead of random chars, removing pwgen dep.
Closing FS#14919.

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2009-12-01 13:27:40 -08:00
Aaron Griffin
693f2ea0b8 More removal of old bootloader support
Only support syslinux now. Grub and other things can still
be managed manually by running mkisofs manually.

Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2009-11-30 15:14:27 -08:00
Sven-Hendrik Haase
f77ddc0e9c Removed pwgen dependency 2009-11-30 15:14:09 -08:00
Sven-Hendrik Haase
ca52931e3a mkarchiso: cleaned up to use isohybrid only 2009-11-30 13:15:33 -08:00
Sven-Hendrik Haase
961d4cb670 mkarchiso: cleanup opts, user dir creation
As in title, this patch cleans up opt flags that exist for no reason and
adds additional flags to modify the disk meta info which would otherwise
be hardcoded.

I wasn't quite sure about the user directory part but it doesn't seem
like a good idea to put that part into the script and therefore I
commented it out. It would probably interfere with rc.local scripts that
take care of skel copying. I replaced the part after the TODO with a
safe guard to make sure that people who are not aware of the changes
will not be caught by surprise.

Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2009-11-23 12:51:13 -08:00
Gerardo Exequiel Pozzi
ce2242da7e Silent modprobe loop loading in mkarchiso
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2009-11-19 03:37:29 -03:00
Gerardo Exequiel Pozzi
f32a5c5b20 Avoid force/rebuild of squashfs images if already updated.
Check if there are any modification of files/directories inside
the target directory for squashfs image.

Implements in some way this item in TODO:
* Add 'needsupdate' function to check if a squashfs image in the
  iso dir is up to date, if so, skip it; else rebuild it. No more
  need for the -f flag

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2009-11-09 21:41:13 -03:00
Gerardo Exequiel Pozzi
db1dde541c Fix how mkarchiso makes usb image
The current implementation in how partition is created for ext2 img
it looks a bit bad.

This patch makes the partition in more standarized way, respecting
cylinder alignement:
* The size of resulting image will be in cylinder multiple ~8MB.
* Use fdisk instead of sfdisk (sfdisk write some bad information)
* Make the result image in one pass, instead of concatenating.

Also the advantage is that with this can add another partitions
without any issues in the usb-flash-drive with this .img.

For example of current situation:

qemu-system-x86_64 -hda archlinux-avr.toolchain.img -serial stdio
---------------------------------------------------------------------
[root@avr ~]# fdisk /dev/sda

Command (m for help): p

Disk /dev/sda: 223 MB, 223974400 bytes
59 heads, 41 sectors/track, 180 cylinders
Units = cylinders of 2419 * 512 = 1238528 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1         181      218693+  83  Linux
Partition 1 has different physical/logical beginnings (non-Linux?):
     phys=(0, 1, 1) logical=(0, 1, 23)
Partition 1 has different physical/logical endings:
     phys=(27, 58, 41) logical=(180, 49, 21)

Command (m for help): v
Partition 1 has different physical/logical beginnings (non-Linux?):
     phys=(0, 1, 1) logical=(0, 1, 23)
Partition 1 has different physical/logical endings:
     phys=(27, 58, 41) logical=(180, 49, 21)
Partition 1: previous sectors 437449 disagrees with total 67731
62 unallocated 512-byte sectors

Command (m for help):
---------------------------------------------------------------------

qemu-system-x86_64 -hda archlinux-avr.toolchain-fix.img -serial stdio
---------------------------------------------------------------------
[root@avr ~]# fdisk /dev/sda

Command (m for help): p

Disk /dev/sda: 230 MB, 230307840 bytes
255 heads, 63 sectors/track, 28 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x5c94ca4f

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          28      224878+  83  Linux

Command (m for help): v
62 unallocated 512-byte sectors
---------------------------------------------------------------------

Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
2009-10-21 00:46:39 -03:00
Gerhard Brauer
8d57752ced Use a label when generating the image and pass it to the commandline
This will generate a label ARCHISO_$randomstring using the pwgen
utility and add this label to the kernel command line.
A new label will be generated for each image, so it can be uniquely
identified.
Patch from brain0 <thomas@archlinux.org>

Signed-off-by: Gerhard Brauer <gerbra@archlinux.de>
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2009-07-27 11:03:38 -07:00
Gerhard Brauer
73dc6b4b1b Enabled -C option in mkarchiso
This flag allows to specify a own pacman.conf using during mkarchiso.

Signed-off-by: Gerhard Brauer <gerbra@archlinux.de>
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2009-07-27 11:03:38 -07:00
Gerhard Brauer
d49b3da829 Fix mkisofs quiet parameter
Option syntax for quiet mode in mkisofs has changed

Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2009-06-29 10:34:02 -07:00
Loui Chang
7a98a216de Fix typos, formatting, and vague language where possible.
Signed-off-by: Loui Chang <louipc.ist@gmail.com>
[Fixed menu.lst: LiveCD -> Live CD -aaron]
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2009-01-26 22:10:09 -06:00
Aaron Griffin
c6bb213064 Single quotes around find patterns during cleanup
Whoops, *.img expands if we're building USB images.

Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2009-01-24 17:43:21 -06:00
Aaron Griffin
4dc9b68e4d Remove a stray '_mksquash' echo
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2008-12-24 10:45:05 -08:00
Aaron Griffin
fbd2ce5cb0 Fix usb image's size detection
Conversion issue when dropping mkusbimg. Use work_dir/iso
to get the proper image size

Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2008-12-24 10:33:36 -08:00
Aaron Griffin
32a1991679 Properly remove the usb image's tmpdir
Guess what? rm -f won't remove a dir. Whoops

Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2008-12-23 00:33:46 -08:00
Aaron Griffin
f47fde8485 Fix some intending errors in USB creation
This was causing sfdisk and grub to balk

Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2008-12-23 02:23:22 -06:00
Aaron Griffin
2a58a09f8c README and isomounts additions on creation
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2008-12-23 00:52:18 -06:00
Aaron Griffin
978fdafbff Allow specifying of pacman.conf file in mkarchiso
Use the -C flag to allow us to build alternate isos on
a different architecture and things of the sort

Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2008-12-21 02:24:39 -06:00
Aaron Griffin
97f4dcec81 Re-add the if-check that includes grub-gfx
Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2008-12-19 23:30:53 -06:00
Aaron Griffin
485838e9a9 Remove host system package checks
Not needed as we ensure files are in the ISO dir

Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
2008-12-19 23:26:45 -06:00