Commit 0862062e1486

Vincent Demeester <vincent@sbr.pm>
2016-09-11 12:18:57
Initial commit, taken from @FaustXVI
.gitignore
@@ -0,0 +1,2 @@
+oardware-configuration.nix
+result
configuration.nix
@@ -0,0 +1,37 @@
+# Edit this configuration file to define what should be installed on
+# your system.  Help is available in the configuration.nix(5) man page
+# and in the NixOS manual (accessible by running ‘nixos-help’).
+
+{ config, pkgs, ... }:
+
+{
+	imports =
+		[ # Include the results of the hardware scan.
+			./hardware-configuration.nix
+			./keyboard.nix
+			./network.nix
+			./gui.nix
+			./users.nix
+			./packages.nix
+		];
+
+	boot.loader.gummiboot.enable = true;
+	boot.loader.efi.canTouchEfiVariables = true;
+
+	i18n = {
+		consoleFont = "Lat2-Terminus16";
+		consoleKeyMap = "fr";
+		defaultLocale = "en_US.UTF-8";
+	};
+
+	time.timeZone = "Europe/Paris";
+
+	system = {
+		stateVersion = "16.03";	
+		autoUpgrade = {
+			enable = true;
+			dates = "13:00";
+		};
+	};
+
+}
gui.nix
@@ -0,0 +1,22 @@
+{ config, pkgs, ... }:
+
+{
+	services = {
+		xserver = {
+			enable = true;
+			synaptics = {
+				enable = true;
+				twoFingerScroll = true;
+				tapButtons = true;
+			};
+			windowManager = {
+				i3 = {
+					enable = true;
+				};
+			};
+			displayManager = {
+				sessionCommands = "${pkgs.networkmanagerapplet}/bin/nm-applet &";
+			};
+		};
+	};
+}
keyboard.nix
@@ -0,0 +1,22 @@
+{ config, pkgs, ... }:
+
+{
+	services = {
+		xserver =  {
+			layout = "fr";
+			xkbOptions = "eurosign:e";
+			inputClassSections = [
+					''
+					Identifier      "TypeMatrix"
+					MatchIsKeyboard "on"
+					MatchVendor     "TypeMatrix.com"
+					MatchProduct    "USB Keyboard"
+					Driver          "evdev"
+					Option          "XbkModel"      "tm2030USB"
+					Option          "XkbLayout"     "fr"
+					Option          "XkbVariant"    "bepo"
+					''
+			];
+		};
+	};
+}
network.nix
@@ -0,0 +1,12 @@
+{ config, pkgs, ... }:
+
+{
+  networking.networkmanager.enable = true;
+
+  environment.systemPackages = with pkgs; [
+    networkmanagerapplet
+  ];
+
+  services.openssh.enable = true;
+
+}
packages.nix
@@ -0,0 +1,12 @@
+{ config, pkgs, ... }:
+
+{
+	environment = {
+		systemPackages = with pkgs; [
+				wget
+				firefox
+				git
+				vim
+		];
+	};
+}
users.nix
@@ -0,0 +1,15 @@
+{ config, pkgs, ... }:
+
+{
+	users = {
+		extraUsers = {
+			vincent = {
+				isNormalUser = true;
+				uid = 1000;
+				createHome = true;
+				extraGroups = [ "networkmanager" "wheel" ];
+				initialPassword = "changeMe";
+			};
+		};
+	};
+}