Commit 0862062e1486
2016-09-11 12:18:57
Changed files (7)
.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";
+ };
+ };
+ };
+}