Move Nix files back to the root of the project
This commit is contained in:
parent
52044d9995
commit
087153a16d
223 changed files with 12 additions and 12 deletions
12
home/common/default.nix
Normal file
12
home/common/default.nix
Normal file
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
outputs,
|
||||
hostname,
|
||||
username,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = builtins.attrValues outputs.homeManagerModules ++ [
|
||||
../../home/${username}/hosts/${hostname}.nix
|
||||
];
|
||||
}
|
103
home/opdavies/default.nix
Normal file
103
home/opdavies/default.nix
Normal file
|
@ -0,0 +1,103 @@
|
|||
{
|
||||
config,
|
||||
headless ? false,
|
||||
hostname,
|
||||
inputs,
|
||||
outputs,
|
||||
self,
|
||||
system,
|
||||
username,
|
||||
...
|
||||
}:
|
||||
let
|
||||
pkgs = import inputs.nixpkgs {
|
||||
inherit system;
|
||||
|
||||
config.allowUnfree = true;
|
||||
|
||||
overlays = [
|
||||
outputs.overlays.additions
|
||||
outputs.overlays.stable-packages
|
||||
];
|
||||
};
|
||||
|
||||
inherit (config.xdg)
|
||||
cacheHome
|
||||
configHome
|
||||
dataHome
|
||||
stateHome
|
||||
;
|
||||
|
||||
inherit (pkgs) lib;
|
||||
|
||||
shared-config = import "${self}/lib/shared/home-manager.nix" {
|
||||
inherit
|
||||
config
|
||||
hostname
|
||||
inputs
|
||||
lib
|
||||
pkgs
|
||||
self
|
||||
username
|
||||
;
|
||||
};
|
||||
|
||||
shared-packages = import "${self}/lib/shared/home-manager-packages.nix" {
|
||||
inherit
|
||||
headless
|
||||
inputs
|
||||
pkgs
|
||||
username
|
||||
;
|
||||
};
|
||||
in
|
||||
{
|
||||
imports =
|
||||
[
|
||||
../common
|
||||
shared-config
|
||||
./modules
|
||||
]
|
||||
++ pkgs.lib.optionals (!headless) [
|
||||
./desktop
|
||||
];
|
||||
|
||||
home.packages = shared-packages;
|
||||
|
||||
home.sessionVariables = {
|
||||
EDITOR = "nvim";
|
||||
IMAPFILTER_HOME = "${configHome}/imapfilter";
|
||||
LANG = "en_GB.UTF-8";
|
||||
LC_ALL = "en_GB.UTF-8";
|
||||
LC_CTYPE = "en_GB.UTF-8";
|
||||
PASSWORD_STORE_DIR = "${dataHome}/pass";
|
||||
PATH = lib.concatStringsSep ":" [
|
||||
"$PATH"
|
||||
"$HOME/go/bin"
|
||||
"./vendor/bin"
|
||||
"./node_modules/.bin"
|
||||
];
|
||||
PULUMI_SKIP_UPDATE_CHECK = "true";
|
||||
W3M_DIR = "${stateHome}/w3m";
|
||||
WGETRC = "${configHome}/wgetrc";
|
||||
XDG_CONFIG_HOME = config.xdg.configHome;
|
||||
XDG_DATA_HOME = dataHome;
|
||||
XDG_STATE_HOME = stateHome;
|
||||
};
|
||||
|
||||
xdg = {
|
||||
configFile = {
|
||||
"${config.home.sessionVariables.WGETRC}".text = ''
|
||||
hsts-file = "${cacheHome}/wget-hsts"
|
||||
'';
|
||||
};
|
||||
|
||||
userDirs = {
|
||||
enable = true;
|
||||
|
||||
extraConfig = {
|
||||
XDG_REPOS_DIR = "${config.home.homeDirectory}/Code";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
24
home/opdavies/desktop/default.nix
Normal file
24
home/opdavies/desktop/default.nix
Normal file
|
@ -0,0 +1,24 @@
|
|||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./firefox.nix
|
||||
./qutebrowser.nix
|
||||
];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
build-glove80
|
||||
gscan2pdf
|
||||
kdePackages.okular
|
||||
meslo-lg
|
||||
obs-studio
|
||||
pamixer
|
||||
pavucontrol
|
||||
xcape
|
||||
xsel
|
||||
];
|
||||
|
||||
programs = {
|
||||
yazi.enable = true;
|
||||
};
|
||||
}
|
110
home/opdavies/desktop/firefox.nix
Normal file
110
home/opdavies/desktop/firefox.nix
Normal file
|
@ -0,0 +1,110 @@
|
|||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
programs.firefox.enable = false;
|
||||
|
||||
programs.librewolf = {
|
||||
enable = true;
|
||||
|
||||
languagePacks = [ "en-GB" ];
|
||||
|
||||
policies = {
|
||||
CaptivePortal = false;
|
||||
DisableFirefoxAccounts = true;
|
||||
DisableFirefoxStudies = true;
|
||||
DisablePocket = true;
|
||||
DisableTelemetry = true;
|
||||
|
||||
EnableTrackingProtection = {
|
||||
Cryptomining = true;
|
||||
Fingerprinting = true;
|
||||
Value = true;
|
||||
};
|
||||
|
||||
ExtensionSettings = {
|
||||
"jid1-ZAdIEUB7XOzOJw@jetpack" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/duckduckgo-for-firefox/latest.xpi";
|
||||
installation_mode = "force_installed";
|
||||
};
|
||||
|
||||
"uBlock0@raymondhill.net" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
|
||||
installation_mode = "force_installed";
|
||||
};
|
||||
};
|
||||
|
||||
FirefoxHome = {
|
||||
Highlights = false;
|
||||
Pocket = false;
|
||||
Search = true;
|
||||
Snippets = false;
|
||||
SponsoredPocket = false;
|
||||
SponsoredTopSites = false;
|
||||
TopSites = true;
|
||||
};
|
||||
|
||||
FirefoxSuggest = {
|
||||
ImproveSuggest = false;
|
||||
SponsoredSuggestions = false;
|
||||
WebSuggestions = false;
|
||||
};
|
||||
|
||||
NoDefaultBookmarks = true;
|
||||
OfferToSaveLogins = false;
|
||||
OfferToSaveLoginsDefault = false;
|
||||
PasswordManagerEnabled = false;
|
||||
|
||||
Preferences = {
|
||||
"cookiebanners.service.mode" = 2; # Block cookie banners
|
||||
"cookiebanners.service.mode.privateBrowsing" = 2; # Block cookie banners in private browsing
|
||||
"privacy.donottrackheader.enabled" = true;
|
||||
"privacy.fingerprintingProtection" = true;
|
||||
"privacy.resistFingerprinting" = true;
|
||||
"privacy.trackingprotection.emailtracking.enabled" = true;
|
||||
"privacy.trackingprotection.enabled" = true;
|
||||
"privacy.trackingprotection.fingerprinting.enabled" = true;
|
||||
"privacy.trackingprotection.socialtracking.enabled" = true;
|
||||
};
|
||||
|
||||
HardwareAcceleration = true;
|
||||
TranslateEnabled = true;
|
||||
|
||||
UserMessaging = {
|
||||
ExtensionRecommendations = false;
|
||||
UrlbarInterventions = false;
|
||||
SkipOnboarding = true;
|
||||
};
|
||||
};
|
||||
|
||||
profiles = {
|
||||
default = {
|
||||
extensions.packages = with pkgs.nur.repos.rycee.firefox-addons; [
|
||||
awesome-rss
|
||||
bitwarden
|
||||
darkreader
|
||||
onetab
|
||||
tree-style-tab
|
||||
ublock-origin
|
||||
videospeed
|
||||
vimium
|
||||
web-developer
|
||||
];
|
||||
|
||||
search = {
|
||||
default = "ddg";
|
||||
force = true;
|
||||
privateDefault = "ddg";
|
||||
};
|
||||
|
||||
settings = {
|
||||
"browser.search.isUS" = false;
|
||||
"browser.search.region" = "GB";
|
||||
"distribution.searchplugins.defaultLocale" = "en-GB";
|
||||
"general.useragent.locale" = "en-GB";
|
||||
"intl.accept_languages" = "en-GB, en";
|
||||
"intl.regional_prefs.use_os_locales" = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
32
home/opdavies/desktop/qutebrowser.nix
Normal file
32
home/opdavies/desktop/qutebrowser.nix
Normal file
|
@ -0,0 +1,32 @@
|
|||
{ lib, ... }:
|
||||
|
||||
{
|
||||
programs.qutebrowser = {
|
||||
enable = true;
|
||||
|
||||
searchEngines = {
|
||||
dp = "https://www.drupal.org/project/{}";
|
||||
du = "https://www.drupal.org/u/{}";
|
||||
gh = "https://github.com/search?q={}";
|
||||
mn = "https://mynixos.com/search?q={}";
|
||||
nx = "https://search.nixos.org/packages?query={}";
|
||||
};
|
||||
|
||||
settings = {
|
||||
colors.webpage.darkmode.enabled = true;
|
||||
};
|
||||
|
||||
keyBindings = {
|
||||
normal = {
|
||||
"<Ctrl-d>" = "config-cycle colors.webpage.darkmode.enabled true false";
|
||||
|
||||
"xb" = "config-cycle statusbar.show always never";
|
||||
"xt" = "config-cycle tabs.show always never";
|
||||
"xx" = lib.mkMerge [
|
||||
"config-cycle statusbar.show always never"
|
||||
"config-cycle tabs.show always never"
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
14
home/opdavies/hosts/PW05CH3L.nix
Normal file
14
home/opdavies/hosts/PW05CH3L.nix
Normal file
|
@ -0,0 +1,14 @@
|
|||
{
|
||||
homeManagerModules = {
|
||||
direnv.enable = true;
|
||||
neovim.enable = true;
|
||||
|
||||
notes = {
|
||||
enable = true;
|
||||
directory = "$HOME/Documents/wiki/tfw-notes";
|
||||
};
|
||||
|
||||
tmux.enable = true;
|
||||
tmux-sessionizer.enable = true;
|
||||
};
|
||||
}
|
18
home/opdavies/hosts/lemp11.nix
Normal file
18
home/opdavies/hosts/lemp11.nix
Normal file
|
@ -0,0 +1,18 @@
|
|||
{ ... }:
|
||||
|
||||
{
|
||||
homeManagerModules = {
|
||||
direnv.enable = true;
|
||||
discord.enable = true;
|
||||
flameshot.enable = true;
|
||||
gimp.enable = true;
|
||||
gtk.enable = true;
|
||||
handbrake.enable = true;
|
||||
kdenlive.enable = true;
|
||||
mpv.enable = true;
|
||||
pocket-casts.enable = true;
|
||||
slack.enable = true;
|
||||
tmux-sessionizer.enable = true;
|
||||
zoom.enable = true;
|
||||
};
|
||||
}
|
8
home/opdavies/hosts/nixedo.nix
Normal file
8
home/opdavies/hosts/nixedo.nix
Normal file
|
@ -0,0 +1,8 @@
|
|||
{ ... }:
|
||||
|
||||
{
|
||||
homeManagerModules = {
|
||||
direnv.enable = true;
|
||||
dwm.enable = true;
|
||||
};
|
||||
}
|
42
home/opdavies/hosts/t480.nix
Normal file
42
home/opdavies/hosts/t480.nix
Normal file
|
@ -0,0 +1,42 @@
|
|||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
homeManagerModules = {
|
||||
bluetuith.enable = true;
|
||||
direnv.enable = true;
|
||||
discord.enable = true;
|
||||
dwm.enable = true;
|
||||
flameshot.enable = true;
|
||||
gimp.enable = true;
|
||||
gtk.enable = true;
|
||||
handbrake.enable = true;
|
||||
kdenlive.enable = true;
|
||||
mpv.enable = true;
|
||||
neovim.enable = true;
|
||||
newsboat.enable = true;
|
||||
|
||||
notes = {
|
||||
enable = true;
|
||||
directory = "$HOME/Documents/wiki/notes";
|
||||
};
|
||||
|
||||
pocket-casts.enable = true;
|
||||
slack.enable = true;
|
||||
tmux.enable = true;
|
||||
tmux-sessionizer.enable = true;
|
||||
zoom.enable = true;
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
backup-websites
|
||||
displayselect
|
||||
isync
|
||||
upload-to-files
|
||||
];
|
||||
|
||||
programs.neomutt = {
|
||||
enable = true;
|
||||
|
||||
vimKeys = true;
|
||||
};
|
||||
}
|
40
home/opdavies/hosts/t490.nix
Normal file
40
home/opdavies/hosts/t490.nix
Normal file
|
@ -0,0 +1,40 @@
|
|||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
homeManagerModules = {
|
||||
bluetuith.enable = true;
|
||||
direnv.enable = true;
|
||||
discord.enable = true;
|
||||
dwm.enable = true;
|
||||
flameshot.enable = true;
|
||||
gimp.enable = true;
|
||||
gtk.enable = true;
|
||||
handbrake.enable = true;
|
||||
kdenlive.enable = true;
|
||||
mpv.enable = true;
|
||||
neovim.enable = true;
|
||||
|
||||
notes = {
|
||||
enable = true;
|
||||
directory = "$HOME/Documents/wiki/notes";
|
||||
};
|
||||
|
||||
pocket-casts.enable = true;
|
||||
slack.enable = true;
|
||||
tmux.enable = true;
|
||||
tmux-sessionizer.enable = true;
|
||||
zoom.enable = true;
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
displayselect
|
||||
isync
|
||||
upload-to-files
|
||||
];
|
||||
|
||||
programs.neomutt = {
|
||||
enable = true;
|
||||
|
||||
vimKeys = true;
|
||||
};
|
||||
}
|
6
home/opdavies/modules/default.nix
Normal file
6
home/opdavies/modules/default.nix
Normal file
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
imports = [
|
||||
./node.nix
|
||||
./ranger.nix
|
||||
];
|
||||
}
|
17
home/opdavies/modules/node.nix
Normal file
17
home/opdavies/modules/node.nix
Normal file
|
@ -0,0 +1,17 @@
|
|||
{ config, ... }:
|
||||
|
||||
let
|
||||
inherit (config.xdg) configHome dataHome stateHome;
|
||||
in
|
||||
{
|
||||
xdg.configFile."${config.home.sessionVariables.NPM_CONFIG_USERCONFIG}".text = ''
|
||||
cache=${configHome}/npm
|
||||
init-module=${configHome}/npm/config/npm-init.js
|
||||
logs-dir=${stateHome}/npm/logs
|
||||
prefix=${dataHome}/npm
|
||||
'';
|
||||
|
||||
home.sessionVariables = {
|
||||
NPM_CONFIG_USERCONFIG = "${configHome}/npm/npmrc";
|
||||
};
|
||||
}
|
5
home/opdavies/modules/ranger.nix
Normal file
5
home/opdavies/modules/ranger.nix
Normal file
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
programs.ranger = {
|
||||
enable = true;
|
||||
};
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue