Merge remote-tracking branch 'origin/main' into dev
This commit is contained in:
commit
153f5d2356
6 changed files with 162 additions and 56 deletions
29
home.nix
29
home.nix
|
@ -1,15 +1,30 @@
|
|||
inputs @ { nixpkgs, home-manager, ... }:
|
||||
inputs:
|
||||
let
|
||||
system = "x86_64-linux";
|
||||
overlay = final: prev: {
|
||||
overlay = system: final: prev: {
|
||||
helix = prev.helix // inputs.helix.packages.${system}.helix;
|
||||
rtx = prev.rtx // inputs.rtx.packages.${system}.rtx;
|
||||
};
|
||||
pkgs = import nixpkgs { inherit system; overlays = [ overlay ]; };
|
||||
# TODO: be functional - have a mkHome function?
|
||||
in {
|
||||
# TODO: per arch?
|
||||
daniel = home-manager.lib.homeManagerConfiguration {
|
||||
daniel = let
|
||||
system = "x86_64-linux";
|
||||
pkgs = import inputs.nixpkgs { inherit system; overlays = [ (overlay system) ]; };
|
||||
in inputs.home-manager.lib.homeManagerConfiguration {
|
||||
inherit pkgs;
|
||||
modules = [ import ./daniel.nix pkgs ];
|
||||
modules = [
|
||||
(import ./home/user.nix pkgs)
|
||||
(import ./home/linux.nix pkgs)
|
||||
];
|
||||
};
|
||||
|
||||
daniel-work = let
|
||||
system = "aarch64-darwin";
|
||||
pkgs = import inputs.nixpkgs { inherit system; overlays = [ (overlay system) ]; };
|
||||
in inputs.home-manager.lib.homeManagerConfiguration {
|
||||
inherit pkgs;
|
||||
modules = [
|
||||
(import ./home/user.nix pkgs)
|
||||
(import ./home/work.nix pkgs)
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
74
home/linux.nix
Normal file
74
home/linux.nix
Normal file
|
@ -0,0 +1,74 @@
|
|||
{ pkgs, ... }: {
|
||||
home.pointerCursor = {
|
||||
name = "Catppuccin-Mocha-Sapphire-Cursors";
|
||||
package = pkgs.catppuccin-cursors.mochaSapphire;
|
||||
size = 64; # TODO: this doesn't seem to work -- at least in Sway
|
||||
};
|
||||
|
||||
gtk = {
|
||||
enable = true;
|
||||
theme = {
|
||||
name = "Catppuccin-Mocha-Compact-Sapphire-dark";
|
||||
package = pkgs.catppuccin-gtk.override {
|
||||
accents = [ "sapphire" ];
|
||||
size = "compact";
|
||||
tweaks = [ "rimless" "black" ];
|
||||
variant = "mocha";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
home.packages = [
|
||||
(pkgs.buildEnv { name = "my-linux-scripts"; paths = [ ./scripts/linux ]; })
|
||||
];
|
||||
|
||||
programs.firefox = {
|
||||
# TODO: enable dark theme by default
|
||||
enable = true;
|
||||
|
||||
package = (pkgs.firefox.override { extraNativeMessagingHosts = [ pkgs.passff-host ]; });
|
||||
|
||||
# extensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
||||
# ublock-origin
|
||||
# ]; # TODO: would be nice to have _all_ my firefox stuff managed here instead of Firefox Sync maybe?
|
||||
|
||||
profiles = {
|
||||
daniel = {
|
||||
id = 0;
|
||||
settings = {
|
||||
"general.smoothScroll" = true;
|
||||
};
|
||||
|
||||
extraConfig = ''
|
||||
user_pref("toolkit.legacyUserProfileCustomizations.stylesheets", true);
|
||||
// user_pref("full-screen-api.ignore-widgets", true);
|
||||
user_pref("media.ffmpeg.vaapi.enabled", true);
|
||||
user_pref("media.rdd-vpx.enabled", true);
|
||||
'';
|
||||
|
||||
userChrome = ''
|
||||
#TabsToolbar {
|
||||
visibility: collapse;
|
||||
}
|
||||
|
||||
#webrtcIndicator {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#main-window[tabsintitlebar="true"]:not([extradragspace="true"]) #TabsToolbar>.toolbar-items {
|
||||
opacity: 0;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
#main-window:not([tabsintitlebar="true"]) #TabsToolbar {
|
||||
visibility: collapse !important;
|
||||
}
|
||||
'';
|
||||
|
||||
# userContent = ''
|
||||
# '';
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
}
|
|
@ -11,7 +11,7 @@ in
|
|||
# };
|
||||
|
||||
home = {
|
||||
username = "daniel";
|
||||
username = lib.mkDefault "daniel";
|
||||
homeDirectory = lib.mkDefault "/home/daniel/.home";
|
||||
stateVersion = "23.05";
|
||||
|
||||
|
@ -20,8 +20,17 @@ in
|
|||
# kubectl, aws
|
||||
pkgs.rtx
|
||||
|
||||
# text editor
|
||||
pkgs.helix
|
||||
|
||||
# I need gawk for my fish prompt
|
||||
pkgs.gawk
|
||||
|
||||
pkgs.nil
|
||||
pkgs.nixpkgs-fmt
|
||||
|
||||
# TODO: os-specific scripts? macOS versus Linux (arch or nixos? do I need to distinguish at that point?)
|
||||
(pkgs.buildEnv { name = "my-scripts"; paths = [ ./scripts ]; })
|
||||
(pkgs.buildEnv { name = "my-scripts"; paths = [ ../scripts ]; })
|
||||
];
|
||||
|
||||
file = {
|
||||
|
@ -59,12 +68,6 @@ in
|
|||
'';
|
||||
};
|
||||
};
|
||||
|
||||
pointerCursor = {
|
||||
name = "Catppuccin-Mocha-Sapphire-Cursors";
|
||||
package = pkgs.catppuccin-cursors.mochaSapphire;
|
||||
size = 64; # TODO: this doesn't seem to work -- at least in Sway
|
||||
};
|
||||
};
|
||||
|
||||
programs = {
|
||||
|
@ -485,8 +488,8 @@ select = {
|
|||
fish = {
|
||||
enable = true;
|
||||
# I load long scripts from files for a better editing experience
|
||||
shellInit = builtins.readFile ./fish/shellInit.fish;
|
||||
interactiveShellInit = builtins.readFile ./fish/interactiveShellInit.fish;
|
||||
shellInit = builtins.readFile ../fish/shellInit.fish;
|
||||
interactiveShellInit = builtins.readFile ../fish/interactiveShellInit.fish;
|
||||
loginShellInit = "";
|
||||
functions = {
|
||||
# I think these should be loaded from fish files too for better editor experience
|
||||
|
@ -625,7 +628,6 @@ select = {
|
|||
# userContent = ''
|
||||
# '';
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
};
|
6
home/work.nix
Normal file
6
home/work.nix
Normal file
|
@ -0,0 +1,6 @@
|
|||
{ lib, ... }: let
|
||||
username = "daniel.flanagan@divvypay.com";
|
||||
in {
|
||||
home.username = username;
|
||||
home.homeDirectory = "/Users/${username}";
|
||||
}
|
|
@ -68,41 +68,50 @@ in
|
|||
enable = true;
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
brightnessctl
|
||||
feh
|
||||
gimp
|
||||
grim
|
||||
inkscape
|
||||
krita
|
||||
libinput
|
||||
libinput-gestures
|
||||
libnotify
|
||||
lutris
|
||||
mako
|
||||
nil
|
||||
nixpkgs-fmt
|
||||
noto-fonts
|
||||
pamixer
|
||||
pavucontrol
|
||||
pgcli
|
||||
playerctl
|
||||
pulseaudio
|
||||
pulsemixer
|
||||
rclone
|
||||
restic
|
||||
slurp
|
||||
steam
|
||||
swaybg
|
||||
swayidle
|
||||
swaylock
|
||||
vlc
|
||||
vulkan-tools
|
||||
waybar
|
||||
weechat
|
||||
wine
|
||||
wl-clipboard
|
||||
wofi
|
||||
zathura
|
||||
];
|
||||
environment = {
|
||||
variables = {
|
||||
GTK_THEME = "hx";
|
||||
VISUAL = "hx";
|
||||
PAGER = "less";
|
||||
MANPAGER = "less";
|
||||
};
|
||||
|
||||
systemPackages = with pkgs; [
|
||||
brightnessctl
|
||||
feh
|
||||
gimp
|
||||
grim
|
||||
inkscape
|
||||
krita
|
||||
libinput
|
||||
libinput-gestures
|
||||
libnotify
|
||||
lutris
|
||||
mako
|
||||
nil
|
||||
nixpkgs-fmt
|
||||
noto-fonts
|
||||
pamixer
|
||||
pavucontrol
|
||||
pgcli
|
||||
playerctl
|
||||
pulseaudio
|
||||
pulsemixer
|
||||
rclone
|
||||
restic
|
||||
slurp
|
||||
steam
|
||||
swaybg
|
||||
swayidle
|
||||
swaylock
|
||||
vlc
|
||||
vulkan-tools
|
||||
waybar
|
||||
weechat
|
||||
wine
|
||||
wl-clipboard
|
||||
wofi
|
||||
zathura
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -3,7 +3,7 @@ let
|
|||
daniel = {
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.users.daniel = import ./daniel.nix;
|
||||
home-manager.users.daniel = import ./home/user.nix;
|
||||
};
|
||||
hms = [
|
||||
inputs.home-manager.nixosModules.home-manager
|
||||
|
|
Loading…
Reference in a new issue