Install any Fedora package (dnf/bubblewrap)
Install any Fedora package (dnf/bubblewrap)
Here a method to access dnf packages wihout adding packages to OSTree (apart dnf).
$ sudo rpm-ostree install dnf $ cat /etc/dnf/dnf.conf [main] installroot=/var/lib/fedora use_host_config=True $ cat /usr/local/bin/bubblewrap #!/bin/bash cmd=$(basename "$0") if (( UID == 0 )) then /usr/bin/bwrap --ro-bind /var/lib/fedora / --bind /root /root --dev /dev --proc /proc --tmpfs /tmp --tmpfs /run --ro-bind /run/systemd/resolve /run/systemd/resolve $cmd $@ else /usr/bin/bwrap --ro-bind /var/lib/fedora / --bind /var/home /var/home --dev /dev --proc /proc --tmpfs /tmp --tmpfs /run --bind /run/user/$UID /run/user/$UID --ro-bind /run/systemd/resolve /run/systemd/resolve $cmd $@ $ cat /usr/local/bin/dnf #!/bin/bash trap "/usr/local/bin/build_dnf_cache.sh 2>/dev/null" EXIT /usr/bin/dnf $@ $ cat /usr/local/bin/build_dnf_cache.sh #!/bin/bash mkdir -p /usr/local/bwrap rm -f /usr/local/bwrap/* comm -23 <(ls /var/lib/fedora/usr/bin/) <(ls /usr/bin/) | while read command do ln -s /usr/local/bin/bubblewrap /usr/local/bwrap/$command done $ cat /etc/environment.d/path.conf PATH=/usr/local/bin:/usr/local/bwrap:/usr/local/sbin:/usr/bin:/usr/sbin
Now you can install fedora rootfs:
$ sudo /usr/local/bin/dnf -y group install core $ sudo reboot
And now
[~]$ sipcalc bash: sipcalc : command not found [~]$ sudo dnf install sipcalc Mise à jour et chargement des dépôts : Dépôts chargés. Paquet Architecture Version Dépôt Taille Installation de : sipcalc x86_64 1.1.6-28.fc42 fedora 66.4 KiB Résumé de la transaction : Installation : 1 paquet La taille totale des paquets entrants est de 39 KiB. Un téléchargement de 39 KiB est nécessaire. Après cette opération, 66 KiB supplémentaires seront utilisés (+66 KiB, -0 B). Is this ok [y/N]: y [1/1] sipcalc-0:1.1.6-28.fc42.x86_64 100% | 298.4 KiB/s | 38.8 KiB | 00m00s --------------------------------------------------------------------------------------------------------------------------------------------------------------- [1/1] Total 100% | 98.4 KiB/s | 38.8 KiB | 00m00s Exécution de la transaction [1/3] Vérifier les fichiers des paquets 100% | 500.0 B/s | 1.0 B | 00m00s [2/3] Préparer la transaction 100% | 17.0 B/s | 1.0 B | 00m00s [3/3] Installation de sipcalc-0:1.1.6-28.fc42.x86_64 100% | 239.9 KiB/s | 68.4 KiB | 00m00s Terminé ! [~]$ sipcalc Usage: sipcalc [OPTIONS]... <[ADDRESS]... [INTERFACE]... | [-]> Try 'sipcalc -h' for more information.
Bonus (manpages and bash-completion):
[~]$ cat /etc/systemd/system/var-usrlocal-share-man.mount [Unit] Description=Mount /var/usrlocal/share/man [Mount] What=/var/lib/fedora/usr/share/man Where=/var/usrlocal/share/man Type=none Options=bind [Install] WantedBy=multi-user.target [~]$ cat /etc/systemd/system/var-usrlocal-share-bash\\x2dcompletion.mount [Unit] Description=Mount /var/usrlocal/share/bash-completion [Mount] What=/var/lib/fedora/usr/share/bash-completion Where=/var/usrlocal/share/bash-completion Type=none Options=bind [Install] WantedBy=multi-user.target $ sudo systemctl enable --now "var-usrlocal-share-bash\\x2dcompletion.mount" var-usrlocal-share-man.mount