os/README.md

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

47 lines
2.6 KiB
Markdown
Raw Permalink Normal View History

2022-08-14 12:14:17 +00:00
# PubSolarOS
Welcome to PubSolarOS, a very opiniated Linux (NixOS) distribution for the nerdy.
We're creating this distribution for our own personal use and fun, but
take pride in our craft. As of 14.08.22 it's running on 14 physical devices,
2022-08-14 12:40:44 +00:00
both `x86_64` and `aarch64`.
2022-08-14 12:14:17 +00:00
At its core, it's a NixOS installation running our configuration. The UX
decisions and the way the project is structured are what make it
_PubSolarOS_:
- Reproducibility is king, and the future is with declarative and functional
programming. Even if Nix does not turn out to be the end-all-be-all of
reproducible package management (Guix looks good), it has a plethora
of packages, a very active and helpful community, and very solid
software engineering practices.
- Because reproducibility is king, we're using nix flakes for locking flake
dependencies. [Digga](https://github.com/divnix/digga) is our flake
utility library, made by the wonderful people of the Divnix community.
- Physical devices are not shared anymore nowadays. Only seldomly will you
find shared devices that need more than one user account. For this
reason, only one user (excluding `root`) is assumed.
- Keyboard navigation wins where it matters; ergonomics, programmability,
efficiency, and speed. We use a tiling window manager (`sway`) and
prioritize cli-based solutions where sensible. The editor is `neovim`
configured to be just as opiniated as the operating system it is a part
of. For mailing, `neomutt` is the default, but we're more divided on
that part.
- We like new and shiny things, so we've moved to Wayland and pipewire.
- SICHERHEIT is written in capital letters at pub.solar, so we have first-
class disk-encryption support. Currently in the works is a paranoid
mode where the device can only hibernate (no more sleep or lockscreen)
so your data is locked any time you leave the device.
- Free software is better. If we can avoid it, nonfree software is avoided.
By default, `allowUnfree` is `false` so we don't ship non-free software
in a basic PubSolarOS ISO. However, nothing prevents you from using
as much non-free software as you like.
- Automation is better. The reproducibility of nix feels so much more
powerful once you're deploying your new configuration from your laptop
2022-08-14 12:41:20 +00:00
to all your other devices with one command. [We have an automated CI using drone](https://ci.b12f.io/pub-solar/os).
2022-08-14 12:14:17 +00:00
- Community is important. We just like working on this together, and it
feels really good to see our progress at the end of a
[hakken.irl](https://pub.solar/hakken) session.
To get started, take a look at the quick start guide in our docs.