Vasile is the swiss army knife or Redcore Linux. It's name is an acronim : Versatile Advanced Script for ISO and Latest Enchantments.
It was developed by Ghiunhan Mamut as a replacement for Sabayon's matter/antimatter/molecule tools when Kogaion Linux was rebased from Sabayon Linux to Gentoo Linux. Later on, when Kogaion Linux was discontinued, it was kept in Redcore Linux and further developed.
Vasile is written in bash scripting language, and it can do many things :
As of this writing, Vasile version 4.5 exposes the following options :
vasile --makepkg package(s)
This option will allow you to build a package or multiple packages in an overlayfs mounted squashfs chroot jail. It must be run in the folder where the squashfs chroot jail resides, or else it will fail to mount the squahfs chroot jail and build the package(s). The squashfs chroot jail and the md5sum checksum file are hardcored into libvasile, but you may want to change them to suit your needs.
You MUST provide package(s) to build as arguments, or else vasile will only mount the chroot jail.
If the package(s) is/are already built, it will not build it/them again (unless newer version(s) is/are available), but install it/them into squahfs chroot jail. If the package(s) you want to build depends on any already built package(s) it will make use of it/them to satisfy the required dependencies.
This option will allow you to build a live iso image based on the squashfs chroot jail. It must be run in the folder where the squashfs chroot jail resides, or else it will fail to rsync the contents of it and build the iso image.
It is not fully automatic, it will only rsync the contents of the squashfs chroot jail, chroot into it, and let you install packages you want into the iso image. There are some predefined package sets available in /etc/portage/sets. Adjust them to suit your needs.
It will ALLWAYS use package(s) built with –makepkg option. When you are happy with package selection, just exit the chroot environment and the live filesystem will be compressed, live services will be autoenabled, live bootloader autoconfigured and in the end live iso image will be built. You will find a list of predefined live services list hardcoded into libvasile. Adjust it to suit your needs.
This option will allow you to change the system state to Binary Mode. In this state portage will allways use only binary packages from the repository. It will fetch a minimal portage tree without any ebuilds in it, but only with portage profiles, metadata and eclass. It will also fetch overlay and portage configuration files, and will adjust /etc/portage/make.conf for binary only usage. This system state is for those who just meet with the power of Gentoo.
!!! WARNING !!! : Never never never modify or create any file in /etc/portage/ in this state.
This option will allow you to change the system state to Hybrid Mode. In this state portage will prefer binary packages from the repository over ebuilds from the portage tree. It will fetch the full portage tree, the overlay and portage configuration files, and adjust /etc/portage/make.conf for binary/ebuild usage. Usually you will find this system state useful if you want to install a package not available in the repository, you want to upgrade a package to a newer version from portage tree or if you wanna rebuild a package with your own useflags.
!!! WARNING !!! : Never never never modify any file in /etc/portage/ in this state. If you want to adjust useflags or keywords for a package, you can create a new file e.g.: 100-my.package.use in /etc/portage/package.use/ or 100-my.package.keywords in /etc/portage/package.keywords/.
This option will allow you to change the system state to Source Mode. In more clear terms, it will transform your Kogaion/Argent/Redcore system into pure Gentoo. Binary packages from the repository will be ignored, and you will only install packages building from portage tree using emerge. It will fetch the full portage tree, the overlay and portage configuration files and adjust /etc/portage/make.conf for ebuild only usage.
In this system state you can modify whatever you want in /etc/portage/. You can adjust useflags, keywords, masks, build environment and rebuild the whole system to suit you. You have the full power of Gentoo available only one command away!
!!! WARNING !!! : Only use this system state if you have a strong knowledge of Gentoo tools e.g.: emerge, equery, layman, eix, qlist, useflags, keywords, masks.