From 5b15a5e49ed6d35ed435a740198cc2f4b8cace58 Mon Sep 17 00:00:00 2001 From: Craige McWhirter Date: Mon, 5 Feb 2024 22:31:41 +1000 Subject: [PATCH] dionach: added /home and removed customisations --- hosts/dionach.nix | 191 +++------------------------------------------- 1 file changed, 10 insertions(+), 181 deletions(-) diff --git a/hosts/dionach.nix b/hosts/dionach.nix index 6e9b3ee..416365f 100644 --- a/hosts/dionach.nix +++ b/hosts/dionach.nix @@ -6,54 +6,23 @@ }: { imports = [ ../hardware/purism_librem_15.nix # Include results of the hardware scan. - ../profiles/android.nix # Provide an Android dev environment - ../profiles/cron-craige.nix # Provide Craige's cron jobs - ../profiles/daedalus.nix # The open source cryptocurrency wallet for ADA - ../profiles/desktop-feeds.nix # Tools for news feeds and podcasts - ../profiles/desktopCraige.nix # Craige's desktop tools and apps - ../profiles/haskell-dev.nix # Haskell dev environment - ../profiles/host_common.nix # Common host configuration options - ../profiles/iog.nix # IOHK environment - ../profiles/keyboard.nix - ../profiles/neomutt.nix # Neomutt email - ../profiles/nix-community.nix # Nix community aarch64 tooling - ../profiles/nix-mio-ops.nix # mio-ops Nix tooling - ../profiles/nixpkgs-dev.nix # Nix pkgs dev tools - ../profiles/openssh.nix # Enable and configure openssh - ../profiles/pantheon.nix # Enable and configure the pantheon desktop - ../profiles/pipewire.nix # Enable and pipewire audio system - ../profiles/powerManagement.nix # Power management for laptops - ../profiles/qemu.nix # Qemu virtualisation - ../profiles/typingTutor.nix # Typing tutorials - ../profiles/weechat.nix # Weechat environment - ../profiles/xmonad.nix # Xmonad desktop environment - ../profiles/yubikey.nix # Yubikey tooling - ../secrets/craige.nix # Ssshhhhh! - ../secrets/root.nix # Ssshhhhh! - #../secrets/wireless.nix # Hey look! A squirrel! + ../profiles/desktop_common.nix ]; - deployment.targetHost = "localhost"; - - nixpkgs = { - config = { - allowUnfree = true; - permittedInsecurePackages = [ - "openssl-1.0.2u" - ]; - }; - overlays = [(import ../overlays/ncmpcpp.nix)]; - }; + deployment.targetHost = "10.42.0.190"; # Use the GRUB 2 boot loader. - boot.loader.grub.enable = true; - boot.loader.grub.device = "/dev/nvme0n1"; # or "nodev" for efi only - boot.kernel.sysctl."net.ipv4.ip_forward" = "1"; - boot.extraModprobeConfig = "options kvm_intel nested=1"; + boot = { + loader.grub = { + enable = true; + device = "/dev/nvme0n1"; # or "nodev" for efi only + }; + kernel.sysctl."net.ipv4.ip_forward" = "1"; + extraModprobeConfig = "options kvm_intel nested=1"; + }; networking = { hostName = "dionach"; # Define your hostname. - networkmanager.enable = true; # Enables network support via NetworkManager. }; systemd.network.networks.enp0s20f0u4u4i5.ipv6SendRAConfig = { @@ -62,154 +31,14 @@ OtherInformation = true; }; - fonts.fonts = with pkgs; [ - anonymousPro - dejavu_fonts # A typeface family based on the Bitstream Vera fonts - fira-code # Monospace font with programming ligaturess - font-awesome - hack-font # A typeface designed for source code - jetbrains-mono - #monoid # Customisable coding font with alternates, ligatures and contextual positioning - nerdfonts # Iconic font aggregator, collection, & patcher - open-sans # Used in in my polybar configuration - xkcd-font # Font based handwriting in xkcd comics - ]; - - # List packages installed in system profile. To search, run: - environment.systemPackages = with pkgs; [ - bash - binutils - bluez-tools - bridge-utils # for brctl - chromium - clang - ddrescue - docutils # Python Documentation Utilities - electrum # Bitcoin wallet - element-desktop # A feature-rich client for Matrix.org - evince - exiftool # A tool to read, write and edit EXIF meta information - ffmpeg-full # record, convert and stream audio and video - file - gcc - gimp - gnumake - gnused - google-authenticator # 2FA - graphviz # Graph visualization tools - imagemagick - inetutils # Common network utilies - inotify-tools - iptables # iptables - libmtp - libgphoto2 - libreoffice-fresh # Libreoffice - fresh version - lxmenu-data # required by pcmanfm - mkpasswd - mp3info # MP3 tag editor / query tool - mpd - mtpfs - ncmpcpp - nextcloud-client - nvme-cli # NVM-Express user space tooling for Linux - obs-studio # Free and open source software for video recording and live streaming - openjdk8 - openssl # A cryptographic library that implements the SSL and TLS protocols - p7zip - pandoc - pavucontrol - pcmanfm - pstree # Show the set of running processes as a tree - pwgen - python3Full - #python311Packages.restview # ReStructuredText viewer - python311Packages.sphinx # A tool that makes it easy to create intelligent and beautifulul documentation for Python projects - radiotray-ng # Internet radio player - rdiff-backup # External backups - shared-mime-info # required by pcmanfm - shotwell - signal-desktop - smartmontools # Tools for monitoring the health of hard drives - sshfs - taskwarrior # Highly flexible command-line tool to manage TODO lists - tcpdump # tcpdump - tectonic - tdesktop # Telegram Desktop messaging app - texlive.combined.scheme-full - tmate # Instant Terminal Sharing - tpm-tools - #tor-browser-bundle-bin - tree # Command to produce a depth indented directory listing - udevil - unrar - unzip - vcsh - wget - wesnoth # Turn-based strategy game - xorg.xev - zip # zip all the zip's - zlib - zlib.dev - ]; - - services.acpid.enable = true; - services.blueman.enable = true; - services.gvfs.enable = true; # required by pcmanfm services.kbfs.enable = true; - services.xserver.desktopManager.enlightenment.enable = true; - networking.firewall = { enable = true; checkReversePath = false; # Needed for libvirtd allowedTCPPorts = [15000]; }; - # Virtualisation configuration: - virtualisation = { - libvirtd = { - enable = true; # Enable libvirtd - qemu = { - #package = pkgs.qemu_kvm; # Enable guest only for the same arch - package = pkgs.qemu; # Enable full emulation - verbatimConfig = '' - user = "craige" - group = "libvirtd" - ''; - }; - onShutdown = "shutdown"; # Set gust VMs to shutdown on host shutdown - extraConfig = '' - disk_bus = "virtio" - ''; - }; - }; - - # Enable sound. - sound.enable = true; - hardware = { - #pulseaudio = { - # enable = true; - # systemWide = false; - # package = pkgs.pulseaudioFull; - #}; - bluetooth = { - enable = true; - #hsphfpd.enable = true; - settings = {Policy = {AutoEnable = "true";};}; - }; - opengl.enable = true; - }; - - # The below pair are set to overcome flakey connections / busy servers that - # fail to respond to ssh keep alive requests, sometimes triggering: - # client_loop: send disconnect: Broken pipe - programs.ssh.extraConfig = '' - ServerAliveInterval 20 - TCPKeepAlive no - ''; - - users.groups = {lp.members = ["messagebus"];}; - # 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