Skip to main content

Package manager for Beyond Linux from Scratch (BLFS) system

Project description

BLFS-automation:

"A simple Python package that simplifies your BLFS project in many ways..."

About this project:

This project is designed for people who have built their own LinuxFromScratch (LFS) system, and are now working on the next stage - BeyondLinuxFromScratch (BLFS). BLFS packages often require many other dependencies to work, and sometimes it is a bit cumbersome to install all of those. blfs-pm aims to make it easier to install these packages without the stress of downloading everything and calculating, while simultaneously allowing you to still get the full build experience.

Download and installation:

To get a local copy up and running follow these steps.

Prerequisites:

  • A working LFS system (check them out at https://www.linuxfromscratch.org/)
  • A working internet connection - you may need to install a couple of BLFS packages like NetworkManager, DHCPClient, and WPA-supplicant.
  • A working Python environment
  • Python3 package manager (Pip)
  • Git (https://www.linuxfromscratch.org/blfs/view/svn/general/git.html)

Installation:

pip install blfs-pm

Usage:

It is recommended that the package should always be run as root, in order to prevent errors when installing packages to the system.

This package has many options to list, download, list commands, or install a given package. Note: once again it is highly recommended that you always run this as root!

Usage: blfs-pm [-h] [-a] [-b PACKAGE] [-c PACKAGE] [-d PACKAGE] [-f] [-l PACKAGE] [-o] [-r] [-s PACKAGE] [--systemd]

Note: It is recommended to follow along the installation process in the BLFS book. blfs-pm is not perfect and I have not tested every BLFS package. There are still some issues with circular dependencies, and at the moment it is best to monitor everything to prevent problems. Additionally, the -b (build) option will prompt the user to run EVERY command provided for the specific package. Some commands can only be run if optional dependencies are installed (like Texlive, Docbook, etc.). Furthermore, some packages require further kernel configuration (and recompilation) as a prerequisite for installation.

  -h, --help                        show this help message and exit

  -a, --all                         Downloads ALL BLFS packages - uses a lot of time and space.

  -b PACKAGE, --build PACKAGE       Install a given Package on the system.

  -c PACKAGE, --commands PACKAGE    List installation (without installing) commands for a given package.
  
  -d PACKAGE, --download PACKAGE    Downloads a given BLFS package along with all of its dependencies.

  -f, --force                       Force package installation even though it is already installed

  -l PACKAGE, --list PACKAGE        Lists all of the dependencies for a given BLFS package in order of installation.

  -o, --optional                    List/download optional packages.

  -r, --recommended                 List/download recommended packages.

  -s PACKAGE, --search PACKAGE      Search for a given package.
  --systemd                         Pass this flag if you built LFS with Systemd

Additional options:

Contributers:

Ahron Maslin (creator, maintainer, and designer), Josh W. (moral support), Dan the Man (Chief Psychologist)

Todo

  • implement different db's for different LFS versions
  • add --info flag to display information about a package
  • query to install a package if only one search result was found

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

blfs_pm-1.0.7.tar.gz (16.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

blfs_pm-1.0.7-py3-none-any.whl (16.0 kB view details)

Uploaded Python 3

File details

Details for the file blfs_pm-1.0.7.tar.gz.

File metadata

  • Download URL: blfs_pm-1.0.7.tar.gz
  • Upload date:
  • Size: 16.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for blfs_pm-1.0.7.tar.gz
Algorithm Hash digest
SHA256 5e904b06df11860eb6c1ca06d45d46450fa0c48b96c58577cd0f64e4dc169d1a
MD5 76b3a48663abb059b8ba640a6f680ad7
BLAKE2b-256 6a24ed5bf0d374304f62464086b3066ac52ec5f0d867e83b0f262e860a9a9d89

See more details on using hashes here.

File details

Details for the file blfs_pm-1.0.7-py3-none-any.whl.

File metadata

  • Download URL: blfs_pm-1.0.7-py3-none-any.whl
  • Upload date:
  • Size: 16.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for blfs_pm-1.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 fc65ab9eea94b11a494d40f8bb54133be6b0dbe53e1e04cda798291119aca0aa
MD5 59a918299807e43ae968d1da39aba340
BLAKE2b-256 c8d8cc639652e1d814f1550d4e7c89988a7db23f0caa01108147374e9a861787

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page