From 43f972fff3abe9fe3034a3af39cd078304adb052 Mon Sep 17 00:00:00 2001 From: root Date: Thu, 25 Jun 2020 23:05:30 -0700 Subject: [PATCH] merge with atom --- defaults.nix | 3 +- fudo/profiles/common-ui.nix | 185 ++++++++++++++++++++++++++++++++++ fudo/profiles/default.nix | 1 + fudo/profiles/desktop.nix | 196 +----------------------------------- fudo/profiles/laptop.nix | 26 +++++ fudo/sites/seattle.nix | 4 +- hosts/atom.nix | 49 +++++++++ 7 files changed, 268 insertions(+), 196 deletions(-) create mode 100644 fudo/profiles/common-ui.nix create mode 100644 fudo/profiles/laptop.nix create mode 100644 hosts/atom.nix diff --git a/defaults.nix b/defaults.nix index 7d2acd1..72f9c8e 100644 --- a/defaults.nix +++ b/defaults.nix @@ -63,14 +63,13 @@ openssl_1_1 openssh_gssapi pciutils + pinentry pv pwgen racket ruby - rubyPackages.nokogiri rustc sbcl - sbclBootstrap screen service-wrapper stdenv diff --git a/fudo/profiles/common-ui.nix b/fudo/profiles/common-ui.nix new file mode 100644 index 0000000..b937ad7 --- /dev/null +++ b/fudo/profiles/common-ui.nix @@ -0,0 +1,185 @@ +{ config, lib, pkgs, ... }: + +with lib; +let + profile = config.fudo.common.profile; + +in mkIf ((profile == "desktop") || (profile == "laptop")) { + environment.systemPackages = with pkgs; [ + cool-retro-term + corefonts + chrome-gnome-shell + chromium + evince + ffmpeg-full + firefox + gimp + glxinfo + gnome3.gnome-shell + gnome3.gnome-session + google-chrome + gtk2 + gtk2-x11 + gtk3 + gtkimageview + i3lock + libfixposix + #minecraft-current + mono + mplayer + mpv + nomacs + openssl_1_1 + pdftk + python37Packages.youtube-dl + redshift + rhythmbox + shotwell + spotify + sqlite + (steam.override { + nativeOnly = true; + extraPkgs = pkgs: [ + mono + gtk3 + gtk3-x11 + libgdiplus + zlib + ]; + withJava = true; + }) + (steam.override { + nativeOnly = true; + extraPkgs = pkgs: [ + mono + fmodex + gtk3 + gtk3-x11 + libgdiplus + zlib + ]; + withJava = true; + }).run + # steam-run + # steam-run-native + system-config-printer + virtmanager + xorg.xev + xzgv + virtmanager-qt + ]; + + nixpkgs.config.allowBroken = true; + + # Splash screen + boot.plymouth.enable = true; + + services.avahi = { + enable = true; + browseDomains = [config.fudo.common.domain]; + domainName = config.fudo.common.domain; + }; + + boot.tmpOnTmpfs = true; + + services.xserver = { + # enable = true; + + layout = "us"; + xkbVariant = "dvp"; + xkbOptions = "ctrl:nocaps"; + + desktopManager.gnome3.enable = true; + + displayManager.gdm.enable = true; + + displayManager.defaultSession = "gnome"; + + windowManager.session = pkgs.lib.singleton { + name = "stumpwm"; + start = '' + ${pkgs.lispPackages.stumpwm}/bin/stumpwm & + waidPID=$! + ''; + }; + }; + + services.gnome3 = { + evolution-data-server.enable = pkgs.lib.mkForce false; + gnome-user-share.enable = pkgs.lib.mkForce false; + }; + + services.dbus.socketActivated = true; + + #services.openssh.forwardX11 = true; + + #programs.ssh.forwardX11 = true; + + sound.enable = true; + + hardware.pulseaudio.enable = true; + + fonts = { + enableFontDir = true; + #fontconfig.antialias = true; + fontconfig.enable = true; + #fontconfig.penultimate.enable = true; + #fontconfig.subpixel.lcdfilter = "default"; + + fonts = with pkgs; [ + cantarell_fonts + dejavu_fonts + dina-font + dosemu_fonts + fira-code + fira-code-symbols + freefont_ttf + liberation_ttf + mplus-outline-fonts + #nerdfonts + noto-fonts + noto-fonts-cjk + noto-fonts-emoji + proggyfonts + terminus_font + ubuntu_font_family + ucsFonts + unifont + vistafonts + xlibs.fontadobe100dpi + xlibs.fontadobe75dpi + xlibs.fontadobeutopia100dpi + xlibs.fontadobeutopia75dpi + xlibs.fontadobeutopiatype1 + xlibs.fontarabicmisc + xlibs.fontbh100dpi + xlibs.fontbh75dpi + xlibs.fontbhlucidatypewriter100dpi + xlibs.fontbhlucidatypewriter75dpi + xlibs.fontbhttf + xlibs.fontbhtype1 + xlibs.fontbitstream100dpi + xlibs.fontbitstream75dpi + xlibs.fontbitstreamtype1 + xlibs.fontcronyxcyrillic + xlibs.fontcursormisc + xlibs.fontdaewoomisc + xlibs.fontdecmisc + xlibs.fontibmtype1 + xlibs.fontisasmisc + xlibs.fontjismisc + xlibs.fontmicromisc + xlibs.fontmisccyrillic + xlibs.fontmiscethiopic + xlibs.fontmiscmeltho + xlibs.fontmiscmisc + xlibs.fontmuttmisc + xlibs.fontschumachermisc + xlibs.fontscreencyrillic + xlibs.fontsonymisc + xlibs.fontsunmisc + xlibs.fontwinitzkicyrillic + xlibs.fontxfree86type1 + ]; + }; +} \ No newline at end of file diff --git a/fudo/profiles/default.nix b/fudo/profiles/default.nix index e327416..fc70616 100644 --- a/fudo/profiles/default.nix +++ b/fudo/profiles/default.nix @@ -3,6 +3,7 @@ { imports = [ ./desktop.nix + ./laptop.nix ./server.nix ]; } diff --git a/fudo/profiles/desktop.nix b/fudo/profiles/desktop.nix index 4cd06d8..5d70746 100644 --- a/fudo/profiles/desktop.nix +++ b/fudo/profiles/desktop.nix @@ -1,198 +1,8 @@ { config, lib, pkgs, ... }: with lib; -{ - config = mkIf (config.fudo.common.profile == "desktop") { - environment.systemPackages = with pkgs; [ - cool-retro-term - corefonts - chrome-gnome-shell - chromium - evince - ffmpeg-full - firefox - gimp - glxinfo - gnome3.gnome-shell - gnome3.gnome-session - google-chrome - gtk2 - gtk2-x11 - gtk3 - gtkimageview - i3lock - libfixposix - minecraft-current - mono - mplayer - mpv - nomacs - openssl_1_1 - pdftk - python37Packages.youtube-dl - redshift - rhythmbox - shotwell - spotify - sqlite - (steam.override { - nativeOnly = true; - extraPkgs = pkgs: [ - mono - gtk3 - gtk3-x11 - libgdiplus - zlib - ]; - withJava = true; - }) - (steam.override { - nativeOnly = true; - extraPkgs = pkgs: [ - mono - fmodex - gtk3 - gtk3-x11 - libgdiplus - zlib - ]; - withJava = true; - }).run - # steam-run - # steam-run-native - system-config-printer - virtmanager - xorg.xev - xzgv - virtmanager-qt - ]; - - nixpkgs.config.allowBroken = true; - - # Splash screen - boot.plymouth.enable = true; - - networking.networkmanager.enable = mkForce false; - - services.avahi = { - enable = true; - browseDomains = [config.fudo.common.domain]; - domainName = config.fudo.common.domain; - }; - - boot.tmpOnTmpfs = true; - - services.xserver = { - enable = true; - - layout = "us"; - xkbVariant = "dvp"; - xkbOptions = "ctrl:nocaps"; - - desktopManager.gnome3.enable = true; - - displayManager.gdm.enable = true; - - displayManager.defaultSession = "gnome"; - - windowManager.session = pkgs.lib.singleton { - name = "stumpwm"; - start = '' - ${pkgs.lispPackages.stumpwm}/bin/stumpwm & - waidPID=$! - ''; - }; - }; - - services.printing = { - enable = true; - }; - - services.gnome3 = { - evolution-data-server.enable = pkgs.lib.mkForce false; - gnome-user-share.enable = pkgs.lib.mkForce false; - }; - - services.dbus.socketActivated = true; - - services.openssh.forwardX11 = true; - - programs.ssh.forwardX11 = true; - - sound.enable = true; - - hardware.pulseaudio.enable = true; - - systemd.targets = { - sleep.enable = false; - suspend.enable = false; - hibernate.enable = false; - hybrid-sleep.enable = false; - }; - - fonts = { - enableFontDir = true; - enableGhostscriptFonts = false; - fontconfig.antialias = true; - fontconfig.enable = true; - fontconfig.penultimate.enable = true; - fontconfig.subpixel.lcdfilter = "default"; - - fonts = with pkgs; [ - cantarell_fonts - dejavu_fonts - dina-font - dosemu_fonts - fira-code - fira-code-symbols - freefont_ttf - liberation_ttf - mplus-outline-fonts - nerdfonts - noto-fonts - noto-fonts-cjk - noto-fonts-emoji - proggyfonts - terminus_font - ubuntu_font_family - ucsFonts - unifont - vistafonts - xlibs.fontadobe100dpi - xlibs.fontadobe75dpi - xlibs.fontadobeutopia100dpi - xlibs.fontadobeutopia75dpi - xlibs.fontadobeutopiatype1 - xlibs.fontarabicmisc - xlibs.fontbh100dpi - xlibs.fontbh75dpi - xlibs.fontbhlucidatypewriter100dpi - xlibs.fontbhlucidatypewriter75dpi - xlibs.fontbhttf - xlibs.fontbhtype1 - xlibs.fontbitstream100dpi - xlibs.fontbitstream75dpi - xlibs.fontbitstreamtype1 - xlibs.fontcronyxcyrillic - xlibs.fontcursormisc - xlibs.fontdaewoomisc - xlibs.fontdecmisc - xlibs.fontibmtype1 - xlibs.fontisasmisc - xlibs.fontjismisc - xlibs.fontmicromisc - xlibs.fontmisccyrillic - xlibs.fontmiscethiopic - xlibs.fontmiscmeltho - xlibs.fontmiscmisc - xlibs.fontmuttmisc - xlibs.fontschumachermisc - xlibs.fontscreencyrillic - xlibs.fontsonymisc - xlibs.fontsunmisc - xlibs.fontwinitzkicyrillic - xlibs.fontxfree86type1 - ]; - }; +mkIf (config.fudo.common.profile == "desktop") { + networking = { + networkmanager.enable = mkForce false; }; } diff --git a/fudo/profiles/laptop.nix b/fudo/profiles/laptop.nix new file mode 100644 index 0000000..f12e12a --- /dev/null +++ b/fudo/profiles/laptop.nix @@ -0,0 +1,26 @@ +{ config, lib, pkgs, ... }: + +with lib; +mkIf (config.fudo.common.profile == "laptop") { + environment.systemPackages = with pkgs; [ + acpi + upower + wpa_supplicant + ]; + + networking = { + # networkmanager.enable = true; + wireless = { + enable = true; + userControlled = { + enable = true; + group = "wheel"; + }; + networks = { + "sea.fudo.org" = { + psk = "DahHaocheiD5"; + }; + }; + }; + }; +} \ No newline at end of file diff --git a/fudo/sites/seattle.nix b/fudo/sites/seattle.nix index d9b337f..9ebcdaa 100644 --- a/fudo/sites/seattle.nix +++ b/fudo/sites/seattle.nix @@ -16,7 +16,9 @@ in { time.timeZone = "America/Los_Angeles"; - services.printing.enable = true; + services.printing = { + enable = true; + }; services.cron = { mailto = admin; diff --git a/hosts/atom.nix b/hosts/atom.nix new file mode 100644 index 0000000..c2787c1 --- /dev/null +++ b/hosts/atom.nix @@ -0,0 +1,49 @@ +{ config, pkgs, ... }: + +let + hostname = "atom"; + +in { + + imports = [ + ../defaults.nix + ../hardware-configuration.nix + ]; + + boot.loader.grub.enable = true; + boot.loader.grub.version = 2; + boot.loader.grub.device = "/dev/sda"; + + networking.hostName = hostname; + + environment.systemPackages = with pkgs; [ + glxinfo + hll2380dw-cups + usbutils + ]; + + fudo.common = { + profile = "laptop"; + site = "seattle"; + }; + + hardware.cpu.amd.updateMicrocode = true; + + programs = { + bash.enableCompletion = true; + }; + + services.xserver = { + # videoDrivers = ["nvidia"]; + # displayManager.gdm.wayland = false; + }; + + hardware.opengl.driSupport32Bit = true; + hardware.opengl.extraPackages32 = with pkgs.pkgsi686Linux; [ libva ]; + hardware.opengl.driSupport = true; + + hardware.pulseaudio.support32Bit = true; + + hardware.bluetooth.enable = true; + +}