add pluto host
This commit is contained in:
parent
cca7181901
commit
78ac00643c
9 changed files with 321 additions and 32 deletions
81
flake.lock
generated
81
flake.lock
generated
|
|
@ -185,11 +185,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1714606777,
|
||||
"narHash": "sha256-bMkNmAXLj8iyTvxaaD/StcLSadbj1chPcJOjtuVnLmA=",
|
||||
"lastModified": 1714641030,
|
||||
"narHash": "sha256-yzcRNDoyVP7+SCNX0wmuDju1NUCt8Dz9+lyUXEI0dbI=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "4d34ce6412bc450b1d4208c953dc97c7fc764f1a",
|
||||
"rev": "e5d10a24b66c3ea8f150e47dfdb0416ab7c3390e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -378,11 +378,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1714515075,
|
||||
"narHash": "sha256-azMK7aWH0eUc3IqU4Fg5rwZdB9WZBvimOGG3piqvtsY=",
|
||||
"lastModified": 1714679908,
|
||||
"narHash": "sha256-KzcXzDvDJjX34en8f3Zimm396x6idbt+cu4tWDVS2FI=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "6d3b6dc9222c12b951169becdf4b0592ee9576ef",
|
||||
"rev": "9036fe9ef8e15a819fa76f47a8b1f287903fb848",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -391,6 +391,27 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager_stable": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs_stable"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1714043624,
|
||||
"narHash": "sha256-Xn2r0Jv95TswvPlvamCC46wwNo8ALjRCMBJbGykdhcM=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "86853e31dc1b62c6eeed11c667e8cdd0285d4411",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"ref": "release-23.11",
|
||||
"repo": "home-manager",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hyprcontrib": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
|
@ -454,11 +475,11 @@
|
|||
"xdph": "xdph"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1714663293,
|
||||
"narHash": "sha256-1XZi9ZRGn2Wob2WHYUjcshA/jeIIuPvbGHvAsZFNysw=",
|
||||
"lastModified": 1714743728,
|
||||
"narHash": "sha256-VCFgqgQ2apEawEOHogI5Dhs6qqcyORwfU1sfizigCpA=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "Hyprland",
|
||||
"rev": "a3ca016d42283ce1d2d5ffca40b93123b4290f4b",
|
||||
"rev": "d5bf15387ad3b4ee36cae7a3cd9f4a9c28790f2e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -630,11 +651,11 @@
|
|||
},
|
||||
"locked": {
|
||||
"dir": "contrib",
|
||||
"lastModified": 1714603036,
|
||||
"narHash": "sha256-DdSurfEudH2ERSMsR19jHZmyHcqM1bPKyLUFfbT3RTs=",
|
||||
"lastModified": 1714683427,
|
||||
"narHash": "sha256-SMfFU+VsRTZLVIkGpf67oOTZ29gWmFvxF0nGO6CRx/4=",
|
||||
"owner": "neovim",
|
||||
"repo": "neovim",
|
||||
"rev": "9e2f378b6d255cd4b02a39b1a1dc5aea2df1a84c",
|
||||
"rev": "01e4a70d668d54a7cefa3ff53ec97e39df516265",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -655,11 +676,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1714618080,
|
||||
"narHash": "sha256-6IKJRxi/Rl7Huz75SSCIWHm0d6ADToLL6MsvjWunTZg=",
|
||||
"lastModified": 1714694802,
|
||||
"narHash": "sha256-b0+Zrd2PDgRIEeeXbivzw3kcSaXCZItOvgOgdfRsyOo=",
|
||||
"owner": "nix-community",
|
||||
"repo": "neovim-nightly-overlay",
|
||||
"rev": "e45cf8ce3f84056b006935b3f64c35ea6be76300",
|
||||
"rev": "9b2c33c7fa0287db93868d955e7b3d0da3837a57",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -772,11 +793,11 @@
|
|||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1714253743,
|
||||
"narHash": "sha256-mdTQw2XlariysyScCv2tTE45QSU9v/ezLcHJ22f0Nxc=",
|
||||
"lastModified": 1714635257,
|
||||
"narHash": "sha256-4cPymbty65RvF1DWQfc+Bc8B233A1BWxJnNULJKQ1EY=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "58a1abdbae3217ca6b702f03d3b35125d88a2994",
|
||||
"rev": "63c3a29ca82437c87573e4c6919b09a24ea61b0f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -802,6 +823,22 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_stable": {
|
||||
"locked": {
|
||||
"lastModified": 1714531828,
|
||||
"narHash": "sha256-ILsf3bdY/hNNI/Hu5bSt2/KbmHaAVhBbNUOdGztTHEg=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "0638fe2715d998fa81d173aad264eb671ce2ebc1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-23.11",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pre-commit-hooks-nix": {
|
||||
"inputs": {
|
||||
"flake-compat": [
|
||||
|
|
@ -862,6 +899,7 @@
|
|||
"anyrun": "anyrun",
|
||||
"catppuccin": "catppuccin",
|
||||
"home-manager": "home-manager",
|
||||
"home-manager_stable": "home-manager_stable",
|
||||
"hyprcontrib": "hyprcontrib",
|
||||
"hyprland": "hyprland",
|
||||
"hyprland-plugins": "hyprland-plugins",
|
||||
|
|
@ -870,6 +908,7 @@
|
|||
"neovim-nightly-overlay": "neovim-nightly-overlay",
|
||||
"nixos-generators": "nixos-generators",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"nixpkgs_stable": "nixpkgs_stable",
|
||||
"rio-term": "rio-term",
|
||||
"spicetify-nix": "spicetify-nix",
|
||||
"systems": "systems_8",
|
||||
|
|
@ -1089,11 +1128,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1714631500,
|
||||
"narHash": "sha256-yrUm8IX8mZJdpJHrd/Pd/pJYycjppe8YmqtT0yAXSkU=",
|
||||
"lastModified": 1714718861,
|
||||
"narHash": "sha256-mCQdrn0Y3oOVZP/CileWAhuBX6aARBNrfxyqJBB4NxA=",
|
||||
"owner": "Alexays",
|
||||
"repo": "Waybar",
|
||||
"rev": "79ae530bd29cb561d6f48773e894dd62fe353b7f",
|
||||
"rev": "231d6972d7a023e9358ab7deda509baac49006cb",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
|
|||
15
flake.nix
15
flake.nix
|
|
@ -12,12 +12,18 @@
|
|||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||
nixpkgs_stable.url = "github:nixos/nixpkgs/nixos-23.11";
|
||||
|
||||
home-manager = {
|
||||
url = "github:nix-community/home-manager";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
home-manager_stable = {
|
||||
url = "github:nix-community/home-manager/release-23.11";
|
||||
inputs.nixpkgs.follows = "nixpkgs_stable";
|
||||
};
|
||||
|
||||
anyrun.url = "github:Kirottu/anyrun";
|
||||
anyrun.inputs.nixpkgs.follows = "nixpkgs";
|
||||
ags.url = "github:Aylur/ags";
|
||||
|
|
@ -81,6 +87,7 @@
|
|||
outputs = {
|
||||
self,
|
||||
nixpkgs,
|
||||
nixpkgs_stable,
|
||||
systems,
|
||||
...
|
||||
} @ inputs: let
|
||||
|
|
@ -90,6 +97,14 @@
|
|||
f nixpkgs.legacyPackages.${system}
|
||||
);
|
||||
in {
|
||||
nixosConfigurations.pluto = nixpkgs_stable.lib.nixosSystem {
|
||||
specialArgs = {inherit inputs;};
|
||||
modules = [
|
||||
./hosts/pluto/configuration.nix
|
||||
inputs.home-manager_stable.nixosModules.default
|
||||
];
|
||||
};
|
||||
|
||||
nixosConfigurations.earth = nixpkgs.lib.nixosSystem {
|
||||
specialArgs = {inherit inputs;};
|
||||
modules = [
|
||||
|
|
|
|||
|
|
@ -11,7 +11,6 @@
|
|||
# Include the results of the hardware scan.
|
||||
./hardware-configuration.nix
|
||||
./nvidia.nix
|
||||
../../env/wayland
|
||||
({
|
||||
options,
|
||||
lib,
|
||||
|
|
|
|||
102
hosts/pluto/configuration.nix
Normal file
102
hosts/pluto/configuration.nix
Normal file
|
|
@ -0,0 +1,102 @@
|
|||
# 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,
|
||||
inputs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
# Include the results of the hardware scan.
|
||||
./hardware-configuration.nix
|
||||
];
|
||||
|
||||
# Bootloader.
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
|
||||
networking.hostName = "pluto"; # Define your hostname.
|
||||
|
||||
# Enable networking
|
||||
networking.networkmanager.enable = true;
|
||||
|
||||
# Set your time zone.
|
||||
time.timeZone = "America/New_York";
|
||||
|
||||
# Select internationalisation properties.
|
||||
i18n.defaultLocale = "en_US.UTF-8";
|
||||
|
||||
i18n.extraLocaleSettings = {
|
||||
LC_ADDRESS = "en_US.UTF-8";
|
||||
LC_IDENTIFICATION = "en_US.UTF-8";
|
||||
LC_MEASUREMENT = "en_US.UTF-8";
|
||||
LC_MONETARY = "en_US.UTF-8";
|
||||
LC_NAME = "en_US.UTF-8";
|
||||
LC_NUMERIC = "en_US.UTF-8";
|
||||
LC_PAPER = "en_US.UTF-8";
|
||||
LC_TELEPHONE = "en_US.UTF-8";
|
||||
LC_TIME = "en_US.UTF-8";
|
||||
};
|
||||
|
||||
# Configure keymap in X11
|
||||
services.xserver = {
|
||||
layout = "us";
|
||||
xkbVariant = "";
|
||||
};
|
||||
|
||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||
users.users.zack = {
|
||||
isNormalUser = true;
|
||||
description = "zack";
|
||||
extraGroups = ["networkmanager" "wheel"];
|
||||
packages = with pkgs; [];
|
||||
};
|
||||
|
||||
# List packages installed in system profile. To search, run:
|
||||
# $ nix search wget
|
||||
environment.systemPackages = with pkgs; [
|
||||
# vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
||||
# wget
|
||||
];
|
||||
|
||||
home-manager = {
|
||||
extraSpecialArgs = {inherit inputs;};
|
||||
users = {
|
||||
"zack" = {
|
||||
imports = [../../modules/home-manager/pluto.nix];
|
||||
_module.args.theme = import ../../core/theme.nix;
|
||||
|
||||
home.username = "zack";
|
||||
home.homeDirectory = "/home/zack";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Some programs need SUID wrappers, can be configured further or are
|
||||
# started in user sessions.
|
||||
# programs.mtr.enable = true;
|
||||
# programs.gnupg.agent = {
|
||||
# enable = true;
|
||||
# enableSSHSupport = true;
|
||||
# };
|
||||
|
||||
# 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;
|
||||
|
||||
# This value determines the NixOS release from which the default
|
||||
# settings for stateful data, like file locations and database versions
|
||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||
# this value at the release version of the first install of this system.
|
||||
# Before changing this value read the documentation for this option
|
||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||
system.stateVersion = "23.11"; # Did you read the comment?
|
||||
}
|
||||
40
hosts/pluto/hardware-configuration.nix
Normal file
40
hosts/pluto/hardware-configuration.nix
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
# 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, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "usbhid" "sd_mod" "sr_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-amd" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/2367b8e2-fe40-43e4-bc6a-fa19f78bfca4";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/4DC0-0CF8";
|
||||
fsType = "vfat";
|
||||
options = [ "fmask=0022" "dmask=0022" ];
|
||||
};
|
||||
|
||||
swapDevices = [ ];
|
||||
|
||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||
# still possible to use this option, but it's recommended to use it in conjunction
|
||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.enp35s0.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.enp36s0.useDHCP = lib.mkDefault true;
|
||||
# networking.interfaces.enp3s0f0u14u3c2.useDHCP = lib.mkDefault true;
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
92
modules/home-manager/pluto.nix
Normal file
92
modules/home-manager/pluto.nix
Normal file
|
|
@ -0,0 +1,92 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
inputs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./vim/default.nix
|
||||
|
||||
# ../rice/sway
|
||||
# ../rice/waybar
|
||||
# ../rice/dunst.nix
|
||||
../shell
|
||||
|
||||
# inputs.catppuccin.homeManagerModules.catppuccin
|
||||
];
|
||||
|
||||
nixpkgs = {
|
||||
config = {
|
||||
allowUnfree = true;
|
||||
allowUnfreePredicate = _: true;
|
||||
};
|
||||
overlays = [
|
||||
inputs.neovim-nightly-overlay.overlay
|
||||
];
|
||||
};
|
||||
|
||||
# catppuccin.flavour = "mocha";
|
||||
|
||||
# This value determines the Home Manager release that your configuration is
|
||||
# compatible with. This helps avoid breakage when a new Home Manager release
|
||||
# introduces backwards incompatible changes.
|
||||
#
|
||||
# You should not change this value, even if you update Home Manager. If you do
|
||||
# want to update the value, then make sure to first check the Home Manager
|
||||
# release notes.
|
||||
home.stateVersion = "23.11"; # Please read the comment before changing it.
|
||||
|
||||
home.packages = [
|
||||
pkgs.dconf
|
||||
|
||||
pkgs.nix-output-monitor
|
||||
|
||||
inputs.nixpkgs.legacyPackages.${pkgs.system}.nh
|
||||
|
||||
pkgs.killall
|
||||
(pkgs.writeShellScriptBin "rebuild" ''
|
||||
#!${pkgs.bash}/bin/bash
|
||||
set -e
|
||||
pushd ~/nixos/
|
||||
alejandra . &>/dev/null
|
||||
git add .
|
||||
echo "[REBUILD]: rebuilding nixos"
|
||||
nh os switch
|
||||
gen=$(nixos-rebuild list-generations | grep current)
|
||||
git commit -am "$gen"
|
||||
git push origin main
|
||||
popd
|
||||
'')
|
||||
];
|
||||
|
||||
home.sessionVariables = {
|
||||
EDITOR = "nvim";
|
||||
};
|
||||
|
||||
xdg.enable = true;
|
||||
|
||||
programs.zoxide = {
|
||||
enable = true;
|
||||
enableZshIntegration = true;
|
||||
options = ["--cmd cd"];
|
||||
};
|
||||
|
||||
programs.btop = {
|
||||
enable = true;
|
||||
# catppuccin.enable = true;
|
||||
};
|
||||
|
||||
programs.lazygit = {
|
||||
enable = true;
|
||||
# catppuccin.enable = true;
|
||||
};
|
||||
|
||||
programs.fzf = {
|
||||
enable = true;
|
||||
# catppuccin.enable = true;
|
||||
};
|
||||
|
||||
# Let Home Manager install and manage itself.
|
||||
programs.home-manager.enable = true;
|
||||
}
|
||||
|
|
@ -1,10 +1,21 @@
|
|||
{
|
||||
inputs,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
imports = [./default.nix ./applications.nix];
|
||||
|
||||
services = {
|
||||
udiskie.enable = true;
|
||||
gpg-agent = {
|
||||
enable = true;
|
||||
pinentryPackage = lib.mkForce pkgs.pinentry-gnome3;
|
||||
enableSshSupport = true;
|
||||
enableZshIntegration = true;
|
||||
};
|
||||
};
|
||||
|
||||
systemd.user.services.kb-gui = {
|
||||
Unit = {
|
||||
Description = "KB Time/Date thing";
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ in {
|
|||
ZSH_AUTOSUGGEST_USE_ASYNC = "true";
|
||||
SSH_AUTH_SOCK = "/run/user/1000/keyring/ssh";
|
||||
};
|
||||
autosuggestion.enable = true;
|
||||
enableAutosuggestions = true;
|
||||
history = {
|
||||
save = 2137;
|
||||
size = 2137;
|
||||
|
|
|
|||
|
|
@ -3,15 +3,6 @@
|
|||
lib,
|
||||
...
|
||||
}: {
|
||||
services = {
|
||||
udiskie.enable = true;
|
||||
gpg-agent = {
|
||||
enable = true;
|
||||
pinentryPackage = lib.mkForce pkgs.pinentry-gnome3;
|
||||
enableSshSupport = true;
|
||||
enableZshIntegration = true;
|
||||
};
|
||||
};
|
||||
programs = {
|
||||
gpg.enable = true;
|
||||
man.enable = true;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue