2023-09-04T18:21:12,436 Created temporary directory: /tmp/pip-build-tracker-nqqu3z99 2023-09-04T18:21:12,439 Initialized build tracking at /tmp/pip-build-tracker-nqqu3z99 2023-09-04T18:21:12,440 Created build tracker: /tmp/pip-build-tracker-nqqu3z99 2023-09-04T18:21:12,440 Entered build tracker: /tmp/pip-build-tracker-nqqu3z99 2023-09-04T18:21:12,442 Created temporary directory: /tmp/pip-wheel-yc1nbfr2 2023-09-04T18:21:12,450 Created temporary directory: /tmp/pip-ephem-wheel-cache-9644seme 2023-09-04T18:21:12,507 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2023-09-04T18:21:12,516 2 location(s) to search for versions of funtoo-ramdisk: 2023-09-04T18:21:12,516 * https://pypi.org/simple/funtoo-ramdisk/ 2023-09-04T18:21:12,516 * https://www.piwheels.org/simple/funtoo-ramdisk/ 2023-09-04T18:21:12,517 Fetching project page and analyzing links: https://pypi.org/simple/funtoo-ramdisk/ 2023-09-04T18:21:12,518 Getting page https://pypi.org/simple/funtoo-ramdisk/ 2023-09-04T18:21:12,522 Found index url https://pypi.org/simple/ 2023-09-04T18:21:12,708 Fetched page https://pypi.org/simple/funtoo-ramdisk/ as application/vnd.pypi.simple.v1+json 2023-09-04T18:21:12,715 Found link https://files.pythonhosted.org/packages/d3/2f/2d92b7aef92983cdfbe7e0809b00e5ffa9ff699c73ad53e501b93dfd5e7f/funtoo-ramdisk-1.0.0.tar.gz (from https://pypi.org/simple/funtoo-ramdisk/) (requires-python:>=3.7), version: 1.0.0 2023-09-04T18:21:12,717 Found link https://files.pythonhosted.org/packages/f7/ce/2b2669f5181ad3da55bdb4c0b7e78f1a1f02a52cf6f4d26da363b98b0ff6/funtoo-ramdisk-1.0.1.tar.gz (from https://pypi.org/simple/funtoo-ramdisk/) (requires-python:>=3.7), version: 1.0.1 2023-09-04T18:21:12,719 Found link https://files.pythonhosted.org/packages/f9/fa/646343cf9f6313cf3808fc13d1f0e047a0f044afbdd7c60d76613a4da543/funtoo-ramdisk-1.0.2.tar.gz (from https://pypi.org/simple/funtoo-ramdisk/) (requires-python:>=3.7), version: 1.0.2 2023-09-04T18:21:12,720 Found link https://files.pythonhosted.org/packages/33/8b/67d6030fe5aca53d240d6f4fb5cc6319918ed0c9310866a074c27ceebdf7/funtoo-ramdisk-1.0.3.tar.gz (from https://pypi.org/simple/funtoo-ramdisk/) (requires-python:>=3.7), version: 1.0.3 2023-09-04T18:21:12,722 Found link https://files.pythonhosted.org/packages/3f/13/0c6d2f9e8ae74fe6fc8a290bfbb7b389818e7a7b82d158ff20e9251e5c89/funtoo-ramdisk-1.0.4.tar.gz (from https://pypi.org/simple/funtoo-ramdisk/) (requires-python:>=3.7), version: 1.0.4 2023-09-04T18:21:12,723 Found link https://files.pythonhosted.org/packages/b2/7e/d3590830418ed3e696c6e922ead5a50daee4c8c2136b315153fcee0377a2/funtoo-ramdisk-1.0.5.tar.gz (from https://pypi.org/simple/funtoo-ramdisk/) (requires-python:>=3.7), version: 1.0.5 2023-09-04T18:21:12,725 Found link https://files.pythonhosted.org/packages/ed/be/18b4d837c37a78a43accd3347db70d3dc5bafd48b668d1f45d1b92172a00/funtoo-ramdisk-1.0.6.tar.gz (from https://pypi.org/simple/funtoo-ramdisk/) (requires-python:>=3.7), version: 1.0.6 2023-09-04T18:21:12,726 Found link https://files.pythonhosted.org/packages/5b/af/89829fafc0fdc46f515dcc45cac43a14a333f10703d9e77e2f07b75f9315/funtoo-ramdisk-1.0.7.tar.gz (from https://pypi.org/simple/funtoo-ramdisk/) (requires-python:>=3.7), version: 1.0.7 2023-09-04T18:21:12,727 Found link https://files.pythonhosted.org/packages/7c/a6/12d689149a2f7695776cc1c97dba03d1baabbf2451e4bf7c28ccdd2ae4d3/funtoo-ramdisk-1.1.0.tar.gz (from https://pypi.org/simple/funtoo-ramdisk/) (requires-python:>=3.7), version: 1.1.0 2023-09-04T18:21:12,729 Found link https://files.pythonhosted.org/packages/cd/f2/c7a93f91f1c06e4e7697f4cb1af5ff1afa2e7e20c8ba456c0b6820a1e9ca/funtoo-ramdisk-1.1.1.tar.gz (from https://pypi.org/simple/funtoo-ramdisk/) (requires-python:>=3.7), version: 1.1.1 2023-09-04T18:21:12,730 Fetching project page and analyzing links: https://www.piwheels.org/simple/funtoo-ramdisk/ 2023-09-04T18:21:12,730 Getting page https://www.piwheels.org/simple/funtoo-ramdisk/ 2023-09-04T18:21:12,733 Found index url https://www.piwheels.org/simple/ 2023-09-04T18:21:13,050 Fetched page https://www.piwheels.org/simple/funtoo-ramdisk/ as text/html 2023-09-04T18:21:13,059 Skipping link: No binaries permitted for funtoo-ramdisk: https://www.piwheels.org/simple/funtoo-ramdisk/funtoo_ramdisk-1.1.0-py3-none-any.whl#sha256=1a4604cec4d133454e7d49d6b8046ecac63c5d35bee972e0b83d7c642519b1fe (from https://www.piwheels.org/simple/funtoo-ramdisk/) (requires-python:>=3.7) 2023-09-04T18:21:13,059 Skipping link: No binaries permitted for funtoo-ramdisk: https://www.piwheels.org/simple/funtoo-ramdisk/funtoo_ramdisk-1.0.7-py3-none-any.whl#sha256=1d5973cefc4213fd86b3c2d588147d819d85b297838aec0f76a7083c038f897d (from https://www.piwheels.org/simple/funtoo-ramdisk/) (requires-python:>=3.7) 2023-09-04T18:21:13,060 Skipping link: No binaries permitted for funtoo-ramdisk: https://www.piwheels.org/simple/funtoo-ramdisk/funtoo_ramdisk-1.0.6-py3-none-any.whl#sha256=f40079c99c437f3949147af63efa1e16713bbe6101b4fde69e8de5ea434306e3 (from https://www.piwheels.org/simple/funtoo-ramdisk/) (requires-python:>=3.7) 2023-09-04T18:21:13,060 Skipping link: No binaries permitted for funtoo-ramdisk: https://www.piwheels.org/simple/funtoo-ramdisk/funtoo_ramdisk-1.0.5-py3-none-any.whl#sha256=3451404b0e9f527100407bfd4f343cfe9197b5f6f9bab7e5f6494ce9ea2bafff (from https://www.piwheels.org/simple/funtoo-ramdisk/) (requires-python:>=3.7) 2023-09-04T18:21:13,061 Skipping link: No binaries permitted for funtoo-ramdisk: https://www.piwheels.org/simple/funtoo-ramdisk/funtoo_ramdisk-1.0.4-py3-none-any.whl#sha256=54c976a5a708a542266aa1f9c2584634ecaa529c6564bbef4c66d65012ced852 (from https://www.piwheels.org/simple/funtoo-ramdisk/) (requires-python:>=3.7) 2023-09-04T18:21:13,061 Skipping link: No binaries permitted for funtoo-ramdisk: https://www.piwheels.org/simple/funtoo-ramdisk/funtoo_ramdisk-1.0.3-py3-none-any.whl#sha256=cde4241106db6ca7c0bd04d0f1817c5f352fc45c46e5b75df9b1cf0dcd977234 (from https://www.piwheels.org/simple/funtoo-ramdisk/) (requires-python:>=3.7) 2023-09-04T18:21:13,062 Skipping link: No binaries permitted for funtoo-ramdisk: https://www.piwheels.org/simple/funtoo-ramdisk/funtoo_ramdisk-1.0.2-py3-none-any.whl#sha256=6e70627cb0da3859494b41255b0ba8bf164c16221b5779924cc3b5fd12a0a928 (from https://www.piwheels.org/simple/funtoo-ramdisk/) (requires-python:>=3.7) 2023-09-04T18:21:13,062 Skipping link: No binaries permitted for funtoo-ramdisk: https://www.piwheels.org/simple/funtoo-ramdisk/funtoo_ramdisk-1.0.1-py3-none-any.whl#sha256=232a400779c3abd15ac70e995c47347a69f669d1ce4d4e4ced81b43b3a6b6c30 (from https://www.piwheels.org/simple/funtoo-ramdisk/) (requires-python:>=3.7) 2023-09-04T18:21:13,063 Skipping link: No binaries permitted for funtoo-ramdisk: https://www.piwheels.org/simple/funtoo-ramdisk/funtoo_ramdisk-1.0.0-py3-none-any.whl#sha256=cb61659ae06f4e370b5de5a9a3e3041eeaaa193ec1b45e1a0948b75d7ca922f2 (from https://www.piwheels.org/simple/funtoo-ramdisk/) (requires-python:>=3.7) 2023-09-04T18:21:13,063 Skipping link: not a file: https://www.piwheels.org/simple/funtoo-ramdisk/ 2023-09-04T18:21:13,064 Skipping link: not a file: https://pypi.org/simple/funtoo-ramdisk/ 2023-09-04T18:21:13,100 Given no hashes to check 1 links for project 'funtoo-ramdisk': discarding no candidates 2023-09-04T18:21:13,132 Collecting funtoo-ramdisk==1.1.1 2023-09-04T18:21:13,136 Created temporary directory: /tmp/pip-unpack-fnwp7zp5 2023-09-04T18:21:13,310 Downloading funtoo-ramdisk-1.1.1.tar.gz (32 kB) 2023-09-04T18:21:13,504 Added funtoo-ramdisk==1.1.1 from https://files.pythonhosted.org/packages/cd/f2/c7a93f91f1c06e4e7697f4cb1af5ff1afa2e7e20c8ba456c0b6820a1e9ca/funtoo-ramdisk-1.1.1.tar.gz to build tracker '/tmp/pip-build-tracker-nqqu3z99' 2023-09-04T18:21:13,508 Running setup.py (path:/tmp/pip-wheel-yc1nbfr2/funtoo-ramdisk_a75af038c3974ed0bb4c5320d21f45e8/setup.py) egg_info for package funtoo-ramdisk 2023-09-04T18:21:13,509 Created temporary directory: /tmp/pip-pip-egg-info-0mu6mhf5 2023-09-04T18:21:13,509 Preparing metadata (setup.py): started 2023-09-04T18:21:13,512 Running command python setup.py egg_info 2023-09-04T18:21:14,606 ************** 2023-09-04T18:21:14,607 Funtoo Ramdisk 2023-09-04T18:21:14,607 ************** 2023-09-04T18:21:14,608 Copyright 2023 Daniel Robbins, Funtoo Solutions, Inc. 2023-09-04T18:21:14,609 Licensed under the Apache License, Version 2.0 (the "License"); 2023-09-04T18:21:14,609 you may not use this file except in compliance with the License. 2023-09-04T18:21:14,609 You may obtain a copy of the License at 2023-09-04T18:21:14,610 http://www.apache.org/licenses/LICENSE-2.0 2023-09-04T18:21:14,611 Unless required by applicable law or agreed to in writing, software 2023-09-04T18:21:14,611 distributed under the License is distributed on an "AS IS" BASIS, 2023-09-04T18:21:14,611 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 2023-09-04T18:21:14,612 See the License for the specific language governing permissions and 2023-09-04T18:21:14,612 limitations under the License. 2023-09-04T18:21:14,613 Introduction 2023-09-04T18:21:14,613 ============ 2023-09-04T18:21:14,614 The Funtoo ramdisk tool, called ``ramdisk`` is a stand-alone tool to create an 2023-09-04T18:21:14,614 initial RAM disk filesystem (initramfs) for booting your Linux system. 2023-09-04T18:21:14,615 The internal initramfs logic is based on the logic found in Gentoo Linux's 2023-09-04T18:21:14,615 genkernel tool, but has been rewritten to be simpler and more efficient. 2023-09-04T18:21:14,616 You can use this tool to create an initramfs to boot to a Funtoo Linux root 2023-09-04T18:21:14,616 ext4 or XFS filesystem, which is what we support in our official installation 2023-09-04T18:21:14,616 documentation at https://www.funtoo.org/Install -- but that's about it. 2023-09-04T18:21:14,617 What's Not Included 2023-09-04T18:21:14,617 =================== 2023-09-04T18:21:14,618 Nearly all "extra" genkernel features are intentionally not yet implemented. 2023-09-04T18:21:14,618 This tool doesn't build your kernel or modules. 2023-09-04T18:21:14,619 It also currently doesn't support dmraid, zfs, btrfs, encrypted root, or LiveCD 2023-09-04T18:21:14,619 or LiveUSB booting. 2023-09-04T18:21:14,620 Why not? Because one of the main design goals of this project is to create a 2023-09-04T18:21:14,620 very elegant and easy-to-understand initramfs whose core logic is not cluttered 2023-09-04T18:21:14,621 with tons of complicated features. To start from a clean slate, we are starting 2023-09-04T18:21:14,621 from very minimal functionality and then will very carefully add back various 2023-09-04T18:21:14,621 features while keeping the code clean, simple, elegant and effective. 2023-09-04T18:21:14,622 What's Included 2023-09-04T18:21:14,622 =============== 2023-09-04T18:21:14,623 So, what *does* Funtoo's ramdisk tool actually offer? Here's a list: 2023-09-04T18:21:14,624 * genkernel-style initramfs without the cruft. In comparison to genkernel's 2023-09-04T18:21:14,624 initramfs, the shell code is about 10x simpler and a lot cleaner and has 2023-09-04T18:21:14,624 been modernized. About 100 lines of shell script, with another 215 lines 2023-09-04T18:21:14,625 of functions in a support file. 2023-09-04T18:21:14,625 * Copies over the modules you specify -- and automatically figures out any 2023-09-04T18:21:14,625 kernel module dependencies, so any depended-upon modules are also copied. 2023-09-04T18:21:14,626 This eliminates the need to track these dependencies manually. 2023-09-04T18:21:14,626 * Rootless operation. You do not need enhanced privileges to create the 2023-09-04T18:21:14,627 initramfs. 2023-09-04T18:21:14,627 * You can read the ``linuxrc`` script and actually understand what it does. 2023-09-04T18:21:14,628 It is written to be easy to understand and adapt. So it's not just short, 2023-09-04T18:21:14,628 but easy to grasp. 2023-09-04T18:21:14,629 * Enhanced module loading engine on the initramfs which is significantly 2023-09-04T18:21:14,629 faster than genkernel. This effectively eliminates the "watching the 2023-09-04T18:21:14,629 stream of useless modules being loaded" issue with genkernel. Modern 2023-09-04T18:21:14,630 systems with NVMe drives will load just a handful of modules to boot 2023-09-04T18:21:14,630 -- all without requiring any special action from the user. 2023-09-04T18:21:14,631 * "kpop" functionality allows for building ramdisks with just the modules 2023-09-04T18:21:14,631 you need. For example, ``ramdisk --kpop=nvme,ext4`` will create a 2023-09-04T18:21:14,631 ramdisk that can boot on NVMe ext4 root filesystems, and only include 2023-09-04T18:21:14,632 these necessary modules, leaving all other modules to be loaded by 2023-09-04T18:21:14,632 your Funtoo Linux system. 2023-09-04T18:21:14,633 * Effective Python-based command to actually build the ramdisk, which is 2023-09-04T18:21:14,633 called: ``ramdisk``. This gives us an extensible platform for the future. 2023-09-04T18:21:14,634 * Enhanced ini-style system for selecting modules to include on your initramfs. 2023-09-04T18:21:14,634 * Enhanced ini-style system for selecting module groups to autoload on the initramfs. 2023-09-04T18:21:14,634 * Support for xz and zstd compression. 2023-09-04T18:21:14,635 How To Use It 2023-09-04T18:21:14,635 ============= 2023-09-04T18:21:14,636 First, install the package, via ``emerge ramdisk`` on Funtoo Linux, or alternatively 2023-09-04T18:21:14,636 ``pip3 install --user funtoo-ramdisk``. You will then have a ``ramdisk`` command 2023-09-04T18:21:14,637 in your path, which can be used to build a ramdisk. 2023-09-04T18:21:14,637 Then, as a regular user, you can run:: 2023-09-04T18:21:14,638 ramdisk /var/tmp/my-new-initramfs 2023-09-04T18:21:14,638 sudo cp /var/tmp/my-new-initramfs /boot 2023-09-04T18:21:14,639 By default, ``ramdisk`` will use your ``/usr/src/linux`` symlink to determine which 2023-09-04T18:21:14,639 kernel to use to build a ramdisk for. It will parse ``/usr/src/linux/Makefile``, 2023-09-04T18:21:14,639 extract kernel version information, and then find the appropriate directory in 2023-09-04T18:21:14,640 ``/lib/modules/`` for copying modules. You can type: 2023-09-04T18:21:14,640 ``ramdisk list kernels`` and ``ramdisk --kernel `` to build a ramdisk 2023-09-04T18:21:14,641 for a non-default kernel. 2023-09-04T18:21:14,641 Since this is brand-new software, it is highly recommended that you DO NOT OVERWRITE 2023-09-04T18:21:14,642 YOUR EXISTING, WORKING INITRAMFS THAT YOU CURRENTLY USE TO BOOT YOUR SYSTEM. 2023-09-04T18:21:14,642 Instead -- create a NEW BOOT ENTRY to test your initramfs. In GRUB, you can also 2023-09-04T18:21:14,643 press 'e' to edit an entry and type in the name of the new initramfs to give it a try. 2023-09-04T18:21:14,643 Enjoy -- and let me know how it works for you! Please report issues and feature 2023-09-04T18:21:14,643 requests to https://bugs.funtoo.org. 2023-09-04T18:21:14,644 ChangeLog 2023-09-04T18:21:14,645 ========= 2023-09-04T18:21:14,645 funtoo-ramdisk 1.1.1 2023-09-04T18:21:14,646 -------------------- 2023-09-04T18:21:14,646 Released on September 4, 2023. 2023-09-04T18:21:14,647 Fix three bugs: 2023-09-04T18:21:14,648 * Allow plugins to be loaded when installed in ``site-packages``. 2023-09-04T18:21:14,648 * Don't assume ``/usr/src/linux`` symlink exists in two places and 2023-09-04T18:21:14,648 handle this situation gracefully. This situation may exist during 2023-09-04T18:21:14,649 metro builds on incomplete systems. (2 bugs fixed). 2023-09-04T18:21:14,650 funtoo-ramdisk 1.1.0 2023-09-04T18:21:14,650 -------------------- 2023-09-04T18:21:14,651 Released on September 3, 2023. 2023-09-04T18:21:14,651 * Add plugin system for ramdisk: 2023-09-04T18:21:14,652 To use, pass ``--enable=,``. The ``core`` plugin is 2023-09-04T18:21:14,653 always enabled and copies ``/sbin/blkid``. There are currently ``btrfs`` 2023-09-04T18:21:14,653 and ``lvm`` plugins as well -- these are not yet fully-implemented and 2023-09-04T18:21:14,653 just ensure necessary binaries are copied over (no extra setup commands 2023-09-04T18:21:14,654 are run by the initramfs.) 2023-09-04T18:21:14,654 This is a starting point for enabling support for advanced 2023-09-04T18:21:14,655 features on the initramfs. 2023-09-04T18:21:14,655 * New "module configurations". The default module configuration is "full", 2023-09-04T18:21:14,656 which means "make a ramdisk with lots of modules to support a lot of 2023-09-04T18:21:14,656 hardware." Different module configurations can be added in the future. 2023-09-04T18:21:14,656 Module configurations can be specified via ``--kmod_config=``. 2023-09-04T18:21:14,657 * ``--kpop=`` feature to make minimal module ramdisks by specifying a 2023-09-04T18:21:14,657 dynamic module configuration via the command-line, rather than via 2023-09-04T18:21:14,658 static config files. 2023-09-04T18:21:14,658 If you specify ``--kpop=nvme,ext4`` then a ramdisk with just those 2023-09-04T18:21:14,658 modules (and their dependencies) will be included. This can dramatically 2023-09-04T18:21:14,659 reduce the size of your ramdisk. Note that this doesn't include the 2023-09-04T18:21:14,659 necessary modules to allow USB keyboards to work in the rescue shell, 2023-09-04T18:21:14,659 so it's only for known-good configurations. Enabling this feature also 2023-09-04T18:21:14,660 disables any static module configuration (see above.) 2023-09-04T18:21:14,660 * Change the binary plugin API so lists of binaries can be dynamically 2023-09-04T18:21:14,661 created and programmatic decisions can be made. Previously, we used a 2023-09-04T18:21:14,661 static list. This allows us to use ``lvm.static`` if available, but 2023-09-04T18:21:14,662 fall back to dynamic ``lvm``, for example. 2023-09-04T18:21:14,662 * To support ``kpop`` functionality, the ability to add a module by its 2023-09-04T18:21:14,663 basic name, not just via its full path or glob, was added to 2023-09-04T18:21:14,663 ``modules.copy``. 2023-09-04T18:21:14,663 * Modules code can now accept ``modules.copy`` and ``modules.autoload`` 2023-09-04T18:21:14,664 as dynamically-generated line data rather than just as static files 2023-09-04T18:21:14,664 that must exist on the filesystem. (Again, used by ``kpop``). 2023-09-04T18:21:14,665 * ``linuxrc`` has been improved/fixed to not have a hard-coded list of 2023-09-04T18:21:14,665 module groups to try to load, and instead use the ``modules.autoload`` 2023-09-04T18:21:14,665 groups to determine these. 2023-09-04T18:21:14,666 * ``ramdisk list kernels`` and ``ramdisk list plugins`` actions added. 2023-09-04T18:21:14,666 The former makes use of ``ramdisk --kernel `` easier because it 2023-09-04T18:21:14,667 prints the available kernel names which can be copy/pasted for the 2023-09-04T18:21:14,667 ``--kernel`` option. 2023-09-04T18:21:14,668 * Implemented our own argument parsing as ``argparse`` was not worth 2023-09-04T18:21:14,668 using. 2023-09-04T18:21:14,669 * Lots of code organized into their own ``.py`` files. 2023-09-04T18:21:14,669 * Make ``/etc/fstab`` sanity check a warning as this file may not be 2023-09-04T18:21:14,669 set up at all if doing a metro build. 2023-09-04T18:21:14,670 * Disable colors if we don't have an interactive shell. 2023-09-04T18:21:14,671 funtoo-ramdisk 1.0.7 2023-09-04T18:21:14,671 -------------------- 2023-09-04T18:21:14,672 Released on August 22, 2023. 2023-09-04T18:21:14,673 Changes: 2023-09-04T18:21:14,673 * Get rid of ``--modules_root``. Instead, added ``--fs_root`` which 2023-09-04T18:21:14,674 specifies where modules *and* the kernel sources will be. This 2023-09-04T18:21:14,674 allows the tool to work from an ebuild. 2023-09-04T18:21:14,675 * Improve output and add nice colors. Optimize information to be 2023-09-04T18:21:14,675 more useful to users. 2023-09-04T18:21:14,676 funtoo-ramdisk 1.0.6 2023-09-04T18:21:14,676 -------------------- 2023-09-04T18:21:14,677 Released on August 21, 2023. 2023-09-04T18:21:14,677 Two new options: 2023-09-04T18:21:14,678 * ``--modules_root`` to set the root filesystem to scan for modules. 2023-09-04T18:21:14,678 It defaults to ``/``. 2023-09-04T18:21:14,679 * ``--temp_root`` to set the default path to use for creating a 2023-09-04T18:21:14,679 temporary directory. It defaults to ``/var/tmp``. 2023-09-04T18:21:14,680 funtoo-ramdisk 1.0.5 2023-09-04T18:21:14,680 -------------------- 2023-09-04T18:21:14,681 Released on August 21, 2023. 2023-09-04T18:21:14,682 This is a features/maintenance/bug fix release. 2023-09-04T18:21:14,682 In addition to a bunch of minor fixes and clean-ups, which you can 2023-09-04T18:21:14,683 view in the git history, the following significant changes were 2023-09-04T18:21:14,683 made: 2023-09-04T18:21:14,684 * Use kmod ``/sbin/modprobe`` instead of busybox's modprobe. Busybox's modprobe 2023-09-04T18:21:14,684 may be fine, but for it to work, we must use busybox's ``depmod`` -- and we're 2023-09-04T18:21:14,684 not. We're using ``kmod``'s. So for now, let's just copy the right modprobe 2023-09-04T18:21:14,685 over. This fixes an issue where we get invalid symbols when loading modules 2023-09-04T18:21:14,685 using busybox ``modprobe``. ``modprobe`` is now resolving deps properly! :) 2023-09-04T18:21:14,685 At some point, we could make a "toggle" to select kmod/busybox mode. The 2023-09-04T18:21:14,686 best time to run ``depmod`` for busybox is probably once the ramdisk first 2023-09-04T18:21:14,686 boots, since it doesn't have a "root" option, making it hard to call from our 2023-09-04T18:21:14,686 ramdisk script. 2023-09-04T18:21:14,687 * Remove unused control character definitions in ``initrd.defaults``. 2023-09-04T18:21:14,688 * Mitigate an issue where ``ash`` shell could start before all USB keyboards 2023-09-04T18:21:14,688 have been detected, resulting in lack of input. We now wait 5 seconds 2023-09-04T18:21:14,688 before starting a rescue shell, to give the kernel time to enumerate 2023-09-04T18:21:14,689 devices on the USB2/3 bus. This isn't a full fix, but should resolve 2023-09-04T18:21:14,689 the problem of ``ash`` starting and not having any way to type, because 2023-09-04T18:21:14,689 it didn't connect to your main keyboard. 2023-09-04T18:21:14,690 Try to work around issues related to ATA/SCSI disk enumeration which could 2023-09-04T18:21:14,690 prevent the root filesystem from being mounted (see FL-11532). 2023-09-04T18:21:14,691 * Detect when a user has a ``/dev/sd*`` root block device and warn them that 2023-09-04T18:21:14,691 this is not a good idea, and can cause problems if you have multiple 2023-09-04T18:21:14,692 disks. Show them how to fix the problem by switching to UUID. 2023-09-04T18:21:14,692 * Remove scsi_debug module which is evil and if we force-load it, will create 2023-09-04T18:21:14,693 a new SCSI device 8MB in size and trigger the problem above for anyone 2023-09-04T18:21:14,693 with a SATA disk. 2023-09-04T18:21:14,694 * To implement above feature, added a feature to allow masking of modules in 2023-09-04T18:21:14,694 ``modules.copy`` via "-mod_shortname" in a specific section. Also added a 2023-09-04T18:21:14,694 lot of sanity checking and warnings. If you happen to mask a module in the 2023-09-04T18:21:14,695 wrong section, so it still gets included on the initramfs due to other 2023-09-04T18:21:14,695 section(s), we will warn you. 2023-09-04T18:21:14,696 funtoo-ramdisk 1.0.4 2023-09-04T18:21:14,696 -------------------- 2023-09-04T18:21:14,697 Released on August 18, 2023. 2023-09-04T18:21:14,697 This is a maintenance/bug fix release. 2023-09-04T18:21:14,698 * Fix ability to run from the git repo. This wasn't working. 2023-09-04T18:21:14,699 * Fix issue found by grouche, where if a module is built-in to the 2023-09-04T18:21:14,699 kernel but listed in ``modules.autoload``, ``ramdisk`` would throw 2023-09-04T18:21:14,699 an error because it would think it's not copied to the initramfs. 2023-09-04T18:21:14,700 We now read in the ``modules.builtin`` file and use this in the 2023-09-04T18:21:14,700 internal logic -- if a module is built-in to the kernel, we can 2023-09-04T18:21:14,700 not worry if it is our ``modules.autoload`` list. We still have it. 2023-09-04T18:21:14,701 We will also not worry about trying to load it at boot. 2023-09-04T18:21:14,701 * Add a debug output whenever a module is referenced that is actually 2023-09-04T18:21:14,702 a built-in. This helps to audit the behavior of the above 2023-09-04T18:21:14,702 functionality and could be useful to users of the tool as well. 2023-09-04T18:21:14,703 * Announce we are in debug mode with ``log.info()`` instead of a 2023-09-04T18:21:14,703 warning. Looks a bit nicer. 2023-09-04T18:21:15,305 running egg_info 2023-09-04T18:21:15,308 creating /tmp/pip-pip-egg-info-0mu6mhf5/funtoo_ramdisk.egg-info 2023-09-04T18:21:15,420 writing /tmp/pip-pip-egg-info-0mu6mhf5/funtoo_ramdisk.egg-info/PKG-INFO 2023-09-04T18:21:15,425 writing dependency_links to /tmp/pip-pip-egg-info-0mu6mhf5/funtoo_ramdisk.egg-info/dependency_links.txt 2023-09-04T18:21:15,429 writing requirements to /tmp/pip-pip-egg-info-0mu6mhf5/funtoo_ramdisk.egg-info/requires.txt 2023-09-04T18:21:15,432 writing top-level names to /tmp/pip-pip-egg-info-0mu6mhf5/funtoo_ramdisk.egg-info/top_level.txt 2023-09-04T18:21:16,112 writing manifest file '/tmp/pip-pip-egg-info-0mu6mhf5/funtoo_ramdisk.egg-info/SOURCES.txt' 2023-09-04T18:21:16,595 reading manifest file '/tmp/pip-pip-egg-info-0mu6mhf5/funtoo_ramdisk.egg-info/SOURCES.txt' 2023-09-04T18:21:16,598 reading manifest template 'MANIFEST.in' 2023-09-04T18:21:16,618 writing manifest file '/tmp/pip-pip-egg-info-0mu6mhf5/funtoo_ramdisk.egg-info/SOURCES.txt' 2023-09-04T18:21:16,757 Preparing metadata (setup.py): finished with status 'done' 2023-09-04T18:21:16,772 Source in /tmp/pip-wheel-yc1nbfr2/funtoo-ramdisk_a75af038c3974ed0bb4c5320d21f45e8 has version 1.1.1, which satisfies requirement funtoo-ramdisk==1.1.1 from https://files.pythonhosted.org/packages/cd/f2/c7a93f91f1c06e4e7697f4cb1af5ff1afa2e7e20c8ba456c0b6820a1e9ca/funtoo-ramdisk-1.1.1.tar.gz 2023-09-04T18:21:16,774 Removed funtoo-ramdisk==1.1.1 from https://files.pythonhosted.org/packages/cd/f2/c7a93f91f1c06e4e7697f4cb1af5ff1afa2e7e20c8ba456c0b6820a1e9ca/funtoo-ramdisk-1.1.1.tar.gz from build tracker '/tmp/pip-build-tracker-nqqu3z99' 2023-09-04T18:21:16,792 Created temporary directory: /tmp/pip-unpack-h69tiox3 2023-09-04T18:21:16,793 Building wheels for collected packages: funtoo-ramdisk 2023-09-04T18:21:16,802 Created temporary directory: /tmp/pip-wheel-ipmi7wb5 2023-09-04T18:21:16,802 Building wheel for funtoo-ramdisk (setup.py): started 2023-09-04T18:21:16,804 Destination directory: /tmp/pip-wheel-ipmi7wb5 2023-09-04T18:21:16,805 Running command python setup.py bdist_wheel 2023-09-04T18:21:17,894 ************** 2023-09-04T18:21:17,896 Funtoo Ramdisk 2023-09-04T18:21:17,896 ************** 2023-09-04T18:21:17,897 Copyright 2023 Daniel Robbins, Funtoo Solutions, Inc. 2023-09-04T18:21:17,898 Licensed under the Apache License, Version 2.0 (the "License"); 2023-09-04T18:21:17,898 you may not use this file except in compliance with the License. 2023-09-04T18:21:17,898 You may obtain a copy of the License at 2023-09-04T18:21:17,899 http://www.apache.org/licenses/LICENSE-2.0 2023-09-04T18:21:17,900 Unless required by applicable law or agreed to in writing, software 2023-09-04T18:21:17,900 distributed under the License is distributed on an "AS IS" BASIS, 2023-09-04T18:21:17,900 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 2023-09-04T18:21:17,901 See the License for the specific language governing permissions and 2023-09-04T18:21:17,901 limitations under the License. 2023-09-04T18:21:17,902 Introduction 2023-09-04T18:21:17,902 ============ 2023-09-04T18:21:17,903 The Funtoo ramdisk tool, called ``ramdisk`` is a stand-alone tool to create an 2023-09-04T18:21:17,903 initial RAM disk filesystem (initramfs) for booting your Linux system. 2023-09-04T18:21:17,904 The internal initramfs logic is based on the logic found in Gentoo Linux's 2023-09-04T18:21:17,904 genkernel tool, but has been rewritten to be simpler and more efficient. 2023-09-04T18:21:17,905 You can use this tool to create an initramfs to boot to a Funtoo Linux root 2023-09-04T18:21:17,905 ext4 or XFS filesystem, which is what we support in our official installation 2023-09-04T18:21:17,905 documentation at https://www.funtoo.org/Install -- but that's about it. 2023-09-04T18:21:17,906 What's Not Included 2023-09-04T18:21:17,906 =================== 2023-09-04T18:21:17,907 Nearly all "extra" genkernel features are intentionally not yet implemented. 2023-09-04T18:21:17,907 This tool doesn't build your kernel or modules. 2023-09-04T18:21:17,908 It also currently doesn't support dmraid, zfs, btrfs, encrypted root, or LiveCD 2023-09-04T18:21:17,908 or LiveUSB booting. 2023-09-04T18:21:17,909 Why not? Because one of the main design goals of this project is to create a 2023-09-04T18:21:17,909 very elegant and easy-to-understand initramfs whose core logic is not cluttered 2023-09-04T18:21:17,909 with tons of complicated features. To start from a clean slate, we are starting 2023-09-04T18:21:17,910 from very minimal functionality and then will very carefully add back various 2023-09-04T18:21:17,910 features while keeping the code clean, simple, elegant and effective. 2023-09-04T18:21:17,911 What's Included 2023-09-04T18:21:17,911 =============== 2023-09-04T18:21:17,912 So, what *does* Funtoo's ramdisk tool actually offer? Here's a list: 2023-09-04T18:21:17,912 * genkernel-style initramfs without the cruft. In comparison to genkernel's 2023-09-04T18:21:17,913 initramfs, the shell code is about 10x simpler and a lot cleaner and has 2023-09-04T18:21:17,913 been modernized. About 100 lines of shell script, with another 215 lines 2023-09-04T18:21:17,913 of functions in a support file. 2023-09-04T18:21:17,914 * Copies over the modules you specify -- and automatically figures out any 2023-09-04T18:21:17,914 kernel module dependencies, so any depended-upon modules are also copied. 2023-09-04T18:21:17,915 This eliminates the need to track these dependencies manually. 2023-09-04T18:21:17,915 * Rootless operation. You do not need enhanced privileges to create the 2023-09-04T18:21:17,916 initramfs. 2023-09-04T18:21:17,916 * You can read the ``linuxrc`` script and actually understand what it does. 2023-09-04T18:21:17,917 It is written to be easy to understand and adapt. So it's not just short, 2023-09-04T18:21:17,917 but easy to grasp. 2023-09-04T18:21:17,918 * Enhanced module loading engine on the initramfs which is significantly 2023-09-04T18:21:17,918 faster than genkernel. This effectively eliminates the "watching the 2023-09-04T18:21:17,918 stream of useless modules being loaded" issue with genkernel. Modern 2023-09-04T18:21:17,919 systems with NVMe drives will load just a handful of modules to boot 2023-09-04T18:21:17,919 -- all without requiring any special action from the user. 2023-09-04T18:21:17,920 * "kpop" functionality allows for building ramdisks with just the modules 2023-09-04T18:21:17,920 you need. For example, ``ramdisk --kpop=nvme,ext4`` will create a 2023-09-04T18:21:17,920 ramdisk that can boot on NVMe ext4 root filesystems, and only include 2023-09-04T18:21:17,921 these necessary modules, leaving all other modules to be loaded by 2023-09-04T18:21:17,921 your Funtoo Linux system. 2023-09-04T18:21:17,922 * Effective Python-based command to actually build the ramdisk, which is 2023-09-04T18:21:17,922 called: ``ramdisk``. This gives us an extensible platform for the future. 2023-09-04T18:21:17,923 * Enhanced ini-style system for selecting modules to include on your initramfs. 2023-09-04T18:21:17,923 * Enhanced ini-style system for selecting module groups to autoload on the initramfs. 2023-09-04T18:21:17,923 * Support for xz and zstd compression. 2023-09-04T18:21:17,924 How To Use It 2023-09-04T18:21:17,924 ============= 2023-09-04T18:21:17,925 First, install the package, via ``emerge ramdisk`` on Funtoo Linux, or alternatively 2023-09-04T18:21:17,925 ``pip3 install --user funtoo-ramdisk``. You will then have a ``ramdisk`` command 2023-09-04T18:21:17,926 in your path, which can be used to build a ramdisk. 2023-09-04T18:21:17,926 Then, as a regular user, you can run:: 2023-09-04T18:21:17,927 ramdisk /var/tmp/my-new-initramfs 2023-09-04T18:21:17,927 sudo cp /var/tmp/my-new-initramfs /boot 2023-09-04T18:21:17,928 By default, ``ramdisk`` will use your ``/usr/src/linux`` symlink to determine which 2023-09-04T18:21:17,928 kernel to use to build a ramdisk for. It will parse ``/usr/src/linux/Makefile``, 2023-09-04T18:21:17,929 extract kernel version information, and then find the appropriate directory in 2023-09-04T18:21:17,929 ``/lib/modules/`` for copying modules. You can type: 2023-09-04T18:21:17,929 ``ramdisk list kernels`` and ``ramdisk --kernel `` to build a ramdisk 2023-09-04T18:21:17,929 for a non-default kernel. 2023-09-04T18:21:17,930 Since this is brand-new software, it is highly recommended that you DO NOT OVERWRITE 2023-09-04T18:21:17,930 YOUR EXISTING, WORKING INITRAMFS THAT YOU CURRENTLY USE TO BOOT YOUR SYSTEM. 2023-09-04T18:21:17,931 Instead -- create a NEW BOOT ENTRY to test your initramfs. In GRUB, you can also 2023-09-04T18:21:17,931 press 'e' to edit an entry and type in the name of the new initramfs to give it a try. 2023-09-04T18:21:17,932 Enjoy -- and let me know how it works for you! Please report issues and feature 2023-09-04T18:21:17,932 requests to https://bugs.funtoo.org. 2023-09-04T18:21:17,933 ChangeLog 2023-09-04T18:21:17,934 ========= 2023-09-04T18:21:17,934 funtoo-ramdisk 1.1.1 2023-09-04T18:21:17,935 -------------------- 2023-09-04T18:21:17,935 Released on September 4, 2023. 2023-09-04T18:21:17,936 Fix three bugs: 2023-09-04T18:21:17,936 * Allow plugins to be loaded when installed in ``site-packages``. 2023-09-04T18:21:17,937 * Don't assume ``/usr/src/linux`` symlink exists in two places and 2023-09-04T18:21:17,937 handle this situation gracefully. This situation may exist during 2023-09-04T18:21:17,938 metro builds on incomplete systems. (2 bugs fixed). 2023-09-04T18:21:17,939 funtoo-ramdisk 1.1.0 2023-09-04T18:21:17,939 -------------------- 2023-09-04T18:21:17,940 Released on September 3, 2023. 2023-09-04T18:21:17,940 * Add plugin system for ramdisk: 2023-09-04T18:21:17,941 To use, pass ``--enable=,``. The ``core`` plugin is 2023-09-04T18:21:17,941 always enabled and copies ``/sbin/blkid``. There are currently ``btrfs`` 2023-09-04T18:21:17,942 and ``lvm`` plugins as well -- these are not yet fully-implemented and 2023-09-04T18:21:17,942 just ensure necessary binaries are copied over (no extra setup commands 2023-09-04T18:21:17,942 are run by the initramfs.) 2023-09-04T18:21:17,943 This is a starting point for enabling support for advanced 2023-09-04T18:21:17,943 features on the initramfs. 2023-09-04T18:21:17,944 * New "module configurations". The default module configuration is "full", 2023-09-04T18:21:17,944 which means "make a ramdisk with lots of modules to support a lot of 2023-09-04T18:21:17,945 hardware." Different module configurations can be added in the future. 2023-09-04T18:21:17,945 Module configurations can be specified via ``--kmod_config=``. 2023-09-04T18:21:17,946 * ``--kpop=`` feature to make minimal module ramdisks by specifying a 2023-09-04T18:21:17,946 dynamic module configuration via the command-line, rather than via 2023-09-04T18:21:17,946 static config files. 2023-09-04T18:21:17,947 If you specify ``--kpop=nvme,ext4`` then a ramdisk with just those 2023-09-04T18:21:17,947 modules (and their dependencies) will be included. This can dramatically 2023-09-04T18:21:17,947 reduce the size of your ramdisk. Note that this doesn't include the 2023-09-04T18:21:17,948 necessary modules to allow USB keyboards to work in the rescue shell, 2023-09-04T18:21:17,948 so it's only for known-good configurations. Enabling this feature also 2023-09-04T18:21:17,948 disables any static module configuration (see above.) 2023-09-04T18:21:17,949 * Change the binary plugin API so lists of binaries can be dynamically 2023-09-04T18:21:17,949 created and programmatic decisions can be made. Previously, we used a 2023-09-04T18:21:17,950 static list. This allows us to use ``lvm.static`` if available, but 2023-09-04T18:21:17,950 fall back to dynamic ``lvm``, for example. 2023-09-04T18:21:17,951 * To support ``kpop`` functionality, the ability to add a module by its 2023-09-04T18:21:17,951 basic name, not just via its full path or glob, was added to 2023-09-04T18:21:17,951 ``modules.copy``. 2023-09-04T18:21:17,952 * Modules code can now accept ``modules.copy`` and ``modules.autoload`` 2023-09-04T18:21:17,952 as dynamically-generated line data rather than just as static files 2023-09-04T18:21:17,953 that must exist on the filesystem. (Again, used by ``kpop``). 2023-09-04T18:21:17,953 * ``linuxrc`` has been improved/fixed to not have a hard-coded list of 2023-09-04T18:21:17,954 module groups to try to load, and instead use the ``modules.autoload`` 2023-09-04T18:21:17,954 groups to determine these. 2023-09-04T18:21:17,955 * ``ramdisk list kernels`` and ``ramdisk list plugins`` actions added. 2023-09-04T18:21:17,955 The former makes use of ``ramdisk --kernel `` easier because it 2023-09-04T18:21:17,955 prints the available kernel names which can be copy/pasted for the 2023-09-04T18:21:17,955 ``--kernel`` option. 2023-09-04T18:21:17,956 * Implemented our own argument parsing as ``argparse`` was not worth 2023-09-04T18:21:17,956 using. 2023-09-04T18:21:17,957 * Lots of code organized into their own ``.py`` files. 2023-09-04T18:21:17,958 * Make ``/etc/fstab`` sanity check a warning as this file may not be 2023-09-04T18:21:17,958 set up at all if doing a metro build. 2023-09-04T18:21:17,959 * Disable colors if we don't have an interactive shell. 2023-09-04T18:21:17,960 funtoo-ramdisk 1.0.7 2023-09-04T18:21:17,960 -------------------- 2023-09-04T18:21:17,960 Released on August 22, 2023. 2023-09-04T18:21:17,961 Changes: 2023-09-04T18:21:17,962 * Get rid of ``--modules_root``. Instead, added ``--fs_root`` which 2023-09-04T18:21:17,962 specifies where modules *and* the kernel sources will be. This 2023-09-04T18:21:17,962 allows the tool to work from an ebuild. 2023-09-04T18:21:17,963 * Improve output and add nice colors. Optimize information to be 2023-09-04T18:21:17,963 more useful to users. 2023-09-04T18:21:17,964 funtoo-ramdisk 1.0.6 2023-09-04T18:21:17,965 -------------------- 2023-09-04T18:21:17,965 Released on August 21, 2023. 2023-09-04T18:21:17,966 Two new options: 2023-09-04T18:21:17,967 * ``--modules_root`` to set the root filesystem to scan for modules. 2023-09-04T18:21:17,967 It defaults to ``/``. 2023-09-04T18:21:17,968 * ``--temp_root`` to set the default path to use for creating a 2023-09-04T18:21:17,968 temporary directory. It defaults to ``/var/tmp``. 2023-09-04T18:21:17,969 funtoo-ramdisk 1.0.5 2023-09-04T18:21:17,969 -------------------- 2023-09-04T18:21:17,970 Released on August 21, 2023. 2023-09-04T18:21:17,970 This is a features/maintenance/bug fix release. 2023-09-04T18:21:17,971 In addition to a bunch of minor fixes and clean-ups, which you can 2023-09-04T18:21:17,971 view in the git history, the following significant changes were 2023-09-04T18:21:17,972 made: 2023-09-04T18:21:17,972 * Use kmod ``/sbin/modprobe`` instead of busybox's modprobe. Busybox's modprobe 2023-09-04T18:21:17,973 may be fine, but for it to work, we must use busybox's ``depmod`` -- and we're 2023-09-04T18:21:17,973 not. We're using ``kmod``'s. So for now, let's just copy the right modprobe 2023-09-04T18:21:17,973 over. This fixes an issue where we get invalid symbols when loading modules 2023-09-04T18:21:17,974 using busybox ``modprobe``. ``modprobe`` is now resolving deps properly! :) 2023-09-04T18:21:17,974 At some point, we could make a "toggle" to select kmod/busybox mode. The 2023-09-04T18:21:17,975 best time to run ``depmod`` for busybox is probably once the ramdisk first 2023-09-04T18:21:17,975 boots, since it doesn't have a "root" option, making it hard to call from our 2023-09-04T18:21:17,975 ramdisk script. 2023-09-04T18:21:17,976 * Remove unused control character definitions in ``initrd.defaults``. 2023-09-04T18:21:17,977 * Mitigate an issue where ``ash`` shell could start before all USB keyboards 2023-09-04T18:21:17,977 have been detected, resulting in lack of input. We now wait 5 seconds 2023-09-04T18:21:17,977 before starting a rescue shell, to give the kernel time to enumerate 2023-09-04T18:21:17,978 devices on the USB2/3 bus. This isn't a full fix, but should resolve 2023-09-04T18:21:17,978 the problem of ``ash`` starting and not having any way to type, because 2023-09-04T18:21:17,978 it didn't connect to your main keyboard. 2023-09-04T18:21:17,979 Try to work around issues related to ATA/SCSI disk enumeration which could 2023-09-04T18:21:17,979 prevent the root filesystem from being mounted (see FL-11532). 2023-09-04T18:21:17,980 * Detect when a user has a ``/dev/sd*`` root block device and warn them that 2023-09-04T18:21:17,980 this is not a good idea, and can cause problems if you have multiple 2023-09-04T18:21:17,980 disks. Show them how to fix the problem by switching to UUID. 2023-09-04T18:21:17,981 * Remove scsi_debug module which is evil and if we force-load it, will create 2023-09-04T18:21:17,981 a new SCSI device 8MB in size and trigger the problem above for anyone 2023-09-04T18:21:17,982 with a SATA disk. 2023-09-04T18:21:17,982 * To implement above feature, added a feature to allow masking of modules in 2023-09-04T18:21:17,983 ``modules.copy`` via "-mod_shortname" in a specific section. Also added a 2023-09-04T18:21:17,983 lot of sanity checking and warnings. If you happen to mask a module in the 2023-09-04T18:21:17,983 wrong section, so it still gets included on the initramfs due to other 2023-09-04T18:21:17,984 section(s), we will warn you. 2023-09-04T18:21:17,985 funtoo-ramdisk 1.0.4 2023-09-04T18:21:17,985 -------------------- 2023-09-04T18:21:17,986 Released on August 18, 2023. 2023-09-04T18:21:17,986 This is a maintenance/bug fix release. 2023-09-04T18:21:17,987 * Fix ability to run from the git repo. This wasn't working. 2023-09-04T18:21:17,987 * Fix issue found by grouche, where if a module is built-in to the 2023-09-04T18:21:17,988 kernel but listed in ``modules.autoload``, ``ramdisk`` would throw 2023-09-04T18:21:17,988 an error because it would think it's not copied to the initramfs. 2023-09-04T18:21:17,988 We now read in the ``modules.builtin`` file and use this in the 2023-09-04T18:21:17,989 internal logic -- if a module is built-in to the kernel, we can 2023-09-04T18:21:17,989 not worry if it is our ``modules.autoload`` list. We still have it. 2023-09-04T18:21:17,989 We will also not worry about trying to load it at boot. 2023-09-04T18:21:17,990 * Add a debug output whenever a module is referenced that is actually 2023-09-04T18:21:17,990 a built-in. This helps to audit the behavior of the above 2023-09-04T18:21:17,990 functionality and could be useful to users of the tool as well. 2023-09-04T18:21:17,991 * Announce we are in debug mode with ``log.info()`` instead of a 2023-09-04T18:21:17,991 warning. Looks a bit nicer. 2023-09-04T18:21:18,659 running bdist_wheel 2023-09-04T18:21:19,565 running build 2023-09-04T18:21:19,565 running build_py 2023-09-04T18:21:19,689 creating build 2023-09-04T18:21:19,690 creating build/lib 2023-09-04T18:21:19,691 creating build/lib/funtoo_ramdisk 2023-09-04T18:21:19,694 copying funtoo_ramdisk/initramfs.py -> build/lib/funtoo_ramdisk 2023-09-04T18:21:19,699 copying funtoo_ramdisk/kernel.py -> build/lib/funtoo_ramdisk 2023-09-04T18:21:19,703 copying funtoo_ramdisk/version.py -> build/lib/funtoo_ramdisk 2023-09-04T18:21:19,706 copying funtoo_ramdisk/__init__.py -> build/lib/funtoo_ramdisk 2023-09-04T18:21:19,709 copying funtoo_ramdisk/log.py -> build/lib/funtoo_ramdisk 2023-09-04T18:21:19,713 copying funtoo_ramdisk/modules.py -> build/lib/funtoo_ramdisk 2023-09-04T18:21:19,717 copying funtoo_ramdisk/args.py -> build/lib/funtoo_ramdisk 2023-09-04T18:21:19,722 copying funtoo_ramdisk/utilities.py -> build/lib/funtoo_ramdisk 2023-09-04T18:21:19,726 copying funtoo_ramdisk/plugin_base.py -> build/lib/funtoo_ramdisk 2023-09-04T18:21:19,729 copying funtoo_ramdisk/const.py -> build/lib/funtoo_ramdisk 2023-09-04T18:21:19,733 copying funtoo_ramdisk/config_files.py -> build/lib/funtoo_ramdisk 2023-09-04T18:21:19,738 creating build/lib/funtoo_ramdisk/plugins 2023-09-04T18:21:19,740 copying funtoo_ramdisk/plugins/__init__.py -> build/lib/funtoo_ramdisk/plugins 2023-09-04T18:21:19,743 copying funtoo_ramdisk/plugins/lvm.py -> build/lib/funtoo_ramdisk/plugins 2023-09-04T18:21:19,747 copying funtoo_ramdisk/plugins/btrfs.py -> build/lib/funtoo_ramdisk/plugins 2023-09-04T18:21:19,751 copying funtoo_ramdisk/plugins/core.py -> build/lib/funtoo_ramdisk/plugins 2023-09-04T18:21:19,755 creating build/lib/funtoo_ramdisk/support 2023-09-04T18:21:19,757 copying funtoo_ramdisk/support/__init__.py -> build/lib/funtoo_ramdisk/support 2023-09-04T18:21:19,761 creating build/lib/funtoo_ramdisk/support/module_configs 2023-09-04T18:21:19,763 copying funtoo_ramdisk/support/module_configs/__init__.py -> build/lib/funtoo_ramdisk/support/module_configs 2023-09-04T18:21:19,767 creating build/lib/funtoo_ramdisk/support/module_configs/full 2023-09-04T18:21:19,769 copying funtoo_ramdisk/support/module_configs/full/__init__.py -> build/lib/funtoo_ramdisk/support/module_configs/full 2023-09-04T18:21:19,772 running egg_info 2023-09-04T18:21:20,018 writing funtoo_ramdisk.egg-info/PKG-INFO 2023-09-04T18:21:20,023 writing dependency_links to funtoo_ramdisk.egg-info/dependency_links.txt 2023-09-04T18:21:20,026 writing requirements to funtoo_ramdisk.egg-info/requires.txt 2023-09-04T18:21:20,029 writing top-level names to funtoo_ramdisk.egg-info/top_level.txt 2023-09-04T18:21:20,843 reading manifest file 'funtoo_ramdisk.egg-info/SOURCES.txt' 2023-09-04T18:21:20,849 reading manifest template 'MANIFEST.in' 2023-09-04T18:21:20,870 writing manifest file 'funtoo_ramdisk.egg-info/SOURCES.txt' 2023-09-04T18:21:20,876 /home/piwheels/.local/lib/python3.7/site-packages/setuptools/command/build_py.py:201: _Warning: Package 'funtoo_ramdisk.support.etc' is absent from the `packages` configuration. 2023-09-04T18:21:20,876 !! 2023-09-04T18:21:20,877 ******************************************************************************** 2023-09-04T18:21:20,877 ############################ 2023-09-04T18:21:20,878 # Package would be ignored # 2023-09-04T18:21:20,878 ############################ 2023-09-04T18:21:20,878 Python recognizes 'funtoo_ramdisk.support.etc' as an importable package[^1], 2023-09-04T18:21:20,879 but it is absent from setuptools' `packages` configuration. 2023-09-04T18:21:20,879 This leads to an ambiguous overall configuration. If you want to distribute this 2023-09-04T18:21:20,880 package, please make sure that 'funtoo_ramdisk.support.etc' is explicitly added 2023-09-04T18:21:20,880 to the `packages` configuration field. 2023-09-04T18:21:20,881 Alternatively, you can also rely on setuptools' discovery methods 2023-09-04T18:21:20,881 (for example by using `find_namespace_packages(...)`/`find_namespace:` 2023-09-04T18:21:20,881 instead of `find_packages(...)`/`find:`). 2023-09-04T18:21:20,882 You can read more about "package discovery" on setuptools documentation page: 2023-09-04T18:21:20,883 - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html 2023-09-04T18:21:20,883 If you don't want 'funtoo_ramdisk.support.etc' to be distributed and are 2023-09-04T18:21:20,884 already explicitly excluding 'funtoo_ramdisk.support.etc' via 2023-09-04T18:21:20,884 `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`, 2023-09-04T18:21:20,884 you can try to use `exclude_package_data`, or `include-package-data=False` in 2023-09-04T18:21:20,885 combination with a more fine grained `package-data` configuration. 2023-09-04T18:21:20,885 You can read more about "package data files" on setuptools documentation page: 2023-09-04T18:21:20,886 - https://setuptools.pypa.io/en/latest/userguide/datafiles.html 2023-09-04T18:21:20,887 [^1]: For Python, any directory (with suitable naming) can be imported, 2023-09-04T18:21:20,887 even if it does not contain any `.py` files. 2023-09-04T18:21:20,887 On the other hand, currently there is no concept of package data 2023-09-04T18:21:20,888 directory, all directories are treated like packages. 2023-09-04T18:21:20,888 ******************************************************************************** 2023-09-04T18:21:20,889 !! 2023-09-04T18:21:20,889 check.warn(importable) 2023-09-04T18:21:20,889 copying funtoo_ramdisk/support/initramfs.cpio -> build/lib/funtoo_ramdisk/support 2023-09-04T18:21:20,890 copying funtoo_ramdisk/support/linuxrc -> build/lib/funtoo_ramdisk/support 2023-09-04T18:21:20,890 creating build/lib/funtoo_ramdisk/support/etc 2023-09-04T18:21:20,892 copying funtoo_ramdisk/support/etc/initrd.defaults -> build/lib/funtoo_ramdisk/support/etc 2023-09-04T18:21:20,896 copying funtoo_ramdisk/support/etc/initrd.scripts -> build/lib/funtoo_ramdisk/support/etc 2023-09-04T18:21:20,901 copying funtoo_ramdisk/support/module_configs/full/modules.autoload -> build/lib/funtoo_ramdisk/support/module_configs/full 2023-09-04T18:21:20,905 copying funtoo_ramdisk/support/module_configs/full/modules.copy -> build/lib/funtoo_ramdisk/support/module_configs/full 2023-09-04T18:21:20,916 running build_scripts 2023-09-04T18:21:20,917 creating build/scripts-3.7 2023-09-04T18:21:20,919 copying and adjusting bin/ramdisk -> build/scripts-3.7 2023-09-04T18:21:20,921 changing mode of build/scripts-3.7/ramdisk from 644 to 755 2023-09-04T18:21:21,044 /home/piwheels/.local/lib/python3.7/site-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated. 2023-09-04T18:21:21,045 !! 2023-09-04T18:21:21,046 ******************************************************************************** 2023-09-04T18:21:21,046 Please avoid running ``setup.py`` directly. 2023-09-04T18:21:21,046 Instead, use pypa/build, pypa/installer, pypa/build or 2023-09-04T18:21:21,047 other standards-based tools. 2023-09-04T18:21:21,047 See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details. 2023-09-04T18:21:21,048 ******************************************************************************** 2023-09-04T18:21:21,048 !! 2023-09-04T18:21:21,048 self.initialize_options() 2023-09-04T18:21:21,161 installing to build/bdist.linux-armv7l/wheel 2023-09-04T18:21:21,161 running install 2023-09-04T18:21:21,222 running install_lib 2023-09-04T18:21:21,342 creating build/bdist.linux-armv7l 2023-09-04T18:21:21,343 creating build/bdist.linux-armv7l/wheel 2023-09-04T18:21:21,347 creating build/bdist.linux-armv7l/wheel/funtoo_ramdisk 2023-09-04T18:21:21,350 creating build/bdist.linux-armv7l/wheel/funtoo_ramdisk/plugins 2023-09-04T18:21:21,352 copying build/lib/funtoo_ramdisk/plugins/__init__.py -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk/plugins 2023-09-04T18:21:21,356 copying build/lib/funtoo_ramdisk/plugins/lvm.py -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk/plugins 2023-09-04T18:21:21,360 copying build/lib/funtoo_ramdisk/plugins/btrfs.py -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk/plugins 2023-09-04T18:21:21,364 copying build/lib/funtoo_ramdisk/plugins/core.py -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk/plugins 2023-09-04T18:21:21,368 copying build/lib/funtoo_ramdisk/initramfs.py -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk 2023-09-04T18:21:21,373 copying build/lib/funtoo_ramdisk/kernel.py -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk 2023-09-04T18:21:21,377 copying build/lib/funtoo_ramdisk/version.py -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk 2023-09-04T18:21:21,381 copying build/lib/funtoo_ramdisk/__init__.py -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk 2023-09-04T18:21:21,384 copying build/lib/funtoo_ramdisk/log.py -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk 2023-09-04T18:21:21,388 copying build/lib/funtoo_ramdisk/modules.py -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk 2023-09-04T18:21:21,393 copying build/lib/funtoo_ramdisk/args.py -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk 2023-09-04T18:21:21,397 copying build/lib/funtoo_ramdisk/utilities.py -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk 2023-09-04T18:21:21,402 creating build/bdist.linux-armv7l/wheel/funtoo_ramdisk/support 2023-09-04T18:21:21,404 copying build/lib/funtoo_ramdisk/support/initramfs.cpio -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk/support 2023-09-04T18:21:21,408 copying build/lib/funtoo_ramdisk/support/__init__.py -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk/support 2023-09-04T18:21:21,411 copying build/lib/funtoo_ramdisk/support/linuxrc -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk/support 2023-09-04T18:21:21,416 creating build/bdist.linux-armv7l/wheel/funtoo_ramdisk/support/module_configs 2023-09-04T18:21:21,418 copying build/lib/funtoo_ramdisk/support/module_configs/__init__.py -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk/support/module_configs 2023-09-04T18:21:21,423 creating build/bdist.linux-armv7l/wheel/funtoo_ramdisk/support/module_configs/full 2023-09-04T18:21:21,425 copying build/lib/funtoo_ramdisk/support/module_configs/full/__init__.py -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk/support/module_configs/full 2023-09-04T18:21:21,428 copying build/lib/funtoo_ramdisk/support/module_configs/full/modules.copy -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk/support/module_configs/full 2023-09-04T18:21:21,432 copying build/lib/funtoo_ramdisk/support/module_configs/full/modules.autoload -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk/support/module_configs/full 2023-09-04T18:21:21,437 creating build/bdist.linux-armv7l/wheel/funtoo_ramdisk/support/etc 2023-09-04T18:21:21,439 copying build/lib/funtoo_ramdisk/support/etc/initrd.scripts -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk/support/etc 2023-09-04T18:21:21,444 copying build/lib/funtoo_ramdisk/support/etc/initrd.defaults -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk/support/etc 2023-09-04T18:21:21,448 copying build/lib/funtoo_ramdisk/plugin_base.py -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk 2023-09-04T18:21:21,452 copying build/lib/funtoo_ramdisk/const.py -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk 2023-09-04T18:21:21,456 copying build/lib/funtoo_ramdisk/config_files.py -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk 2023-09-04T18:21:21,459 running install_egg_info 2023-09-04T18:21:21,586 Copying funtoo_ramdisk.egg-info to build/bdist.linux-armv7l/wheel/funtoo_ramdisk-1.1.1-py3.7.egg-info 2023-09-04T18:21:21,608 running install_scripts 2023-09-04T18:21:21,610 creating build/bdist.linux-armv7l/wheel/funtoo_ramdisk-1.1.1.data 2023-09-04T18:21:21,611 creating build/bdist.linux-armv7l/wheel/funtoo_ramdisk-1.1.1.data/scripts 2023-09-04T18:21:21,613 copying build/scripts-3.7/ramdisk -> build/bdist.linux-armv7l/wheel/funtoo_ramdisk-1.1.1.data/scripts 2023-09-04T18:21:21,617 changing mode of build/bdist.linux-armv7l/wheel/funtoo_ramdisk-1.1.1.data/scripts/ramdisk to 755 2023-09-04T18:21:21,646 creating build/bdist.linux-armv7l/wheel/funtoo_ramdisk-1.1.1.dist-info/WHEEL 2023-09-04T18:21:21,652 creating '/tmp/pip-wheel-ipmi7wb5/funtoo_ramdisk-1.1.1-py3-none-any.whl' and adding 'build/bdist.linux-armv7l/wheel' to it 2023-09-04T18:21:21,657 adding 'funtoo_ramdisk/__init__.py' 2023-09-04T18:21:21,661 adding 'funtoo_ramdisk/args.py' 2023-09-04T18:21:21,664 adding 'funtoo_ramdisk/config_files.py' 2023-09-04T18:21:21,666 adding 'funtoo_ramdisk/const.py' 2023-09-04T18:21:21,671 adding 'funtoo_ramdisk/initramfs.py' 2023-09-04T18:21:21,674 adding 'funtoo_ramdisk/kernel.py' 2023-09-04T18:21:21,677 adding 'funtoo_ramdisk/log.py' 2023-09-04T18:21:21,683 adding 'funtoo_ramdisk/modules.py' 2023-09-04T18:21:21,685 adding 'funtoo_ramdisk/plugin_base.py' 2023-09-04T18:21:21,688 adding 'funtoo_ramdisk/utilities.py' 2023-09-04T18:21:21,690 adding 'funtoo_ramdisk/version.py' 2023-09-04T18:21:21,694 adding 'funtoo_ramdisk/plugins/__init__.py' 2023-09-04T18:21:21,696 adding 'funtoo_ramdisk/plugins/btrfs.py' 2023-09-04T18:21:21,698 adding 'funtoo_ramdisk/plugins/core.py' 2023-09-04T18:21:21,701 adding 'funtoo_ramdisk/plugins/lvm.py' 2023-09-04T18:21:21,705 adding 'funtoo_ramdisk/support/__init__.py' 2023-09-04T18:21:21,707 adding 'funtoo_ramdisk/support/initramfs.cpio' 2023-09-04T18:21:21,710 adding 'funtoo_ramdisk/support/linuxrc' 2023-09-04T18:21:21,714 adding 'funtoo_ramdisk/support/etc/initrd.defaults' 2023-09-04T18:21:21,717 adding 'funtoo_ramdisk/support/etc/initrd.scripts' 2023-09-04T18:21:21,721 adding 'funtoo_ramdisk/support/module_configs/__init__.py' 2023-09-04T18:21:21,724 adding 'funtoo_ramdisk/support/module_configs/full/__init__.py' 2023-09-04T18:21:21,727 adding 'funtoo_ramdisk/support/module_configs/full/modules.autoload' 2023-09-04T18:21:21,729 adding 'funtoo_ramdisk/support/module_configs/full/modules.copy' 2023-09-04T18:21:21,734 adding 'funtoo_ramdisk-1.1.1.data/scripts/ramdisk' 2023-09-04T18:21:21,741 adding 'funtoo_ramdisk-1.1.1.dist-info/METADATA' 2023-09-04T18:21:21,744 adding 'funtoo_ramdisk-1.1.1.dist-info/WHEEL' 2023-09-04T18:21:21,745 adding 'funtoo_ramdisk-1.1.1.dist-info/top_level.txt' 2023-09-04T18:21:21,748 adding 'funtoo_ramdisk-1.1.1.dist-info/RECORD' 2023-09-04T18:21:21,752 removing build/bdist.linux-armv7l/wheel 2023-09-04T18:21:21,947 Building wheel for funtoo-ramdisk (setup.py): finished with status 'done' 2023-09-04T18:21:21,955 Created wheel for funtoo-ramdisk: filename=funtoo_ramdisk-1.1.1-py3-none-any.whl size=32474 sha256=ad2dcafb5a8dceeea14bdbede73669479db69fb3cca89c6392aa3c2e688b15c0 2023-09-04T18:21:21,957 Stored in directory: /tmp/pip-ephem-wheel-cache-9644seme/wheels/d9/d7/ab/c1d7e528877b75141f1558c3123ef2c304ecaf8e76ec6541e2 2023-09-04T18:21:21,987 Successfully built funtoo-ramdisk 2023-09-04T18:21:21,996 Removed build tracker: '/tmp/pip-build-tracker-nqqu3z99'