Commit b431a469b910

Vincent Demeester <vincent@sbr.pm>
2019-02-22 19:20:01
Revert "desktop: add an option for no displayManager…"
This reverts commit 7753b5c3e33b5dbdb4482f99fcb2fdf7f9de2aed.
1 parent 7a9ee2e
Changed files (1)
modules
profiles
modules/profiles/desktop.nix
@@ -47,11 +47,6 @@ in
         description = "Enable networkmanager with the desktop profile";
         type = types.bool;
       };
-      displayManager = mkOption {
-        default = true;
-        description = "Wether use a display manager or not";
-        type = types.bool;
-      };
       slimTheme = mkOption {
         default = {
           url = "https://github.com/vdemeester/slim-themes/raw/master/v-theme-0.1.tar.xz";
@@ -61,152 +56,146 @@ in
       };
     };
   };
-  config = mkIf cfg.enable (mkMerge [
-    {
-      profiles.avahi.enable = cfg.avahi;
-      profiles.printing.enable = cfg.printing;
-      profiles.pulseaudio.enable = cfg.pulseaudio;
-      profiles.scanning.enable = cfg.scanning;
-      profiles.syncthing.enable = cfg.syncthing;
-  
-      boot = {
-        tmpOnTmpfs = true;
-        plymouth.enable = true;
-      };
-      
-      networking.networkmanager = {
-        enable = cfg.networkmanager;
-        unmanaged =  [
-          "interface-name:ve-*" "interface-name:veth*" "interface-name:wg0" "interface-name:docker0" "interface-name:virbr*"
+  config = mkIf cfg.enable {
+    profiles.avahi.enable = cfg.avahi;
+    profiles.printing.enable = cfg.printing;
+    profiles.pulseaudio.enable = cfg.pulseaudio;
+    profiles.scanning.enable = cfg.scanning;
+    profiles.syncthing.enable = cfg.syncthing;
+
+    boot = {
+      tmpOnTmpfs = true;
+      plymouth.enable = true;
+    };
+    
+    networking.networkmanager = {
+      enable = cfg.networkmanager;
+      unmanaged =  [
+        "interface-name:ve-*" "interface-name:veth*" "interface-name:wg0" "interface-name:docker0" "interface-name:virbr*"
+      ];
+      packages = with pkgs; [ networkmanager-openvpn ];  
+    };
+
+    programs.dconf.enable = true;
+
+    services = {
+      flatpak.enable = cfg.flatpak;
+      dbus.packages = [ pkgs.gnome3.dconf ];
+      xserver = {
+        enable = true;
+        enableTCP = false;
+        windowManager.twm.enable = true;
+        libinput.enable = true;
+        synaptics.enable = false;
+        layout = "fr(bepo),fr";
+        xkbVariant = "oss";
+        xkbOptions = "grp:menu_toggle,grp_led:caps,compose:caps";
+        inputClassSections = [
+          ''
+            Identifier      "TypeMatrix"
+            MatchIsKeyboard "on"
+            MatchVendor     "TypeMatrix.com"
+            MatchProduct    "USB Keyboard"
+            Driver          "evdev"
+            Option          "XbkModel"      "tm2030USB"
+            Option          "XkbLayout"     "fr"
+            Option          "XkbVariant"    "bepo"
+          ''
+          ''
+            Identifier      "ErgoDox"
+            #MatchVendor     "ErgoDox_EZ"
+            #MatchProduct    "ErgoDox_EZ"
+            MatchIsKeyboard "on"
+            MatchUSBID      "feed:1307"
+            Driver          "evdev"
+            Option          "XkbLayout"     "fr"
+            Option          "XkbVariant"    "bepo"
+          ''
         ];
-        packages = with pkgs; [ networkmanager-openvpn ];  
-      };
-  
-      programs.dconf.enable = true;
-  
-      services = {
-        flatpak.enable = cfg.flatpak;
-        dbus.packages = [ pkgs.gnome3.dconf ];
-        xserver = {
-          enable = true;
-          enableTCP = false;
-          windowManager.twm.enable = true;
-          libinput.enable = true;
-          synaptics.enable = false;
-          layout = "fr(bepo),fr";
-          xkbVariant = "oss";
-          xkbOptions = "grp:menu_toggle,grp_led:caps,compose:caps";
-          inputClassSections = [
-            ''
-              Identifier      "TypeMatrix"
-              MatchIsKeyboard "on"
-              MatchVendor     "TypeMatrix.com"
-              MatchProduct    "USB Keyboard"
-              Driver          "evdev"
-              Option          "XbkModel"      "tm2030USB"
-              Option          "XkbLayout"     "fr"
-              Option          "XkbVariant"    "bepo"
-            ''
-            ''
-              Identifier      "ErgoDox"
-              #MatchVendor     "ErgoDox_EZ"
-              #MatchProduct    "ErgoDox_EZ"
-              MatchIsKeyboard "on"
-              MatchUSBID      "feed:1307"
-              Driver          "evdev"
-              Option          "XkbLayout"     "fr"
-              Option          "XkbVariant"    "bepo"
-            ''
-          ];
-          displayManager = {
-            slim = {
-              enable = cfg.displayManager;
-              # Probably put this into users instead ?
-              defaultUser = "vincent";
-              theme = pkgs.fetchurl cfg.slimTheme;
-            };
+        displayManager = {
+          slim = {
+            enable = true;
+            # Probably put this into users instead ?
+            defaultUser = "vincent";
+            theme = pkgs.fetchurl cfg.slimTheme;
           };
         };
       };
-      
-      fonts = {
-        enableFontDir = true;
-        enableGhostscriptFonts = true;
-        fonts = with pkgs; [
-          corefonts
-          dejavu_fonts
-          emojione
-          feh
-          fira
-          fira-code
-          fira-code-symbols
-          fira-mono
-          font-droid
-          hasklig
-          inconsolata
-          iosevka
-          overpass
-          symbola
-          source-code-pro
-          ubuntu_font_family
-          unifont
-        ];
-      };
-      
-      # Polkit.
-      security.polkit.extraConfig = ''
-        polkit.addRule(function(action, subject) {
-        if ((action.id == "org.freedesktop.udisks2.filesystem-mount-system" ||
-        action.id == "org.freedesktop.udisks2.encrypted-unlock-system"
-        ) &&
-        subject.local && subject.active && subject.isInGroup("users")) {
-        return polkit.Result.YES;
-        }
-        var YES = polkit.Result.YES;
-        var permission = {
-        // required for udisks1:
-        "org.freedesktop.udisks.filesystem-mount": YES,
-        "org.freedesktop.udisks.luks-unlock": YES,
-        "org.freedesktop.udisks.drive-eject": YES,
-        "org.freedesktop.udisks.drive-detach": YES,
-        // required for udisks2:
-        "org.freedesktop.udisks2.filesystem-mount": YES,
-        "org.freedesktop.udisks2.encrypted-unlock": YES,
-        "org.freedesktop.udisks2.eject-media": YES,
-        "org.freedesktop.udisks2.power-off-drive": YES,
-        // required for udisks2 if using udiskie from another seat (e.g. systemd):
-        "org.freedesktop.udisks2.filesystem-mount-other-seat": YES,
-        "org.freedesktop.udisks2.filesystem-unmount-others": YES,
-        "org.freedesktop.udisks2.encrypted-unlock-other-seat": YES,
-        "org.freedesktop.udisks2.eject-media-other-seat": YES,
-        "org.freedesktop.udisks2.power-off-drive-other-seat": YES
-        };
-        if (subject.isInGroup("wheel")) {
-        return permission[action.id];
-        }
-        });
-      '';
-  
-      environment.systemPackages = with pkgs; [
-        cryptsetup
-        xlibs.xmodmap
-        xorg.xbacklight
-        xorg.xdpyinfo
-        xorg.xhost
-        xorg.xinit
-        xss-lock
-        xorg.xmessage
-        unzip
-        gnupg
-        pinentry
-        # user repositories
-        nur.repos.mic92.inxi
+    };
+    
+    fonts = {
+      enableFontDir = true;
+      enableGhostscriptFonts = true;
+      fonts = with pkgs; [
+        corefonts
+        dejavu_fonts
+        emojione
+        feh
+        fira
+        fira-code
+        fira-code-symbols
+        fira-mono
+        font-droid
+        hasklig
+        inconsolata
+        iosevka
+        overpass
+        symbola
+        source-code-pro
+        ubuntu_font_family
+        unifont
       ];
-    }
-    (mkIf (!cfg.displayManager) {
-      services.mingetty = {
-        autologinUser = "vincent";
+    };
+    
+    
+    # Polkit.
+    security.polkit.extraConfig = ''
+      polkit.addRule(function(action, subject) {
+      if ((action.id == "org.freedesktop.udisks2.filesystem-mount-system" ||
+      action.id == "org.freedesktop.udisks2.encrypted-unlock-system"
+      ) &&
+      subject.local && subject.active && subject.isInGroup("users")) {
+      return polkit.Result.YES;
+      }
+      var YES = polkit.Result.YES;
+      var permission = {
+      // required for udisks1:
+      "org.freedesktop.udisks.filesystem-mount": YES,
+      "org.freedesktop.udisks.luks-unlock": YES,
+      "org.freedesktop.udisks.drive-eject": YES,
+      "org.freedesktop.udisks.drive-detach": YES,
+      // required for udisks2:
+      "org.freedesktop.udisks2.filesystem-mount": YES,
+      "org.freedesktop.udisks2.encrypted-unlock": YES,
+      "org.freedesktop.udisks2.eject-media": YES,
+      "org.freedesktop.udisks2.power-off-drive": YES,
+      // required for udisks2 if using udiskie from another seat (e.g. systemd):
+      "org.freedesktop.udisks2.filesystem-mount-other-seat": YES,
+      "org.freedesktop.udisks2.filesystem-unmount-others": YES,
+      "org.freedesktop.udisks2.encrypted-unlock-other-seat": YES,
+      "org.freedesktop.udisks2.eject-media-other-seat": YES,
+      "org.freedesktop.udisks2.power-off-drive-other-seat": YES
       };
-    })
-  ]);
+      if (subject.isInGroup("wheel")) {
+      return permission[action.id];
+      }
+      });
+    '';
+
+    environment.systemPackages = with pkgs; [
+      cryptsetup
+      xlibs.xmodmap
+      xorg.xbacklight
+      xorg.xdpyinfo
+      xorg.xhost
+      xorg.xinit
+      xss-lock
+      xorg.xmessage
+      unzip
+      gnupg
+      pinentry
+      # user repositories
+      nur.repos.mic92.inxi
+    ];
+  };
 }