Compare commits
No commits in common. "0fda8d240b1abc92139a47811a20f953eb99fe69" and "6985875b3e745f539b4aef7beebae1b9aa427754" have entirely different histories.
0fda8d240b
...
6985875b3e
@ -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
|
||||||
|
33
flake.lock
33
flake.lock
@ -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"
|
||||||
}
|
}
|
||||||
|
73
flake.nix
73
flake.nix
@ -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;
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -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
11
maddie/browserpass.nix
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
programs.browserpass = {
|
||||||
|
enable = true;
|
||||||
|
browsers = [
|
||||||
|
"chromium"
|
||||||
|
"firefox"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
@ -4,5 +4,6 @@
|
|||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
python3Full # Python
|
python3Full # Python
|
||||||
go # Go
|
go # Go
|
||||||
|
gcc # C
|
||||||
];
|
];
|
||||||
}
|
}
|
@ -1,8 +0,0 @@
|
|||||||
{ config, pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
amfora
|
|
||||||
lynx
|
|
||||||
];
|
|
||||||
}
|
|
@ -1,16 +0,0 @@
|
|||||||
{ config, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
programs.exa = {
|
|
||||||
enable = true;
|
|
||||||
enableAliases = true;
|
|
||||||
extraOptions = [
|
|
||||||
"--group-directories-first"
|
|
||||||
"--time-style=long-iso"
|
|
||||||
"--git"
|
|
||||||
"-h"
|
|
||||||
"-g"
|
|
||||||
];
|
|
||||||
icons = true;
|
|
||||||
};
|
|
||||||
}
|
|
@ -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'
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
}
|
|
@ -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";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
@ -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
48
maddie/firefox.nix
Normal 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";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
@ -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"
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
}
|
}
|
@ -1,10 +0,0 @@
|
|||||||
{ config, username, pkgs, lib, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
programs.home-manager.enable = true;
|
|
||||||
home = {
|
|
||||||
inherit username;
|
|
||||||
homeDirectory = lib.mkForce "/Users/${username}";
|
|
||||||
stateVersion = "23.05";
|
|
||||||
};
|
|
||||||
}
|
|
@ -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
|
||||||
];
|
];
|
||||||
}
|
}
|
@ -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
|
||||||
}
|
}
|
||||||
|
|
@ -1,7 +0,0 @@
|
|||||||
{ config, pkgs, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
drawterm
|
|
||||||
];
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
{ config, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
programs.librewolf = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
"browser.uidensity" = 1;
|
|
||||||
"webgl.disabled" = false;
|
|
||||||
"privacy.resistFingerprinting" = false;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,8 +0,0 @@
|
|||||||
{ config, ... }:
|
|
||||||
|
|
||||||
{
|
|
||||||
services.pass-secret-service = {
|
|
||||||
enable = true;
|
|
||||||
storePath = "${config.xdg.dataHome}/password-store";
|
|
||||||
};
|
|
||||||
}
|
|
@ -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
|
||||||
];
|
];
|
||||||
}
|
}
|
@ -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";
|
@ -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
Loading…
Reference in New Issue
Block a user