From 2901854e84d89b058f72c2b1777615fbd194b3a2 Mon Sep 17 00:00:00 2001 From: nyanloutre Date: Sat, 9 Jun 2018 13:23:26 +0200 Subject: [PATCH] Regroupement configurations --- .gitignore | 1 + overlays/steam.nix | 6 + systems/ASUS-G46VW/configuration.nix | 171 ++++++++++++++++++ systems/ASUS-G46VW/hardware-configuration.nix | 31 ++++ .../LoutreOS/configuration.nix | 14 +- .../LoutreOS/hardware-configuration.nix | 0 services.nix => systems/LoutreOS/services.nix | 10 +- users.nix => systems/LoutreOS/users.nix | 0 8 files changed, 221 insertions(+), 12 deletions(-) create mode 100644 .gitignore create mode 100644 overlays/steam.nix create mode 100644 systems/ASUS-G46VW/configuration.nix create mode 100644 systems/ASUS-G46VW/hardware-configuration.nix rename configuration.nix => systems/LoutreOS/configuration.nix (89%) rename hardware-configuration.nix => systems/LoutreOS/hardware-configuration.nix (100%) rename services.nix => systems/LoutreOS/services.nix (97%) rename users.nix => systems/LoutreOS/users.nix (100%) diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..40c7108 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +configuration.nix diff --git a/overlays/steam.nix b/overlays/steam.nix new file mode 100644 index 0000000..70b4a36 --- /dev/null +++ b/overlays/steam.nix @@ -0,0 +1,6 @@ +self: super: +{ + steam_primus = super.steamPackages.steam-chrootenv.override { + withPrimus = true; + }; +} diff --git a/systems/ASUS-G46VW/configuration.nix b/systems/ASUS-G46VW/configuration.nix new file mode 100644 index 0000000..d66a8ac --- /dev/null +++ b/systems/ASUS-G46VW/configuration.nix @@ -0,0 +1,171 @@ +# 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 + ]; + + nixpkgs.overlays = [ + (import ../../overlays/sudo.nix) + (import ../../overlays/neovim.nix) + (import ../../overlays/steam.nix) + ]; + + # Use the systemd-boot EFI boot loader. + boot.loader.systemd-boot.enable = true; + boot.loader.efi.canTouchEfiVariables = true; + + hardware.bumblebee.enable = true; + # For Steam + hardware.opengl.driSupport32Bit = true; + hardware.pulseaudio.support32Bit = true; + + networking.hostName = "rog-paul"; # Define your hostname. + networking.networkmanager.enable = true; # Enables wireless support via wpa_supplicant. + + # Select internationalisation properties. + i18n = { + # consoleFont = "Lat2-Terminus16"; + consoleKeyMap = "fr"; + defaultLocale = "fr_FR.UTF-8"; + }; + + # Set your time zone. + time.timeZone = "Europe/Paris"; + + # List packages installed in system profile. To search by name, run: + # $ nix-env -qaP | grep wget + nixpkgs.config.allowUnfree = true; + environment.systemPackages = with pkgs; [ + gitFull + neovim + usbutils + filezilla + lftp + wineStaging + winetricks + youtube-dl + nix-bash-completions + nix-zsh-completions + python3Full + + gopass + xclip + + firefox + chromium + torbrowser + + kleopatra + gnupg + + kdeplasma-addons + ark + kate + kmail + kdeconnect + okular + yakuake + konversation + gwenview + + libreoffice + gimp + vlc + kodi + + steam_primus + sc-controller + ]; + + programs.wireshark.enable = true; + programs.wireshark.package = pkgs.wireshark; + + # Some programs need SUID wrappers, can be configured further or are + # started in user sessions. + # programs.bash.enableCompletion = true; + # programs.mtr.enable = true; + programs.gnupg.agent = { enable = true; enableSSHSupport = true; }; + programs.browserpass.enable = true; + services.pcscd.enable = true; + services.pcscd.plugins = [ + (pkgs.ccid.overrideAttrs (oldAttrs: rec { + preBuild = '' + echo "0x2C97:0x0001:Ledger Token" >> ./readers/supported_readers.txt + ''; + }) + ) + ]; + + # Ledger udev rules + services.udev.extraRules = '' + SUBSYSTEMS=="usb", ATTRS{idVendor}=="2581", ATTRS{idProduct}=="1b7c", MODE="0660", TAG+="uaccess", TAG+="udev-acl", GROUP="ledger" + SUBSYSTEMS=="usb", ATTRS{idVendor}=="2581", ATTRS{idProduct}=="2b7c", MODE="0660", TAG+="uaccess", TAG+="udev-acl", GROUP="ledger" + SUBSYSTEMS=="usb", ATTRS{idVendor}=="2581", ATTRS{idProduct}=="3b7c", MODE="0660", TAG+="uaccess", TAG+="udev-acl", GROUP="ledger" + SUBSYSTEMS=="usb", ATTRS{idVendor}=="2581", ATTRS{idProduct}=="4b7c", MODE="0660", TAG+="uaccess", TAG+="udev-acl", GROUP="ledger" + SUBSYSTEMS=="usb", ATTRS{idVendor}=="2581", ATTRS{idProduct}=="1807", MODE="0660", TAG+="uaccess", TAG+="udev-acl", GROUP="ledger" + SUBSYSTEMS=="usb", ATTRS{idVendor}=="2581", ATTRS{idProduct}=="1808", MODE="0660", TAG+="uaccess", TAG+="udev-acl", GROUP="ledger" + SUBSYSTEMS=="usb", ATTRS{idVendor}=="2c97", ATTRS{idProduct}=="0000", MODE="0660", TAG+="uaccess", TAG+="udev-acl", GROUP="ledger" + SUBSYSTEMS=="usb", ATTRS{idVendor}=="2c97", ATTRS{idProduct}=="0001", MODE="0660", TAG+="uaccess", TAG+="udev-acl", GROUP="ledger" + ''; + + # List services that you want to enable: + + # Enable the OpenSSH daemon. + # services.openssh.enable = true; + + # Open ports in the firewall. + # networking.firewall.allowedTCPPorts = [ ... ]; + # networking.firewall.allowedUDPPorts = [ ... ]; + # Or disable the firewall altogether. + # networking.firewall.enable = false; + + # Enable CUPS to print documents. + services.printing.enable = true; + + # Enable sound. + sound.enable = true; + hardware.pulseaudio.enable = true; + + # Enable the X11 windowing system. + services.xserver.enable = true; + services.xserver.layout = "fr"; + # services.xserver.xkbOptions = "eurosign:e"; + + # Enable touchpad support. + services.xserver.libinput.enable = true; + services.xserver.libinput.naturalScrolling = true; + + # Enable the KDE Desktop Environment. + services.xserver.displayManager.sddm.enable = true; + services.xserver.desktopManager.plasma5.enable = true; + + # Define a user account. Don't forget to set a password with ‘passwd’. + users.extraUsers.paul = { + isNormalUser = true; + uid = 1000; + extraGroups = [ "wheel" "networkmanager" "ledger" "wireshark" ]; + }; + users.extraGroups.ledger = { }; + + users.defaultUserShell = pkgs.zsh; + programs.zsh.enable = true; + programs.zsh.enableAutosuggestions = true; + programs.zsh.enableCompletion = true; + programs.zsh.syntaxHighlighting.enable = true; + programs.zsh.ohMyZsh.enable = true; + programs.zsh.ohMyZsh.plugins = [ "git" "colored-man-pages" "command-not-found" "extract" "nyan" ]; + programs.zsh.ohMyZsh.theme = "bureau"; + + # This value determines the NixOS release with which your system is to be + # compatible, in order to avoid breaking some software such as database + # servers. You should change this only after NixOS release notes say you + # should. + system.stateVersion = "18.03"; # Did you read the comment? + +} diff --git a/systems/ASUS-G46VW/hardware-configuration.nix b/systems/ASUS-G46VW/hardware-configuration.nix new file mode 100644 index 0000000..dd58e6a --- /dev/null +++ b/systems/ASUS-G46VW/hardware-configuration.nix @@ -0,0 +1,31 @@ +# Do not modify this file! It was generated by ‘nixos-generate-config’ +# and may be overwritten by future invocations. Please make changes +# to /etc/nixos/configuration.nix instead. +{ config, lib, pkgs, ... }: + +{ + imports = + [ + ]; + + boot.initrd.availableKernelModules = [ "xhci_pci" "ehci_pci" "ahci" "usb_storage" "sd_mod" ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "/dev/disk/by-uuid/7bd3a09b-b188-4ce7-bdcc-d5c5087edc86"; + fsType = "ext4"; + }; + + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/A25A-1786"; + fsType = "vfat"; + }; + + swapDevices = + [ { device = "/dev/disk/by-uuid/156cd5e8-715c-48a5-9df4-14565227a6c9"; } + ]; + + nix.maxJobs = lib.mkDefault 8; + powerManagement.cpuFreqGovernor = lib.mkDefault "powersave"; +} diff --git a/configuration.nix b/systems/LoutreOS/configuration.nix similarity index 89% rename from configuration.nix rename to systems/LoutreOS/configuration.nix index 053f70d..7ea6734 100644 --- a/configuration.nix +++ b/systems/LoutreOS/configuration.nix @@ -37,13 +37,13 @@ # List packages installed in system profile. To search by name, run: # $ nix-env -qaP | grep wget nixpkgs.overlays = [ - (import ./overlays/riot-web.nix) - (import ./overlays/lidarr.nix) - (import ./overlays/organizr.nix) - (import ./overlays/sudo.nix) - (import ./overlays/neovim.nix) - (import ./overlays/site-max.nix) - (import ./overlays/site-musique.nix) + (import ../../overlays/riot-web.nix) + (import ../../overlays/lidarr.nix) + (import ../../overlays/organizr.nix) + (import ../../overlays/sudo.nix) + (import ../../overlays/neovim.nix) + (import ../../overlays/site-max.nix) + (import ../../overlays/site-musique.nix) ]; environment.systemPackages = with pkgs; [ neovim diff --git a/hardware-configuration.nix b/systems/LoutreOS/hardware-configuration.nix similarity index 100% rename from hardware-configuration.nix rename to systems/LoutreOS/hardware-configuration.nix diff --git a/services.nix b/systems/LoutreOS/services.nix similarity index 97% rename from services.nix rename to systems/LoutreOS/services.nix index 2a6d8d3..91ab413 100644 --- a/services.nix +++ b/systems/LoutreOS/services.nix @@ -14,11 +14,11 @@ in { imports = [ - ./services/haproxy-acme.nix - ./services/mail-server.nix - ./services/lidarr.nix - ./services/site-musique.nix - ./services/site-max.nix + ../../services/haproxy-acme.nix + ../../services/mail-server.nix + ../../services/lidarr.nix + ../../services/site-musique.nix + ../../services/site-max.nix ]; services.smartd.enable = true; diff --git a/users.nix b/systems/LoutreOS/users.nix similarity index 100% rename from users.nix rename to systems/LoutreOS/users.nix