Test repo for the Atomic Desktops
Find a file
Timothée Ravier 0cb972a2c2 fedora-common-ostree: Remove unused 'ref'
We never directly compose this manifest. The minimal version of a
desktop less Atomic desktop is `fedora-base.yaml`.
2024-02-21 03:04:54 +01:00
ci Zuul: Add initial compose test (base only) 2024-02-09 18:36:17 +01:00
.gitignore gitignore: Add more paths to ignore 2024-02-11 12:50:08 +01:00
.zuul.yaml Zuul: Use Rawhide cloud small image until container is fixed 2024-02-21 03:04:54 +01:00
bootupd.yaml bootupd: Drop unnecessary / 2024-02-09 18:41:05 +01:00
budgie-desktop-pkgs.yaml budgie: add gedit and a couple useful nemo plugins 2023-08-28 14:03:24 +03:00
cinnamon-desktop-pkgs.yaml comps-sync f40 2023-09-26 2023-09-26 16:43:56 +02:00
comps-sync-exclude-list.yml lazurite: Remove kwin-x11 & sddm-x11 2023-12-11 18:13:46 +01:00
comps-sync.py Rawhide is now f41 2024-02-13 19:01:33 +00:00
deepin-desktop-pkgs.yaml comps-sync f39 2023-07-22 2023-07-22 10:42:56 -07:00
fedora-41-updates.repo Rawhide is now f41 2024-02-13 19:01:33 +00:00
fedora-41.repo Rawhide is now f41 2024-02-13 19:01:33 +00:00
fedora-base.yaml Revert: manifests: Move repos config to common manifest 2024-02-21 02:33:36 +01:00
fedora-cinnamon.yaml Revert: manifests: Move repos config to common manifest 2024-02-21 02:33:36 +01:00
fedora-common-ostree-pkgs.yaml comps-sync f40 2024-02-07 2024-02-07 08:29:49 -08:00
fedora-common-ostree.yaml fedora-common-ostree: Remove unused 'ref' 2024-02-21 03:04:54 +01:00
fedora-deepin.yaml Revert: manifests: Move repos config to common manifest 2024-02-21 02:33:36 +01:00
fedora-kinoite.yaml Revert: manifests: Move repos config to common manifest 2024-02-21 02:33:36 +01:00
fedora-lazurite.yaml Revert: manifests: Move repos config to common manifest 2024-02-21 02:33:36 +01:00
fedora-mate.yaml Revert: manifests: Move repos config to common manifest 2024-02-21 02:33:36 +01:00
fedora-onyx.yaml Revert: manifests: Move repos config to common manifest 2024-02-21 02:33:36 +01:00
fedora-rawhide.repo repo: Remove unused baseurl, explicitely set enabled & gpgpcheck 2022-02-16 18:45:56 +01:00
fedora-sericea.yaml Revert: manifests: Move repos config to common manifest 2024-02-21 02:33:36 +01:00
fedora-silverblue.yaml Revert: manifests: Move repos config to common manifest 2024-02-21 02:33:36 +01:00
fedora-vauxite.yaml Revert: manifests: Move repos config to common manifest 2024-02-21 02:33:36 +01:00
gnome-desktop-pkgs.yaml comps-sync f39 2023-07-22 2023-07-22 10:42:56 -07:00
group group: Fix tape & input GIDs 2022-11-10 17:01:09 +00:00
justfile justfile: global table for pretty names and volume ids 2024-02-17 14:55:59 -08:00
kde-desktop-pkgs.yaml comps-sync f40 2024-01-08 2024-01-08 12:12:52 +01:00
LICENSE LICENSE: Add MIT license text 2021-12-16 11:39:31 +01:00
lxqt-desktop-pkgs.yaml Use new base-graphical comps group for Wayland only desktops 2023-12-11 18:14:23 +01:00
mate-desktop-pkgs.yaml comps-sync f39 2023-07-22 2023-07-22 10:42:56 -07:00
passwd passwd: Fix (no)login shell paths 2022-11-10 17:01:09 +00:00
postprocess.sh common: Move sysroot RO script to postprocess-script 2022-08-19 21:46:21 +02:00
README.md Revert: manifests: Move repos config to common manifest 2024-02-21 02:33:36 +01:00
sway-desktop-pkgs.yaml Use new base-graphical comps group for Wayland only desktops 2023-12-11 18:14:23 +01:00
xfce-desktop-pkgs.yaml xfce: Add packages from xfce-extra-plugins comps group 2023-11-23 17:13:11 +01:00

Manifests for rpm-ostree based Fedora variants

This is the configuration needed to create rpm-ostree based variants of Fedora. Each variant is described in a YAML treefile which is then used by rpm-ostree to compose an ostree commit with the package requested.

In the Fedora infrastructure, this happens via pungi with Lorax (templates).

Fedora Silverblue

Fedora Kinoite

Building

Instructions to perform a local build of Silverblue:

# Clone the config
git clone https://pagure.io/workstation-ostree-config && cd workstation-ostree-config

# Prepare directories
mkdir -p repo cache
ostree --repo=repo init --mode=archive

# Build (compose) the variant of your choice
sudo rpm-ostree compose tree --repo=repo --cachedir=cache fedora-silverblue.yaml

# Update summary file
ostree summary --repo=repo --update

Testing

Instructions to test the resulting build:

  • First, serve the ostree repo using an HTTP server. You can use any static file server. For example using https://github.com/TheWaWaR/simple-http-server:

    simple-http-server --index --ip 192.168.122.1 --port 8000
    
  • Then, on an already installed Silverblue system:

# Add an ostree remote
sudo ostree remote add testremote http://192.168.122.1:8000/repo --no-gpg-verify

# Pin the currently deployed (and probably working) version
sudo ostree admin pin 0

# List refs from variant remote
sudo ostree remote refs testremote

# Switch to your variant
sudo rpm-ostree rebase testremote:fedora/rawhide/x86_64/silverblue

# Reboot and test!

Branching instructions for new Fedora releases

Follow those steps during the Fedora branch process in Fedora:

Fedora Ansible

Make a PR similar to ansible#1318 in fedora-infra/ansible.

On Rawhide / main branch

sed -i "s/41/42/g" *.repo comps-sync.py
sed -i "s/releasever: 41/releasever: 42/" fedora-common-ostree.yaml
sed -i "s/# - fedora-41/# - fedora-42/" fedora-*.yaml
mv fedora-41.repo fedora-42.repo
mv fedora-41-updates.repo fedora-42-updates.repo
sed -i "s/42/42/g" README.md
sed -i "s/41/42/g" README.md

On the new branch (f41)

rm fedora-rawhide.repo
sed -i "/- fedora-rawhide/d" fedora-*.yaml
sed -i "s/# - fedora-41/- fedora-41/" fedora-*.yaml
sed -i "s/ref: fedora\/rawhide/ref: fedora\/41/" fedora-*.yaml

Historical references

Building and testing instructions:

For some background, see:

Note also this repo obsoletes https://pagure.io/atomic-ws