about summary refs log tree commit diff
path: root/machines/labnet/labtops.nix
blob: 0571476eef207eb050a6e1fa1d549dbddba3f439 (plain) (blame)
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
{
  labtop = {
    vuizvui.user.openlab.labtops.enable = true;
    boot.kernelModules = [ "kvm-intel" ];
    boot.initrd.availableKernelModules = [
      "uhci_hcd" "ehci_pci" "ata_piix" "firewire_ohci" "usb_storage"
    ];

    vuizvui.hardware.thinkpad.enable = true;

    hardware.trackpoint.enable = false;

    networking.enableIntel3945ABGFirmware = true;

  };

  hannswurscht = { pkgs, ... }:
    let musicDir = "/data/music"; in
  {
    vuizvui.user.openlab.base.enable = true;

    nixpkgs.system = "i686-linux";

    users.users.openlab.extraGroups = [ "audio" ];
    services.mingetty.autologinUser = "openlab";

    hardware.pulseaudio = {
      enable = true;
      systemWide = true;
      package = pkgs.pulseaudioFull;
      zeroconf.discovery.enable = false;
      zeroconf.publish.enable = true;
      tcp.enable = true;
      tcp.anonymousClients.allowedIpRanges = [ "172.16.0.0/16" "127.0.0.1" ];
    };

    vuizvui.user.openlab.stackenblocken.enable = true;

    services.logind.extraConfig = "HandleLidSwitch=ignore";

    services.mpd = {
      enable = true;
      musicDirectory = musicDir;
      network.listenAddress = "any";
      extraConfig = ''
        auto_update yes
        audio_output {
          type            "pulse"
          name            "MPD Pulse Output"
          server          "127.0.0.1"
        }
      '';
    };

    fileSystems = {
      "${musicDir}" = {
        device = "ftp.openlab.lan:/data/upload/music";
        fsType = "nfs";
        label = "lab-ftp";
        options = [ "nolock" "x-systemd.automount"];
      };
    };
  };
}