index — robonix @ b5af5093b96d7d7fa52a61be8888eb56d7f8c62f

Nix config for the Robotik AG at the Johannes-Kepler-Gymnasium Chemnitz

configuration.nix (view raw)

 1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
{ config, pkgs, inputs, ... }:

{
  imports =
    [
      ./hardware-configuration.nix
      ./modules/packages.nix
      ./modules/wireguard.nix
    ];

  boot.loader.systemd-boot.enable = true;
  boot.loader.efi.canTouchEfiVariables = true;

  boot.kernelPackages = pkgs.linuxPackages_latest;

  networking.hostName = "minnie";

  networking.networkmanager.enable = true;

  time.timeZone = "Europe/Berlin";

  i18n.defaultLocale = "en_US.UTF-8";

  i18n.extraLocaleSettings = {
    LC_ADDRESS = "de_DE.UTF-8";
    LC_IDENTIFICATION = "de_DE.UTF-8";
    LC_MEASUREMENT = "de_DE.UTF-8";
    LC_MONETARY = "de_DE.UTF-8";
    LC_NAME = "de_DE.UTF-8";
    LC_NUMERIC = "de_DE.UTF-8";
    LC_PAPER = "de_DE.UTF-8";
    LC_TELEPHONE = "de_DE.UTF-8";
    LC_TIME = "de_DE.UTF-8";
  };

  services.xserver.xkb = {
    layout = "de";
  };

  console.keyMap = "de";

  users.users.roboag = {
    isNormalUser = true;
    initialPassword = "roboag";
    extraGroups = [ "networkmanager" ];
    packages = with pkgs; [];
  };

  users.extraUsers.roboag = {
    shell = pkgs.fish;
  };

  programs.hyprland = {
    enable = true;
    xwayland.enable = true;
  };

  services.desktopManager.plasma6.enable = true;
  #services.xserver.enable = true;

  programs.fish.enable = true;

  nix.settings.experimental-features = ["nix-command" "flakes"];
  nixpkgs.config.allowUnsupportedSystem = true;

   programs.gnupg.agent = {
     enable = true;
     enableSSHSupport = true;
   };

  services.openssh = {
    enable = true;
    settings.PermitRootLogin = "yes";
  };

  services.greetd = {
    enable = true;
    settings = {
      default_session = {
        user = "roboag";
	command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time --cmd start-hyprland";
      };
    };
  };

  services.pipewire = {
    enable = true;
    alsa.enable = true;
    pulse.enable = true;
  };

  networking.firewall.allowedTCPPorts = [ 22 ];
  networking.firewall.enable = true;

  system.stateVersion = "25.11";

}