nixos-config/nixos/machines/cream/configuration.nix

147 lines
3.5 KiB
Nix
Raw Normal View History

2023-11-07 16:47:53 +01:00
{ config, pkgs, lib, ... }:
{
2023-02-13 18:40:56 +01:00
imports = [
2023-12-22 20:28:52 +01:00
../../components
2024-03-03 10:52:46 +01:00
../../modules
2023-02-13 18:40:56 +01:00
./hardware-configuration.nix
2023-12-13 13:56:12 +01:00
2023-02-13 18:40:56 +01:00
./syncthing.nix
2023-06-10 18:34:54 +02:00
./tinc.nix
./tinc_retiolum.nix
2023-02-13 18:40:56 +01:00
2023-02-16 13:52:15 +01:00
./qemu.nix
2023-02-13 18:40:56 +01:00
./wireguard.nix
./borg.nix
2023-07-09 00:51:45 +02:00
2023-02-13 18:40:56 +01:00
];
2023-12-17 19:05:25 +01:00
sops.secrets.pushover_user_key = { };
sops.secrets.pushover_api_key = { };
# Use the systemd-boot EFI boot loader, not grub
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
boot.tmp.useTmpfs = true; # make /tmp a tmpfs (performance!)
2023-02-17 00:41:22 +01:00
components.gui.enable = true;
2024-05-04 10:02:43 +02:00
components.gui.xorg.enable = true;
components.gui.wayland.enable = false;
2023-08-25 11:33:25 +02:00
components.mainUser.enable = true;
components.media.enable = true;
2023-12-02 16:05:29 +01:00
components.media.tts-client.enable = false;
2023-06-01 11:38:39 +02:00
components.network.enable = true;
components.network.wifi.enable = true;
2023-08-25 11:33:25 +02:00
components.terminal.enable = true;
components.monitor.enable = true;
components.monitor.opentelemetry.exporter.endpoint = "10.100.0.1:4317"; # orbi
2023-11-10 16:26:59 +01:00
home-manager.users.mainUser.home.sessionPath = [ "$HOME/.timewarrior/scripts" ];
2023-11-07 16:47:53 +01:00
sops.secrets.yubikey_u2fAuthFile = { };
2023-11-07 16:47:53 +01:00
components.gui.taskwarrior.config = {
general = {
2023-11-10 11:03:20 +01:00
targets = [ "terranix" "my_github" ];
2023-11-07 16:47:53 +01:00
log_level = "INFO";
2023-11-10 16:26:59 +01:00
static_fields = [ "priority" ];
merge_annotations = false;
2023-11-07 16:47:53 +01:00
};
terranix = {
service = "github";
login = "mrVanDalo";
token = "@oracle:eval:${pkgs.pass}/bin/pass development/github/mrVanDalo/bugwarriorAccessToken";
username = "mrVanDalo";
default_priority = "";
description_template = "{{githubtitle}} {{githuburl}}";
add_tags = "github";
project_template = "terranix";
involved_issues = true;
query = "org:terranix is:open";
include_user_issues = false;
include_user_repos = false;
};
2023-11-10 11:03:20 +01:00
my_github = {
2023-11-07 16:47:53 +01:00
service = "github";
login = "mrVanDalo";
token = "@oracle:eval:${pkgs.pass}/bin/pass development/github/mrVanDalo/bugwarriorAccessToken";
username = "mrVanDalo";
description_template = "{{githubtitle}} {{githuburl}}";
add_tags = "github";
include_user_issues = true;
include_user_repos = true;
2023-11-10 11:03:20 +01:00
exclude_repos = [ "azubi" "csv-to-qif" "stepp0r" ];
2023-11-07 16:47:53 +01:00
};
2023-11-10 14:30:38 +01:00
# todo : add github issues
2023-11-07 16:47:53 +01:00
};
2023-08-25 11:33:25 +02:00
users.users.mainUser.extraGroups = [ "pipewire" ];
2023-02-17 00:41:22 +01:00
2023-02-13 18:40:56 +01:00
services.nginx.enable = true;
networking.hostName = "cream";
2023-12-08 21:27:52 +01:00
#services.flatpak.enable = true;
2023-05-11 10:35:26 +02:00
# make sure battery is charged in a way to live for a long time
services.power-profiles-daemon.enable = false;
services.tlp = {
enable = true;
settings = {
CPU_BOOST_ON_BAT = 0;
CPU_SCALING_GOVERNOR_ON_BATTERY = "powersave";
START_CHARGE_THRESH_BAT0 = 30;
STOP_CHARGE_THRESH_BAT0 = 85;
RUNTIME_PM_ON_BAT = "auto";
};
};
2023-02-13 18:40:56 +01:00
security.wrappers = {
pmount = {
source = "${pkgs.pmount}/bin/pmount";
setuid = true;
owner = "root";
group = "root";
};
pumount = {
source = "${pkgs.pmount}/bin/pumount";
setuid = true;
owner = "root";
group = "root";
};
};
services.printing.enable = true;
virtualisation = {
docker.enable = true;
podman.enable = true;
virtualbox = {
host.enable = false;
guest.x11 = false;
guest.enable = false;
};
};
2024-03-03 09:59:17 +01:00
samba-share = {
2023-02-13 18:40:56 +01:00
enable = false;
folders = {
share = "/home/share";
video = "/home/video-material";
};
};
# for congress and streaming
hardware.opengl = {
2023-02-17 11:45:09 +01:00
enable = true;
2023-02-13 18:40:56 +01:00
};
2023-02-17 11:45:09 +01:00
system.stateVersion = "22.11";
2023-02-13 18:40:56 +01:00
}