Manjaro-tools
Views
Actions
Namespaces
Variants
Tools
Introduction
manjaro-tools is a replacement for devtools and manjaroiso. A user manual is available at github.
Configuration
manjaro-tools can be configured via editing /etc/manjaro-tools/manjaro-tools.conf
Files
These are the new names for renamed scripts.
- mkmanjaroroot --> mkchroot
- manjarobuild --> buildpkg
- pacstrap --> basestrap
- genfstab --> fstabgen
- arch-chroot --> manjaro-chroot
Tools
mkset
mkset is used to create build lists. Build lists can be defined in /etc/manjaro-tools/sets/<buildlistname>.set
To create a build list, one can run in the pkgbuilds dir:
mkset -c <name>
This will create a build list containing all directories with PKGBUILDs in them. This generated list can be then edited, like packages can be removed.
For example, in a git clone of https://github.com/manjaro/packages-openrc
$ ls consolekit/ manjaro-tools-git/ openrc-net/ eudev/ manjaro-tools-git-devel/ openrc-systemdcompat/ eudev-systemdcompat/ manjaro-tools-iso-profiles/ openrc-video/ kde-servicemenus-pkg-tools/ manjaro-tools-livecd/ packages/ keyboardctl-openrc/ networkmanager-openrc/ pkgbuilds-review/ kf5-servicemenus-pkg-tools/ openrc-aur/ polkit-consolekit/ lib32-eudev/ openrc-base/ sddm-consolekit/ lib32-eudev-systemdcompat/ openrc-core/ sysvinit/ lxqt-lightdm-greeter/ openrc-desktop/ upower-pm-utils/ manjaro-openrc/ openrc-devel/ README.md manjaro-tools/ openrc-misc/
Running mkset -c openrc does
$ mkset -c openrc ==> Creating [/openrc.set] ... -> Adding consolekit -> Adding eudev -> Adding eudev-systemdcompat -> Adding kde-servicemenus-pkg-tools -> Adding kf5-servicemenus-pkg-tools -> Adding lib32-eudev -> Adding lib32-eudev-systemdcompat -> Adding lxqt-lightdm-greeter -> Adding manjaro-openrc -> Adding manjaro-tools -> Adding manjaro-tools-git -> Adding manjaro-tools-git-devel -> Adding manjaro-tools-iso-profiles -> Adding manjaro-tools-livecd -> Adding networkmanager-openrc -> Adding openrc-aur -> Adding openrc-base -> Adding openrc-core -> Adding openrc-desktop -> Adding openrc-devel -> Adding openrc-misc -> Adding openrc-net -> Adding openrc-systemdcompat -> Adding openrc-video -> Adding polkit-consolekit -> Adding sddm-consolekit -> Adding sysvinit -> Adding upower-pm-utils
buildpkg
buildpkg is used to build a particular package or a set. The help looks like the following for i686
$ buildpkg -h Usage: buildpkg [options] [--] [makepkg args] -p <profile> Set profile or pkg [default: default] -a <arch> Set arch [default: i686] -b <branch> Set branch [default: stable] -r <dir> Chroots directory [default: /srv/manjarobuild] -c Recreate chroot -w Clean up -n Install and run namcap check -s Sign packages -q Query settings and pretend build -h This help
To build a single package, go into the directory which is one above the package build directory (which contains the PKGBUILD), and run it as:
buildpkg -p <package-name>
For example,
$ ls consolekit manjaro-tools openrc-video eudev networkmanager-openrc packages eudev-systemdcompat openrc-aur polkit-consolekit kde-servicemenus-pkg-tools openrc-base README.md keyboardctl-openrc openrc-core sddm-consolekit kf5-servicemenus-pkg-tools openrc-desktop sysvinit lib32-eudev openrc-devel upower-pm-utils lib32-eudev-systemdcompat openrc-misc manjaro-openrc openrc-net
$ buildpkg -pv upower-pm-utils ==> manjaro-tools -> version: 0.9.5.6 -> manjaro_tools_conf: /etc/manjaro-tools/manjaro-tools.conf ==> OPTIONS: -> arch: i686 -> branch: stable -> chroots: /srv/manjarobuild ==> ARGS: -> mkchrootpkg_args: -r /srv/manjarobuild/stable/i686 -> makepkg_args: -> clean_first: false -> wipe_clean: false -> namcap: false -> sign: false ==> PATHS: -> chrootdir: /srv/manjarobuild/stable/i686 -> profiledir: /etc/manjaro-tools/sets -> pkg_dir: /var/cache/manjaro-tools/stable/i686 -> pacman_conf: /usr/share/manjaro-tools/pacman-default.conf -> makepkg_conf: /usr/share/manjaro-tools/makepkg-i686.conf -> mirrors_conf: /usr/share/manjaro-tools/pacman-mirrors-stable.conf ==> BLACKLIST: -> blacklist_trigger: eudev lib32-eudev upower-pm-utils eudev-systemdcompat lib32-eudev-systemdcompat -> blacklist: libsystemd ==> SETS: -> profiles: default -> profile: upower-pm-utils -> is_profile: false ==> Build queue: -> upower-pm-utils