Compare commits

..

No commits in common. "0fda8d240b1abc92139a47811a20f953eb99fe69" and "6985875b3e745f539b4aef7beebae1b9aa427754" have entirely different histories.

143 changed files with 157 additions and 371 deletions

View File

@ -2,13 +2,8 @@
A Nix flake for my system configuration - WIP. A Nix flake for my system configuration - WIP.
## Structure ## Structure
- `./maddie` - A folder for my home-manager configs (aka my user) - `./maddie` - A folder for my home-manager config
- `./maddie/macos` - Specifically macOS (darwin) home configuration - `./system` - A folder for my system-wide config
- `./maddie/nixos` - Specifically NixOS home configuration
- `./maddie/common` - Home configuration available on all systems
- `./systems` - A folder for my system-wide configs
- `./systems/mmacbookpro/` - System configuration for my MacBook Pro (M.MacBookPro)
- `./systems/mdesktop` - System configuration for my desktop (M.Desktop)
- `overlays.nix` - A file for my nixpkgs overlays - `overlays.nix` - A file for my nixpkgs overlays
## Many thanks ## Many thanks

View File

@ -1,25 +1,5 @@
{ {
"nodes": { "nodes": {
"darwin": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1680266963,
"narHash": "sha256-IW/lzbUCOcldLHWHjNSg1YoViDnZOmz0ZJL7EH9OkV8=",
"owner": "LnL7",
"repo": "nix-darwin",
"rev": "99d4187d11be86b49baa3a1aec0530004072374f",
"type": "github"
},
"original": {
"owner": "LnL7",
"repo": "nix-darwin",
"type": "github"
}
},
"home-manager": { "home-manager": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -28,11 +8,11 @@
"utils": "utils" "utils": "utils"
}, },
"locked": { "locked": {
"lastModified": 1680389554, "lastModified": 1678109311,
"narHash": "sha256-+8FUmS4GbDMynQErZGXKg+wU76rq6mI5fprxFXFWKSM=", "narHash": "sha256-Q64FoCH5rp3XHoC8u1+KyjLEFGTY7kX9YaIaYfugvfY=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "ddd8866c0306c48f465e7f48432e6f1ecd1da7f8", "rev": "04d6cad67557512452decbfe888c68fa11338a96",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -43,11 +23,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1680487167, "lastModified": 1678116888,
"narHash": "sha256-9FNIqrxDZgSliGGN2XJJSvcDYmQbgOANaZA4UWnTdg4=", "narHash": "sha256-/Y4RTkPq+RVJjkoM/mYyCREFLZhvtISc/rLcgM1vLvo=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "53dad94e874c9586e71decf82d972dfb640ef044", "rev": "49596eb4e50b18337aad3b73317371bcd4e3b047",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -57,7 +37,6 @@
}, },
"root": { "root": {
"inputs": { "inputs": {
"darwin": "darwin",
"home-manager": "home-manager", "home-manager": "home-manager",
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs"
} }

View File

@ -1,67 +1,36 @@
{ {
description = "Maddie's Nix configurations"; description = "Maddie's NixOS configuration";
inputs = { inputs = {
# Home manager # Home manager
home-manager.url = "github:nix-community/home-manager"; home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "nixpkgs"; home-manager.inputs.nixpkgs.follows = "nixpkgs";
darwin.url = "github:LnL7/nix-darwin";
darwin.inputs.nixpkgs.follows = "nixpkgs";
}; };
outputs = { self, nixpkgs, home-manager, darwin }: outputs = { self, nixpkgs, home-manager }:
let let
username = "maddie"; username = "spy";
utils = import ./utils nixpkgs; system = "x86_64-linux";
pkgs = import nixpkgs { inherit system; config.allowUnfree = true; overlays = import ./overlays.nix; };
nixpkgs_x86_64 = import nixpkgs { utils = import ./utils pkgs;
config.allowUnfree = true; specialArgs = { inherit username; inherit pkgs; };
config.allowUnsupportedSystem = false;
config.allowBroken = false;
overlays = import ./overlays.nix;
system = "x86_64-linux";
};
nixpkgs_aarch64 = import nixpkgs {
config.allowUnfree = true;
config.allowUnsupportedSystem = false;
config.allowBroken = false;
overlays = import ./overlays.nix;
system = "aarch64-darwin";
};
in in
{ {
nixosConfigurations."luna" = nixpkgs.lib.nixosSystem { packages.${system} = {
specialArgs = { inherit username; }; nixosConfigurations.luna = nixpkgs.lib.nixosSystem {
pkgs = nixpkgs_x86_64; inherit system;
system = "x86_64-linux"; inherit pkgs;
modules = [ inherit specialArgs;
home-manager.nixosModules.home-manager modules = [
{ home-manager.nixosModules.home-manager
home-manager.users.${username}.imports = utils.nixFilesIn ./maddie/common ++ utils.nixFilesIn ./maddie/nixos; {
home-manager.extraSpecialArgs = { inherit username; pkgs = nixpkgs_x86_64; }; home-manager.users.${username}.imports = utils.nixFilesIn ./maddie;
} home-manager.extraSpecialArgs = specialArgs;
] ++ utils.nixFilesIn ./systems/mdesktop; }
] ++ utils.nixFilesIn ./system;
};
}; };
darwinConfigurations."MMacBookPro" = darwin.lib.darwinSystem formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.nixpkgs-fmt;
{
pkgs = nixpkgs_aarch64;
specialArgs = { inherit username; };
system = "aarch64-darwin";
modules = [
home-manager.darwinModules.home-manager
{
home-manager.useUserPackages = true;
home-manager.users.${username}.imports = utils.nixFilesIn ./maddie/common ++ utils.nixFilesIn ./maddie/macos;
home-manager.extraSpecialArgs = { inherit username; pkgs = nixpkgs_aarch64; };
}
] ++ utils.nixFilesIn ./systems/mmacbookpro;
};
formatter.x86_64-linux = nixpkgs_x86_64.legacyPackages.x86_64-linux.nixpkgs-fmt;
formatter.aarch64-darwin = nixpkgs_aarch64.legacyPackages.aarch64-darwin.nixpkgs-fmt;
}; };
} }

View File

@ -3,5 +3,8 @@
{ {
home.packages = with pkgs; [ home.packages = with pkgs; [
tor-browser-bundle-bin tor-browser-bundle-bin
librewolf
amfora
lynx
]; ];
} }

11
maddie/browserpass.nix Normal file
View File

@ -0,0 +1,11 @@
{ config, pkgs, ... }:
{
programs.browserpass = {
enable = true;
browsers = [
"chromium"
"firefox"
];
};
}

View File

@ -4,5 +4,6 @@
home.packages = with pkgs; [ home.packages = with pkgs; [
python3Full # Python python3Full # Python
go # Go go # Go
gcc # C
]; ];
} }

View File

@ -1,8 +0,0 @@
{ config, pkgs, ... }:
{
home.packages = with pkgs; [
amfora
lynx
];
}

View File

@ -1,16 +0,0 @@
{ config, ... }:
{
programs.exa = {
enable = true;
enableAliases = true;
extraOptions = [
"--group-directories-first"
"--time-style=long-iso"
"--git"
"-h"
"-g"
];
icons = true;
};
}

View File

@ -1,14 +0,0 @@
{ config, pkgs, ... }:
{
programs.wezterm = {
enable = true;
extraConfig = ''
return {
color_scheme = 'OneDark (base16)',
hide_tab_bar_if_only_one_tab = true,
window_close_confirmation = 'NeverPrompt'
}
'';
};
}

View File

@ -1,21 +0,0 @@
{ config, ... }:
{
home = {
sessionVariables = {
# Force use of XDG Dir Spec
CUDA_CACHE_PATH = "${config.xdg.cacheHome}/nv";
LESSHISTFILE = "${config.xdg.configHome}/less/history";
LESSKEY = "${config.xdg.configHome}/less/keys";
WINEPREFIX = "${config.xdg.dataHome}/wine";
_JAVA_OPTIONS = "-Djava.util.prefs.userRoot=${config.xdg.configHome}/java";
};
shellAliases = {
# Force use of XDG Dir Spec
wget = "wget --hsts-file='${config.xdg.dataHome}/wget-hsts'";
rxrdb = "xrdb -load '${config.xdg.configHome}/.config/X11/xresources'";
nvidia-settings = "nvidia-settings --config='${config.xdg.configHome}'/nvidia/settings";
};
};
}

View File

@ -3,6 +3,7 @@
{ {
# Misc editors # Misc editors
home.packages = with pkgs; [ home.packages = with pkgs; [
vscode
helix helix
vis vis
]; ];

48
maddie/firefox.nix Normal file
View File

@ -0,0 +1,48 @@
{ config, ... }:
{
programs.firefox = {
enable = true;
profiles = {
"maddie" = {
name = "Maddie";
bookmarks = [
{
name = "Home";
bookmarks = [
{
name = "BT Home Hub";
url = "http://192.168.1.254/";
}
{
name = "Home Assistant";
url = "http://192.168.1.105:8123/lovelace/0";
}
{
name = "Security Cameras";
url = "http://192.168.1.108/";
}
{
name = "Fast";
url = "https://fast.com/";
}
];
}
{
name = "Nix";
bookmarks = [
{
name = "NixOS Packages";
url = "https://search.nixos.org/packages";
}
{
name = "NixOS Options";
url = "https://search.nixos.org/options";
}
];
}
];
};
};
};
}

View File

@ -2,6 +2,7 @@
{ {
home.packages = with pkgs; [ home.packages = with pkgs; [
gitkraken
gh gh
]; ];
@ -17,7 +18,7 @@
userName = "Madeleine"; userName = "Madeleine";
userEmail = "maddie@spyhoodle.me"; userEmail = "maddie@spyhoodle.me";
signing = { signing = {
key = "FA50688B9EB6D8AA070C8241C296DE8C9053683F"; key = "467EFD918D5E770AD1EE2CE699CD1AB536E1C7AD";
signByDefault = true; signByDefault = true;
gpgPath = "gpg2"; gpgPath = "gpg2";
}; };
@ -36,14 +37,5 @@
init.defaultBranch = "development"; init.defaultBranch = "development";
pull.rebase = "merges"; pull.rebase = "merges";
}; };
ignores = [
"**/.DS_Store"
"**/._.DS_Store"
".DS_Store"
"._.DS_Store"
"**/*.swp"
"*.swp"
];
}; };
} }

