mirror of
https://gitlab.com/ahoneybun/nix-configs.git
synced 2025-05-12 19:24:03 -06:00
Compare commits
No commits in common. "b6c392d91abdc132ed8812421ee51a7995c05262" and "418a43f7f6d0b832a017f894625de6ba3c4b33db" have entirely different histories.
b6c392d91a
...
418a43f7f6
4 changed files with 147 additions and 37 deletions
15
flake.nix
15
flake.nix
|
@ -4,6 +4,10 @@
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "github:NixOS/nixpkgs/release-24.11";
|
nixpkgs.url = "github:NixOS/nixpkgs/release-24.11";
|
||||||
#nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
#nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||||
|
nixos-cosmic = {
|
||||||
|
url = "github:lilyinstarlight/nixos-cosmic";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
home-manager = {
|
home-manager = {
|
||||||
url = "github:nix-community/home-manager/release-24.11";
|
url = "github:nix-community/home-manager/release-24.11";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
@ -12,7 +16,7 @@
|
||||||
pinix.url = "github:remi-dupre/pinix";
|
pinix.url = "github:remi-dupre/pinix";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = inputs@{ self, nixpkgs, home-manager, nixos-hardware, pinix }: {
|
outputs = inputs@{ self, nixpkgs, nixos-cosmic, home-manager, nixos-hardware, pinix, ... }: {
|
||||||
nixosConfigurations = {
|
nixosConfigurations = {
|
||||||
"nixos" = nixpkgs.lib.nixosSystem {
|
"nixos" = nixpkgs.lib.nixosSystem {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
|
@ -58,13 +62,20 @@
|
||||||
./garrus.nix
|
./garrus.nix
|
||||||
./gnome.nix
|
./gnome.nix
|
||||||
./configuration.nix
|
./configuration.nix
|
||||||
nixos-hardware.nixosModules.system76
|
|
||||||
home-manager.nixosModules.home-manager
|
home-manager.nixosModules.home-manager
|
||||||
{
|
{
|
||||||
home-manager.useGlobalPkgs = true;
|
home-manager.useGlobalPkgs = true;
|
||||||
home-manager.useUserPackages = true;
|
home-manager.useUserPackages = true;
|
||||||
home-manager.users.aaronh = import ./home.nix;
|
home-manager.users.aaronh = import ./home.nix;
|
||||||
}
|
}
|
||||||
|
nixos-hardware.nixosModules.system76
|
||||||
|
{
|
||||||
|
nix.settings = {
|
||||||
|
substituters = [ "https://cosmic.cachix.org/" ];
|
||||||
|
trusted-public-keys = [ "cosmic.cachix.org-1:Dya9IyXD4xdBehWjrkPv6rtxpmMdRel02smYzA85dPE=" ];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
nixos-cosmic.nixosModules.default
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
18
home.nix
18
home.nix
|
@ -1,12 +1,20 @@
|
||||||
{ config, pkgs, ... }:
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
|
# Home Manager needs a bit of information about you and the
|
||||||
|
# paths it should manage.
|
||||||
|
home.username = "aaronh";
|
||||||
|
home.homeDirectory = "/home/aaronh";
|
||||||
|
|
||||||
home = {
|
# This value determines the Home Manager release that your
|
||||||
username = "aaronh";
|
# configuration is compatible with. This helps avoid breakage
|
||||||
homeDirectory = "/home/aaronh";
|
# when a new Home Manager release introduces backwards
|
||||||
stateVersion = "24.11";
|
# incompatible changes.
|
||||||
};
|
#
|
||||||
|
# You can update Home Manager without changing this value. See
|
||||||
|
# the Home Manager release notes for a list of state version
|
||||||
|
# changes in each release.
|
||||||
|
home.stateVersion = "24.11";
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
deja-dup
|
deja-dup
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
{ config, pkgs, lib, inputs, ... }:
|
{ config, pkgs, lib, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
# ./gnome.nix
|
# ./gnome.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
boot = {
|
boot = {
|
||||||
kernelPackages = pkgs.linuxKernel.packages.linux_rpi4;
|
kernelPackages = pkgs.linuxKernel.packages.linux_rpi4;
|
||||||
|
@ -33,23 +33,21 @@
|
||||||
# Set your time zone.
|
# Set your time zone.
|
||||||
time.timeZone = "America/Denver";
|
time.timeZone = "America/Denver";
|
||||||
|
|
||||||
environment.systemPackages =
|
environment.systemPackages =
|
||||||
with pkgs;
|
with pkgs;
|
||||||
[
|
[
|
||||||
git
|
git
|
||||||
restic
|
restic
|
||||||
wget
|
wget
|
||||||
|
];
|
||||||
inputs.nixpkgs-ahoneybun.packages.${system}.honeyfetch
|
|
||||||
];
|
|
||||||
|
|
||||||
# Define user accounts
|
# Define user accounts
|
||||||
users.users.aaronh = {
|
users.users.aaronh = {
|
||||||
description = "Aaron Honeycutt";
|
description = "Aaron Honeycutt";
|
||||||
home = "/home/aaronh";
|
home = "/home/aaronh";
|
||||||
extraGroups = [ "wheel" "networkmanager" "adm"];
|
extraGroups = [ "wheel" "networkmanager" "adm"];
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
hashedPassword = "$6$aAcbLtqiqzySifls$jdKMOQjoWITHD/dWNNZVUH/qNc6aoJ7v4zYofi0U7IJSVTbmOfChS3mzaJbp57AodjdPNKPrnrip8Nlh2Qanx.";
|
hashedPassword = "$6$aAcbLtqiqzySifls$jdKMOQjoWITHD/dWNNZVUH/qNc6aoJ7v4zYofi0U7IJSVTbmOfChS3mzaJbp57AodjdPNKPrnrip8Nlh2Qanx.";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Enable Pipewire
|
# Enable Pipewire
|
||||||
|
@ -60,7 +58,7 @@
|
||||||
alsa.support32Bit = true;
|
alsa.support32Bit = true;
|
||||||
pulse.enable = true;
|
pulse.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Turn off PulseAudio
|
# Turn off PulseAudio
|
||||||
hardware.pulseaudio.enable = false;
|
hardware.pulseaudio.enable = false;
|
||||||
|
|
||||||
|
@ -70,13 +68,21 @@
|
||||||
# Enable SSH
|
# Enable SSH
|
||||||
services.openssh.enable = true;
|
services.openssh.enable = true;
|
||||||
|
|
||||||
# Enable Tailscale
|
# Enable CUPS
|
||||||
services.tailscale.enable = true;
|
services.printing.enable = true;
|
||||||
|
|
||||||
# Allow Unfree
|
# Allow Unfree
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
||||||
# System
|
services.hydra = {
|
||||||
system.stateVersion = "24.11";
|
enable = false;
|
||||||
|
hydraURL = "http://localhost:3000";
|
||||||
|
notificationSender = "hydra@localhost";
|
||||||
|
buildMachinesFiles = [];
|
||||||
|
useSubstitutes = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
# System
|
||||||
|
system.stateVersion = "24.05";
|
||||||
system.autoUpgrade.enable = true;
|
system.autoUpgrade.enable = true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,23 +2,108 @@
|
||||||
description = "Vetra";
|
description = "Vetra";
|
||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "github:NixOS/nixpkgs/release-24.11";
|
nixpkgs.url = "github:NixOS/nixpkgs/release-23.05";
|
||||||
home-manager = {
|
home-manager = {
|
||||||
url = "github:nix-community/home-manager/release-24.11";
|
url = "github:nix-community/home-manager/release-22.11";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
|
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
|
||||||
nixpkgs-ahoneybun.url = "gitlab:ahoneybun-nix/nixpkgs/main";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = inputs@{ self, nixpkgs, home-manager, nixos-hardware, nixpkgs-ahoneybun, ... }: {
|
outputs = { self, nixpkgs, nixos-hardware, ... }@inputs: {
|
||||||
nixosConfigurations = {
|
nixosConfigurations = {
|
||||||
"vetra" = nixpkgs.lib.nixosSystem {
|
"vetra" = nixpkgs.lib.nixosSystem {
|
||||||
system = "aarch64-linux";
|
system = "aarch64-linux";
|
||||||
specialArgs = { inherit inputs; };
|
|
||||||
modules = [
|
modules = [
|
||||||
nixos-hardware.nixosModules.raspberry-pi-4
|
# Import the configuration.nix we used before, so that the old configuration file can still take effect.
|
||||||
./configuration.nix
|
# Note: /etc/nixos/configuration.nix itself is also a Nix Module, so you can import it directly here
|
||||||
|
nixos-hardware.nixosModules.raspberry-pi-4
|
||||||
|
# ./configuration.nix
|
||||||
|
|
||||||
|
({config, pkgs, ...}: {
|
||||||
|
fileSystems = {
|
||||||
|
"/" = {
|
||||||
|
device = "/dev/disk/by-label/NIXOS_SD";
|
||||||
|
fsType = "ext4";
|
||||||
|
options = [ "noatime" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
"/mnt/ExtraDrive" = {
|
||||||
|
device = "/dev/disk/by-uuid/72315f9e-ceda-4152-8e8d-09590affba28";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
nix = {
|
||||||
|
settings.auto-optimise-store = true;
|
||||||
|
settings.experimental-features = [ "nix-command" "flakes" ];
|
||||||
|
|
||||||
|
gc = {
|
||||||
|
automatic = true;
|
||||||
|
dates = "weekly";
|
||||||
|
options = "--delete-older-than 30d";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
networking = {
|
||||||
|
hostName = "vetra";
|
||||||
|
networkmanager.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
time.timeZone = "America/Denver";
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
fish
|
||||||
|
git
|
||||||
|
neofetch
|
||||||
|
restic
|
||||||
|
wget
|
||||||
|
];
|
||||||
|
|
||||||
|
users.users.aaronh = {
|
||||||
|
description = "Aaron Honeycutt";
|
||||||
|
home = "/home/aaronh";
|
||||||
|
extraGroups = [ "wheel" "networkmanager" "adm" ];
|
||||||
|
isNormalUser = true;
|
||||||
|
shell = pkgs.fish;
|
||||||
|
hashedPassword = "$6$aAcbLtqiqzySifls$jdKMOQjoWITHD/dWNNZVUH/qNc6aoJ7v4zYofi0U7IJSVTbmOfChS3mzaJbp57AodjdPNKPrnrip8Nlh2Qanx.";
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.fish.enable = true;
|
||||||
|
|
||||||
|
# Enable Pipewire
|
||||||
|
security.rtkit.enable = true;
|
||||||
|
services.pipewire = {
|
||||||
|
enable = true;
|
||||||
|
alsa.enable = true;
|
||||||
|
alsa.support32Bit = true;
|
||||||
|
pulse.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Turn off PulseAudio
|
||||||
|
hardware.pulseaudio.enable = false;
|
||||||
|
|
||||||
|
# Enable Bluetooth
|
||||||
|
hardware.bluetooth.enable = true;
|
||||||
|
|
||||||
|
# Enable SSH
|
||||||
|
services.openssh.enable = true;
|
||||||
|
|
||||||
|
# Enable CUPS
|
||||||
|
services.printing.enable = true;
|
||||||
|
|
||||||
|
# Enable GPU Acceleration
|
||||||
|
hardware.raspberry-pi."4".fkms-3d.enable = true;
|
||||||
|
|
||||||
|
# Allow Unfree
|
||||||
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
||||||
|
# System
|
||||||
|
system = {
|
||||||
|
stateVersion = "23.05";
|
||||||
|
autoUpgrade.enable = true;
|
||||||
|
};
|
||||||
|
})
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue