Silverblue: Difference between revisions

From Halfface
Jump to navigation Jump to search
 
(28 intermediate revisions by the same user not shown)
Line 1: Line 1:
Fedora Silverblue's immutable design.
Fedora Silverblue's immutable design.
=make rpm available strait away=
=ostree=
  rpm-ostree install --apply-live <rpm>
 
=remove rpm=
=Basic Commands=
  rpm-ostree uninstall <rpm>
==Update to latest==
rpm-ostree upgrade
==Get system status. Installed rpm:s are defined as LayeredPackages==
rpm-ostree status
==Find available updates==
rpm-ostree upgrade --check
==Find suitable repository.==
ostree remote refs fedora | grep silverblue | grep x86_64
==Set repository. Switch os. Upgrade/downgrade==
rpm-ostree rebase fedora:fedora/rawhide/x86_64/silverblue
rpm-ostree rebase fedora:fedora/41/x86_64/silverblue
 
==Replace==
rpm-ostree override remove nfs-utils-coreos --install nfs-utils
==list installed rpm-ostree installed packages==
rpm-ostree status --json | jq -r '.deployments[]|select(.booted==true)|"packages: " + ( .packages | join(" ") ),"removal: " + ( ."requested-base-removals" | join(" ") ),"localpackages: " + ( ."requested-local-packages" | join(" ") )'
 
==add repo==
sudo curl https://copr.fedorainfracloud.org/coprs/ojab/openvpn3/repo/fedora-40/ojab-openvpn3-fedora-40.repo -o /etc/yum.repos.d/openvpn3.repo
==add repo via dnf copr enable==
toolbox create
toolbox enter
dnf copr enable -y dsommers/openvpn3-devsnapshots
copy file under /etc/yum.repos.d/
Example
<pre>
cat > /etc/yum.repos.d/_copr:copr.fedorainfracloud.org:dsommers:openvpn3-devsnapshots.repo << 'EOF'
[copr:copr.fedorainfracloud.org:dsommers:openvpn3-devsnapshots]
name=Copr repo for openvpn3-devsnapshots owned by dsommers
baseurl=https://download.copr.fedorainfracloud.org/results/dsommers/openvpn3-devsnapshots/fedora-$releasever-$basearch/
type=rpm-md
skip_if_unavailable=True
gpgcheck=1
gpgkey=https://download.copr.fedorainfracloud.org/results/dsommers/openvpn3-devsnapshots/pubkey.gpg
repo_gpgcheck=0
enabled=1
enabled_metadata=1
EOF
</pre>
 
=Remotes=
==Add a remote==
ostree remote add <REMOTE> <URL>
==Remove a remote==
ostree remote delete <REMOTE>
==List configured remotes==
ostree remote list
==List remote contents==
ostree remote refs <REMOTE>
 
==Layered Packages==
Uninstall a layered package
rpm-ostree uninstall <PACKAGE>
Install a layered package
rpm-ostree install <PACKAGE>
Install without reboot
  rpm-ostree install --apply-live <packages>
 
=Debugging and Rollback=
==Remove the previous deployment==
rpm-ostree cleanup --rollback
==Download older commits==
ostree pull --commit-metadata-only --depth=<n> <REMOTE> <BRANCH>
==Make the previous deployment the default boot entry==
  rpm-ostree rollback
==List downloaded commits==
ostree log <REMOTE>:<BRANCH>


=Replace rpm=
=Replace rpm=
  rpm-ostree override replace <path to package>
  rpm-ostree override replace <path to package>
=Remove rpm=
rpm-ostree override remove <rpm>
=ostree-remote - Control remote repository configuration=
Find suitable repository.
ostree remote refs fedora | grep silverblue | grep x86_64
Set repository. Update
rpm-ostree rebase fedora:fedora/rawhide/x86_64/silverblue
=Display the status of the currently running deployment=
rpm-ostree status
=pin a deployment so that you do not lose it=
=pin a deployment so that you do not lose it=
  ostree admin pin 0
  ostree admin pin 0
Unpin
ostree admin pin --unpin 0

Latest revision as of 12:55, 11 November 2024

Fedora Silverblue's immutable design.

ostree

Basic Commands

Update to latest

rpm-ostree upgrade

Get system status. Installed rpm:s are defined as LayeredPackages

rpm-ostree status

Find available updates

rpm-ostree upgrade --check

Find suitable repository.

ostree remote refs fedora | grep silverblue | grep x86_64

Set repository. Switch os. Upgrade/downgrade

rpm-ostree rebase fedora:fedora/rawhide/x86_64/silverblue
rpm-ostree rebase fedora:fedora/41/x86_64/silverblue

Replace

rpm-ostree override remove nfs-utils-coreos --install nfs-utils

list installed rpm-ostree installed packages

rpm-ostree status --json | jq -r '.deployments[]|select(.booted==true)|"packages: " + ( .packages | join(" ") ),"removal: " + ( ."requested-base-removals" | join(" ") ),"localpackages: " + ( ."requested-local-packages" | join(" ") )'

add repo

sudo curl https://copr.fedorainfracloud.org/coprs/ojab/openvpn3/repo/fedora-40/ojab-openvpn3-fedora-40.repo -o /etc/yum.repos.d/openvpn3.repo

add repo via dnf copr enable

toolbox create
toolbox enter
dnf copr enable -y dsommers/openvpn3-devsnapshots
copy file under /etc/yum.repos.d/

Example

cat > /etc/yum.repos.d/_copr:copr.fedorainfracloud.org:dsommers:openvpn3-devsnapshots.repo << 'EOF'
[copr:copr.fedorainfracloud.org:dsommers:openvpn3-devsnapshots]
name=Copr repo for openvpn3-devsnapshots owned by dsommers
baseurl=https://download.copr.fedorainfracloud.org/results/dsommers/openvpn3-devsnapshots/fedora-$releasever-$basearch/
type=rpm-md
skip_if_unavailable=True
gpgcheck=1
gpgkey=https://download.copr.fedorainfracloud.org/results/dsommers/openvpn3-devsnapshots/pubkey.gpg
repo_gpgcheck=0
enabled=1
enabled_metadata=1
EOF

Remotes

Add a remote

ostree remote add <REMOTE> <URL>

Remove a remote

ostree remote delete <REMOTE>

List configured remotes

ostree remote list

List remote contents

ostree remote refs <REMOTE>

Layered Packages

Uninstall a layered package

rpm-ostree uninstall <PACKAGE>

Install a layered package

rpm-ostree install <PACKAGE>

Install without reboot

rpm-ostree install --apply-live <packages>

Debugging and Rollback

Remove the previous deployment

rpm-ostree cleanup --rollback

Download older commits

ostree pull --commit-metadata-only --depth=<n> <REMOTE> <BRANCH>

Make the previous deployment the default boot entry

rpm-ostree rollback

List downloaded commits

ostree log <REMOTE>:<BRANCH>

Replace rpm

rpm-ostree override replace <path to package>

pin a deployment so that you do not lose it

ostree admin pin 0

Unpin

ostree admin pin --unpin 0