Environment is simple:
Database is storage for all packages information:
In order to work with different versions of packages they splited on releases. Release is set of packages with specific versions. Version 0.1 contain packages of LFS v. 8.3.
All source packages are stored localy with splitting by releases.
All packages files within release directory are also splited by folders:
Site is brain of application it get data from other aplication parts and produce HTML-pages, JSON-files, XML-files, and produce install scripts for packages.
Client environment is Linux From Scratch with next assumptions:
/sources .cleanup /var cache/ ulfs-packages/ %packagename% log/ ulfs-packages/ %packagename%/ start.time download.time [cleanup.time] unpack.time configure.time build.time install.time finish.time files.txt
This directory is used to store source packages archives and directories.
.cleanup - empty file which force directory remove before unpacking source package.
This directory is used as database of installed packages.
%packagename% - Each empty file represent package with same name.
Installation script check file existance to make decission to install dependances or not. If file was deleted installation script perform it reinstallation.
This directory used to store information about source packages installation proccess.
%packagename%/ - Each folder represent package with same name.
Timestamp files used for search installed files and can be used for profiling:
files.txt - list of installed files
/mnt/umvirt/ files/ %release%/ packages/ patches/ packages/ %release%/ %packagename%.sh
/mnt/umvirt/ - directory or symlink to directory which contain local installation data
files/ - directory which contain umvirt lfs files
files/%release%/packages/ - directory which contain source package files within specific release
files/%release%/patches/ - directory which contain source package patches within specific release
packages/ - directory which contain installation scripts.
packages/%release%/%packagename%.sh - each file represent package with same name within specific release.
Packages and patches can be download from UmVirt LFS site. Also you can download packages from BLFS mirrors and developers' sites.
Installation scripts generated by UmVirt LFS Packages service. You can download scripts from UmVirt LFS site or generate your own.