Commit graph

189 commits

Author SHA1 Message Date
Hendrik Sokolowski b0765db925
Improve core module
* Drop unsued iwdConfig option
* Add flag to enable caddy (default !lite)
* Add flag to enable vhost in caddy for help (default !lite)
* Add flag to enable vhost in caddy for cups (default printing.enable)
* Set defaults instead of a hard value to have individual options
  overridable
2022-09-29 21:42:30 +02:00
teutat3s 1767dcb076
Fix swayidle service
- add missing \
- reference swaylock-bg script from pkgs
2022-09-01 14:38:10 +02:00
teutat3s c1b672fe70
Fix conflicting definition values, force use of
our defined value.

error: The option 'services.getty.autologinUser' has conflicting definition values:
       - In '/nix/store/zyh8f18z0m1r9jppvdcdivfvfxg0j3fv-source/nixos/modules/profiles/installation-device.nix': "nixos"
       - In '/nix/store/w82qigr5jqv9c6jhdrpdwixydk3rmbzw-source/modules/graphical': "pub-solar"
2022-08-29 11:55:20 +02:00
Benjamin Bädorf 8fc8ac2d58
Fix service startup for ci-runner 2022-08-25 15:25:34 +02:00
Benjamin Bädorf a643701e49
Merge branch 'main' into feature/ci-runner-onecommit 2022-08-25 13:20:52 +00:00
Benjamin Bädorf b16299965c
Merge pull request 'Fix hibernation' (#120) from fix/hibernation into main
Reviewed-on: https://git.b12f.io/pub-solar/os/pulls/120
Reviewed-by: hensoko <hensoko@noreply.example.org>
2022-08-25 09:58:20 +00:00
Benjamin Bädorf 6d1d683b23
Fix swayidle command, add hibernation on lid close, fix env
The swayidle command in the service was straight up broken, this commit
fixes that.

Environment Variables set in the `session-variables` file are now
correctly imported across the system. This fixes `EDITOR` defaulting to
`nano`.
2022-08-25 00:13:23 +02:00
Benjamin Bädorf 40799ed5b6
Merge pull request 'feature/pin-zsh-plugins-to-deterministic-versions' (#123) from feature/pin-zsh-plugins-to-deterministic-versions into main
Reviewed-on: https://git.b12f.io/pub-solar/os/pulls/123
Reviewed-by: Benjamin Bädorf <hello@benjaminbaedorf.eu>
2022-08-24 22:05:08 +00:00
teutat3s de03f0f42f
zsh: correctly pin plugins to commits instead of
branch names, to prevent errors like:
error: hash mismatch in fixed-output derivation '/nix/store/n7w9jd46zx4rzy9a24abxv3lcx1ikn1j-source.drv':
         specified: sha256-0pzkKPdzyQXTe8usaSaM1Iivi2UHQrSJrh5V2pRd0Gg=
            got:    sha256-9vc4cMBCNOmPOyzGwnPeMrXXyQUq4pC9Du3AWl9+Rys=
2022-08-24 23:19:18 +02:00
teutat3s f7eda8ca1c
zsh: bundle plugins within our config 2022-08-24 23:19:13 +02:00
hensoko ad0402fd93
Merge pull request 'Disable NetworkManager-wait-online system service' (#121) from feature/disable-networkmanager-wait-online into main
Reviewed-on: https://git.b12f.io/pub-solar/os/pulls/121
Reviewed-by: Benjamin Bädorf <hello@benjaminbaedorf.eu>
2022-08-24 20:50:45 +00:00
Hendrik Sokolowski 8efc4c2f9e
Use iwd as wifi backend
iwd is a lightweight wireless connection backend that was initiated by
developers of intel. It is supposed to be faster.
2022-08-24 21:49:59 +02:00
Hendrik Sokolowski 57f608ecde
Disable NetworkManager-wait-online system service
This service is presumably useful for devices that need to ensure there
is an active internet connection before starting other systemd units.
This is neither the case for end-user devices as the an active internet
connection is only needed after login nor the case for server-like
systems as they normally have a static / dhcp-based network configuration
which does not require switchable network configuration profiles.
2022-08-24 21:47:58 +02:00
Benjamin Bädorf dc8257f31f
Fix hibernation
The resumeDevice and kernel `resume` parameter were being used wrong.

Only `boot.resumeDevice` is necessary, and it should point at the _block
device_ that holds the swapfile. If you are running on encrypted
volumes, this means you will need to use the name of the *decrypted
block device* on which the swapfile sits.
2022-08-24 18:46:35 +02:00
teutat3s c63c3da345
nix: set nix.package to force overlays/
overrides.nix to apply

use nix as default version alias in devshell as well
2022-08-24 00:55:57 +02:00
Benjamin Bädorf 9c5bcc6a2f
Merge branch 'main' into feature/ci-runner-onecommit 2022-08-14 22:17:19 +02:00
Benjamin Bädorf 14ba701061
Don't use libvirt in ci-runner 2022-08-14 20:28:18 +02:00
Benjamin Bädorf c5362c0453
Fix path in drone runner exec 2022-08-14 20:25:43 +02:00
Benjamin Bädorf f9b7c9e3c9
Fix build 2022-08-14 20:09:38 +02:00
Benjamin Bädorf 46992c46d6
Add parameter for swapfile offset 2022-08-14 19:59:01 +02:00
Benjamin Bädorf ba6dfdcf53
Fix sway mode_system config import 2022-08-14 19:48:45 +02:00
Benjamin Bädorf 963212893e
Merge branch 'main' into feat/hibernate-always 2022-08-14 19:15:25 +02:00
Benjamin Bädorf aabe96a335
Fix hibernation config 2022-08-14 18:11:25 +02:00
Benjamin Bädorf 043178172b
Improve help and screen recording keybindings in sway
This commit shuffles around some sway keybindings and improves the
screen recording experience by adding a small wrapper around `slurp` and
`wf-recorder` conveniently called `record-screen`.

* `$mod+F5` now reload the sway configuration,
* `$mod+Ctrl+r` starts a screen recording (to stop it, go to workspace 7
  and kill the process),
* `record-screen` and the firefox sharing indicator are both on
  workspace 7 now, making it the "trash" workspace,
* `$mod+F1` and `$mod+Shift+h` now open Firefox with the docs of our
repository availabe under `help.local`.
* To not infuriate `qMasterPassword` users, that is now available under
`$mod+Shift+m` instead of `$mod+F1`.
2022-08-14 18:03:32 +02:00
Benjamin Bädorf 26803ccf4f
Merge branch 'feat/hibernate-always' of git.b12f.io:pub-solar/os into feat/hibernate-always 2022-08-14 17:20:14 +02:00
Benjamin Bädorf ca4262b84f
Fix hibernation enabling in paranoia mode 2022-08-14 17:20:09 +02:00
Benjamin Bädorf 63435d6e59
Merge branch 'main' into feature/ci-runner-onecommit 2022-08-14 15:18:58 +00:00
Benjamin Bädorf 932bd05c41
Merge branch 'main' into feat/hibernate-always 2022-08-14 15:18:01 +00:00
hensoko cb5c75b1cc
feature/terminal-life-lite-mode (#117)
Reviewed-on: https://git.b12f.io/pub-solar/os/pulls/117
Reviewed-by: Benjamin Bädorf <hello@benjaminbaedorf.eu>
2022-08-14 15:17:35 +00:00
Benjamin Bädorf 762e78677b
Fix hibernation enabling in paranoia mode 2022-08-14 17:15:50 +02:00
Benjamin Bädorf 4c0991c7e1
Put always hibernate behind a flag
Hibernation is now a core option:
```
pub-solar.core.hibernation.enable = true;
```

And there's a paranoia mode, that keeps the disk encrypted as much as
possible by enabling hibernation and removing the options for sleep,
screen locking.

Idle locking now hibernates, and it does it on very short notice.
2022-08-14 17:10:30 +02:00
teutat3s c400f58ce8
Merge branch 'main' into feature/ci-runner-onecommit 2022-08-14 16:33:57 +02:00
Benjamin Bädorf d3d4c6f498
Merge remote-tracking branch 'origin/main' into feat/hibernate-always 2022-08-14 16:28:59 +02:00
teutat3s 5dd0a5badb
Merge branch 'main' into fix/set-nix-dram-default 2022-08-14 15:54:51 +02:00
hensoko c43b96c4d5 Fix core module (#116)
Co-authored-by: Hendrik Sokolowski <hensoko@gssws.de>
Reviewed-on: https://git.b12f.io/pub-solar/os/pulls/116
Reviewed-by: teutat3s <teutates@mailbox.org>
2022-08-14 13:54:19 +00:00
Benjamin Bädorf 98a537d287
Merge branch 'main' into feat/hibernate-always 2022-08-14 15:27:01 +02:00
teutat3s 71a47f35b4
Merge branch 'main' into fix/set-nix-dram-default 2022-08-14 15:18:55 +02:00
Benjamin Bädorf e436443bd2 Merge pull request 'Rework of x-os module / core profile' (#115) from feature/integrate-core-profile-into-x-os-and-rename-x-os-to-core into main
Reviewed-on: https://git.b12f.io/pub-solar/os/pulls/115
Reviewed-by: Benjamin Bädorf <b12f@noreply.example.org>
2022-08-14 13:13:27 +00:00
teutat3s bf581d1e9c
nix-dram: remove nix-dram as default nix binary
nix-dram as default nix binary isn't worth the
maintenance work anymore, CI builds started
failing because of it:
https://ci.b12f.io/pub-solar/os/533/1/2

Automatic builds still happen each night and can be
checked in our fork of nix-dram:
https://github.com/pub-solar/nix-dram/actions

Users of nix-dram can continue to use it via devshells
or nix run github:dramforever/nix-dram -- --version
2022-08-14 15:12:23 +02:00
Hendrik Sokolowski 7785744d73 Move some packages from full to default set, move options for modules to
default.nix
2022-08-14 15:11:01 +02:00
Benjamin Bädorf e3bfdc71fc
Merge branch 'main' into feat/hibernate-always 2022-08-14 15:05:32 +02:00
Hendrik Sokolowski 4190818304 Rework of x-os module / core profile
* move core settings to x-os
* add option to only install a lite core
* rename x-os module to core
* remove core profile from flake.nix
2022-08-14 14:47:44 +02:00
Benjamin Bädorf be016c44fb Merge pull request 'Remove nonfree software' (#113) from feat/fucking-free into main
Reviewed-on: https://git.b12f.io/pub-solar/os/pulls/113
Reviewed-by: teutat3s <teutates@mailbox.org>
2022-08-14 12:47:32 +00:00
Benjamin Bädorf 552b2ee53e
Remove nonfree software
This commit removes the default, global `allowUnfree = true;` setting
and removes nonfree packages where I could find them. Tested by building
the `PubSolarOS` host once.
2022-08-14 14:15:02 +02:00
hensoko 18e9b4a009 feature/restructure-core-profile (#109)
Co-authored-by: Hendrik Sokolowski <hensoko@gssws.de>
Reviewed-on: https://git.b12f.io/pub-solar/os/pulls/109
Reviewed-by: Benjamin Bädorf <b12f@noreply.example.org>
Reviewed-by: teutat3s <teutates@mailbox.org>
2022-08-13 20:35:43 +00:00
Benjamin Bädorf e3d76f1999
Move ci-runner to user and add git, virsh and nix to path 2022-08-13 22:31:30 +02:00
Benjamin Bädorf 0b229a771e
Barebones ci-runner module
This adds a barebones CI-runner module with the following option:

`pub-solar.ci-runner.enable`

If enabled, this will start a systemd service on boot that runs
`drone-runner-exec`. The configuration expects you to have a file called
`secrets/drone-runner-exec-config` handled by agenix that gets put into
`/run/agenix/drone-runner-exec-config` and is owned by root.

This file should contain a configuration similar to the following:

```
CLIENT_DRONE_RPC_PROTO=https
CLIENT_DRONE_RPC_HOST=drone.company.com
CLIENT_DRONE_RPC_SECRET=super-duper-secret
```
2022-08-13 22:08:02 +02:00
teutat3s e11c91f86e
Merge branch 'main' into fix/neovim-cherry-picks 2022-08-13 17:35:16 +02:00
Benjamin Bädorf 93aaab2685
Make cryptroot optional 2022-08-13 12:32:37 +02:00
Benjamin Bädorf 9375fc4aae Merge pull request 'Add denols to nvim' (#88) from feature/denols into main
Reviewed-on: https://git.b12f.io/pub-solar/os/pulls/88
2022-08-12 22:45:13 +00:00