View File

@ -1,10 +0,0 @@
{ config, username, pkgs, lib, ... }:
{
programs.home-manager.enable = true;
home = {
inherit username;
homeDirectory = lib.mkForce "/Users/${username}";
stateVersion = "23.05";
};
}

View File

@ -2,10 +2,9 @@
{ {
home.packages = with pkgs; [ home.packages = with pkgs; [
element-desktop # Matrix client
signal-desktop # Signal client signal-desktop # Signal client
discord-canary # Discord client discord-canary # Discord client
ripcord # Better discord client ripcord # Better discord client
nheko # Better matrix client element # Matrix client
]; ];
} }

View File

@ -52,7 +52,9 @@ return require('packer').startup(function(use)
use { use {
'xiyaowong/nvim-transparent', 'xiyaowong/nvim-transparent',
config = function() config = function()
vim.g.transparent_enabled = false require('transparent').setup({
enable = false;
})
end end
} }

View File

@ -1,7 +0,0 @@
{ config, pkgs, ... }:
{
home.packages = with pkgs; [
drawterm
];
}

View File

@ -1,12 +0,0 @@
{ config, ... }:
{
programs.librewolf = {
enable = true;
settings = {
"browser.uidensity" = 1;
"webgl.disabled" = false;
"privacy.resistFingerprinting" = false;
};
};
}

View File

@ -1,8 +0,0 @@
{ config, ... }:
{
services.pass-secret-service = {
enable = true;
storePath = "${config.xdg.dataHome}/password-store";
};
}

View File

@ -4,5 +4,6 @@
home.packages = with pkgs; [ home.packages = with pkgs; [
xorg.xkill # Kill X11 programs with mouse xorg.xkill # Kill X11 programs with mouse
killall # Kill programs killall # Kill programs
gotop # Process manager in go
]; ];
} }

View File

@ -5,6 +5,8 @@
# Aliases # Aliases
shellAliases = { shellAliases = {
# Core Programs # Core Programs
ls = "ls -lhN --color=auto --group-directories-first";
ll = "ls -av";
cp = "cp -iv"; cp = "cp -iv";
mv = "mv -iv"; mv = "mv -iv";
rm = "rm -vI"; rm = "rm -vI";

View File

@ -1,6 +1,11 @@
{ config, pkgs, username, ... }: { config, pkgs, username, ... }:
{ {
# Drawterm
home.packages = with pkgs; [
drawterm
];
# SSH # SSH
programs.ssh = { programs.ssh = {
enable = true; enable = true;

Some files were not shown because too many files have changed in this diff Show More