Previous: Running the live system | Table of Contents | Next: ???? |
Basically the same actions as can be performed from the gui are available via the command-line. The executable shell script 'larch' is still used to start the program (it must be started as 'root', preferably using 'su' or 'sudo'), but passing '-c' as the first option means the gui will not be started and the commands will be taken from the rest of the command line. There are a couple of options, selected by appending letters directly to the '-c': 'x' will cause the program to skip interactive prompts (just ploughing on through your system without asking if that's ok), 'l' will suppress logging to the console (a log file will always be written to the working directory).
The actual commands follow. It is possible to pass a sequence of commands, where each command is a single argument to the 'larch' program - which means that commands must be enclosed in quotes (unless they consist of single words). Each command has a long form and a short form, some need an argument, some not. Some just give information, others change the stored configuration, still others perform the actual operations which are needed to produce a live system. A simple, probably rather useful example would be the 'show_project_info' command, which outputs the main stored configuration information. Using the short form it could be entered thus:
larch -c i?
Command | Alias | Arguments | Description |
---|---|---|---|
show_project_info | i? | Output the main stored configuration information | |
show_projects | P? | List the configured projects | |
show_profiles | p? | List the configured profiles | |
show_example_profiles | e? | List the example profiles supplied with larch | |
show_partitions | d? | List the partitions to which the live system might be installed | |
install | i | Run the installation step | |
larchify | l | "[s][r]" | Prepare the live system (squash the system, prepare the overlay, initramfs, etc.) |
create_iso | ci | Build an iso image for burning to CD/DVD | |
write_partition | cp | device "[n][l]" | Write the larch system to a partition |
create_bootiso | cb | Make a boot iso image for computers that can't boot from USB devices | |
set_project | P: | name | Select one of the already configured projects |
new_project | P+ | name | Start a new project |
del_project | P- | name | Remove a project |
set_profile | p: | name | Select one of the already configured profiles |
rename_profile | p! | name | Rename the current profile |
new_profile | p+ | path [name] | Copy a profile from the given path, optionally renaming it |
del_profile | p- | name | Remove a profile |
set_ipath | ip: | path | Set the installation path |
set_platform | arch: | i686(/x86_64) | Set the platform (only relevant on x86_64 host) |
set_buildmirror | m: | URL | Set the URL of a custom repository to be used for installation |
use_build_mirror | um: | y/n | Use the custom repository set by "set_buildmirror" |
use_project_mirrorlist | upm: | y/n | If not using a custom installation repository use the project's custom mirrorlist file for installation |
set_pacman_cache | cache: | path | Set the (host) path to the package cache |
set_bootloader | bl: | grub/syslinux/isolinux/none | Select the bootloader to use in the live system |
set_medium_detection | md: | search/uuid/label/device | Set how to detect the live partition (for iso this is always "search") |
set_label | lab: | name | Set the label of the live partition (for iso this is always "larch_7") |
pacman_s | ps: | package names | Install/update packages by name (pacman -S) |
pacman_r | pr: | package names | Remove packages (pacman -Rs) |
pacman_u | pu: | file-paths | Add/update packages from package files |
pacman_sy | psy | Synchronize pacman database | |
log_dl_progress | lp: | y/n | Allow log to show download progress (needs curl) |
Arguments listed in square brackets are optional. When single letters are listed as optional arguments and more than one of these is specified they may not be separated by spaces (e.g. to specify option "s" and option "r" I must pass "sr" as the argument). A slash ("/") indicates a choice.
larchify: [ s: don't generate sshkeys ] [ r: use old system.sqf ] Example: larch -c 'larchify sr' write_partition: device (e.g. /dev/sdb1) [ n: don't format the partition ] [ l: with larchboot file even if not using 'search' discovery method ] Example: larch -c 'cp /dev/sdb1 l' set_project: name Example: larch -c 'P: project1' del_project: name Example: larch -c 'P- MyOldProject' set_buildmirror: URL Example: larch -c 'm: file:///home/myrepos/*platform*/*repo*' set_bootloader: grub/syslinux/isolinux/none Example: larch -c 'bl: grub' pacman_s: package names Example: larch -c 'ps: gimp abiword' pacman_u: file-paths Example: larch -c 'pu: pkgs/dlarch-theme-gdm-1.2-2-any.pkg.tar.gz pkgs/xkmap-3.0-5-any.pkg.tar.gz'
A more complicated command might perform an installation, prepare the live system and write it to a USB partition, all without prompting the user. I assume that the configuration work has already been done:
larch -cx i l 'cp /dev/sdb1'
Previous: Running the live system | Table of Contents | Next: ???? |