Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/martinpitt/ostree-pitti-workstation
Fedora minimal sway developer desktop OSTree
https://github.com/martinpitt/ostree-pitti-workstation
Last synced: 2 days ago
JSON representation
Fedora minimal sway developer desktop OSTree
- Host: GitHub
- URL: https://github.com/martinpitt/ostree-pitti-workstation
- Owner: martinpitt
- License: mit
- Created: 2020-12-12T18:31:28.000Z (almost 4 years ago)
- Default Branch: pitti-desktop-f40
- Last Pushed: 2024-08-29T05:20:50.000Z (2 months ago)
- Last Synced: 2024-11-04T11:38:49.982Z (4 days ago)
- Language: Just
- Size: 364 KB
- Stars: 77
- Watchers: 13
- Forks: 12
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome_atomic - ostree-pitti-workstation - Fedora minimal sway developer desktop (Configs from the Community)
README
Martin Pitt's desktop
=====================This is an [rpm-ostree](https://coreos.github.io/rpm-ostree/) based minimal
[Fedora](https://getfedora.org/) developer desktop with the [sway window manager](https://swaywm.org/) and [podman](https://podman.io/)/[toolbox](https://docs.fedoraproject.org/en-US/fedora-silverblue/toolbox/) for doing development and running less common graphical applications.It gets [automatically built](.github/workflows/build.yml) every week and [published as container image](https://github.com/martinpitt/ostree-pitti-workstation/pkgs/container/workstation-ostree-config), for using with [ostree native containers](https://coreos.github.io/rpm-ostree/container/).
To use it from an existing OSTree based system like [Fedora CoreOS](https://getfedora.org/coreos) or [Fedora Silverblue](https://docs.fedoraproject.org/en-US/fedora-silverblue/), rebase your tree to it:
```sh
sudo rpm-ostree rebase ostree-unverified-registry:ghcr.io/martinpitt/workstation-ostree-config
```After that, you can install weekly updates with
```
sudo rpm-ostree upgrade
```If anything goes wrong, you can go back to the previous version with `sudo rpm-ostree rollback`.
Login
-----There is no graphical login manager. I log in on VT1, and my `.bashrc`
automatically starts the GNOME SSH agent and sway:```sh
if [ "$(tty)" = "/dev/tty1" ]; then
export `gnome-keyring-daemon --start --components=ssh`
export BROWSER=firefox-wayland
export XDG_CURRENT_DESKTOP=sway
exec sway > $XDG_RUNTIME_DIR/sway.log 2>&1
fi
```Original README for [workstation-ostree-config](https://pagure.io/workstation-ostree-config)
=============================================
# Manifests for rpm-ostree based Fedora variantsThis is the configuration needed to create
[rpm-ostree](https://coreos.github.io/rpm-ostree/) based variants of Fedora.
Each variant is described in a YAML
[treefile](https://coreos.github.io/rpm-ostree/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](https://pagure.io/pungi-fedora) with
[Lorax](https://github.com/weldr/lorax)
([templates](https://pagure.io/fedora-lorax-templates)).## Fedora Silverblue
- Website: https://silverblue.fedoraproject.org/ ([sources](https://github.com/fedora-silverblue/silverblue-site))
- Documentation: https://docs.fedoraproject.org/en-US/fedora-silverblue/ ([sources](https://github.com/fedora-silverblue/silverblue-docs))
- Issue tracker: https://github.com/fedora-silverblue/issue-tracker/issues## Fedora Kinoite
- Website: https://kinoite.fedoraproject.org/ ([sources](https://pagure.io/fedora-kde/kinoite-site))
- Documentation: https://docs.fedoraproject.org/en-US/fedora-kinoite/ ([sources](https://pagure.io/fedora-kde/kinoite-docs))
- Issue tracker: https://pagure.io/fedora-kde/SIG/issues## 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 :
```
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](https://pagure.io/fedora-infra/ansible/pull-request/1318) in
[fedora-infra/ansible](https://pagure.io/fedora-infra/ansible).### On Rawhide / main branch
```
sed -i "s/40/41/g" *.repo *.yaml comps-sync.py
mv fedora-40.repo fedora-41.repo
mv fedora-40-updates.repo fedora-41-updates.repo
sed -i "s/41/42/g" README.md
sed -i "s/40/41/g" README.md
```### On the new branch (f40)
```
rm fedora-rawhide.repo
sed -i "/- fedora-rawhide/d" *.yaml
sed -i "s/# - fedora-40/- fedora-40/" *.yaml
sed -i "s/ref: fedora\/rawhide/ref: fedora\/40/" *.yaml
```## Historical references
Building and testing instructions:
- https://dustymabe.com/2017/10/05/setting-up-an-atomic-host-build-server/
- https://dustymabe.com/2017/08/08/how-do-we-create-ostree-repos-and-artifacts-in-fedora/
- https://www.projectatomic.io/blog/2017/12/compose-custom-ostree/
- https://www.projectatomic.io/docs/compose-your-own-tree/For some background, see:
-
-
-
-Note also this repo obsoletes https://pagure.io/atomic-ws