Compare commits
No commits in common. "63d99f20628679080f66bad2b1016f56ac520209" and "5c21588430834f0ac778a0f63263c6d21ddadda7" have entirely different histories.
63d99f2062
...
5c21588430
22 changed files with 422 additions and 469 deletions
|
@ -5,13 +5,16 @@
|
||||||
_utils,
|
_utils,
|
||||||
agenix,
|
agenix,
|
||||||
camasca,
|
camasca,
|
||||||
hjem,
|
home-manager,
|
||||||
nixpkgs,
|
nixpkgs,
|
||||||
nix-index-database,
|
nix-index-database,
|
||||||
vencord,
|
vencord,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
|
username = "leo";
|
||||||
|
stateVersion = "24.11";
|
||||||
|
|
||||||
rootPassword = _utils.setupSingleSecret config "rootPassword" { };
|
rootPassword = _utils.setupSingleSecret config "rootPassword" { };
|
||||||
secrets = _utils.setupSharedSecrets config {
|
secrets = _utils.setupSharedSecrets config {
|
||||||
secrets = [ "userPassword" ];
|
secrets = [ "userPassword" ];
|
||||||
|
@ -20,10 +23,10 @@ in
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
agenix.nixosModules.default
|
agenix.nixosModules.default
|
||||||
hjem.nixosModules.default
|
home-manager.nixosModules.home-manager
|
||||||
nix-index-database.nixosModules.nix-index
|
nix-index-database.nixosModules.nix-index
|
||||||
|
|
||||||
(lib.mkAliasOptionModule [ "hj" ] [ "hjem" "users" "leo" "files" ])
|
(lib.mkAliasOptionModule [ "hm" ] [ "home-manager" "users" username ])
|
||||||
|
|
||||||
rootPassword.generate
|
rootPassword.generate
|
||||||
secrets.generate
|
secrets.generate
|
||||||
|
@ -68,17 +71,21 @@ in
|
||||||
wget
|
wget
|
||||||
];
|
];
|
||||||
|
|
||||||
hjem = {
|
hm = {
|
||||||
clobberByDefault = true;
|
home = { inherit stateVersion; };
|
||||||
users.leo.files = {
|
|
||||||
".ssh/config".text = ''
|
programs.ssh = {
|
||||||
Host *
|
enable = true;
|
||||||
ForwardAgent yes
|
addKeysToAgent = "yes";
|
||||||
AddKeysToAgent yes
|
forwardAgent = true;
|
||||||
'';
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
home-manager = {
|
||||||
|
useGlobalPkgs = true;
|
||||||
|
useUserPackages = true;
|
||||||
|
};
|
||||||
|
|
||||||
i18n.defaultLocale = "en_US.UTF-8";
|
i18n.defaultLocale = "en_US.UTF-8";
|
||||||
|
|
||||||
networking = {
|
networking = {
|
||||||
|
@ -189,7 +196,7 @@ in
|
||||||
time.timeZone = "Europe/Paris";
|
time.timeZone = "Europe/Paris";
|
||||||
|
|
||||||
users.users = {
|
users.users = {
|
||||||
leo = {
|
"${username}" = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
shell = pkgs.fish;
|
shell = pkgs.fish;
|
||||||
extraGroups = [
|
extraGroups = [
|
||||||
|
@ -218,5 +225,5 @@ in
|
||||||
# this value at the release version of the first install of this system.
|
# this value at the release version of the first install of this system.
|
||||||
# Before changing this value read the documentation for this option
|
# Before changing this value read the documentation for this option
|
||||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||||
system.stateVersion = lib.mkDefault "24.11"; # Did you read the comment?
|
system.stateVersion = lib.mkDefault stateVersion; # Did you read the comment?
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,7 +14,6 @@
|
||||||
../programs/ghostty.nix
|
../programs/ghostty.nix
|
||||||
../programs/gnome.nix
|
../programs/gnome.nix
|
||||||
../programs/java.nix
|
../programs/java.nix
|
||||||
../programs/neovim/neovide.nix
|
|
||||||
];
|
];
|
||||||
|
|
||||||
boot = {
|
boot = {
|
||||||
|
@ -45,30 +44,8 @@
|
||||||
sbctl
|
sbctl
|
||||||
wl-clipboard
|
wl-clipboard
|
||||||
|
|
||||||
chromium
|
|
||||||
(discord.override {
|
|
||||||
withOpenASAR = true;
|
|
||||||
withVencord = true;
|
|
||||||
})
|
|
||||||
gimp3
|
|
||||||
gparted
|
|
||||||
idea-wrapped
|
|
||||||
mpv
|
|
||||||
obsidian
|
|
||||||
strawberry
|
|
||||||
teams-for-linux
|
|
||||||
thunderbird
|
|
||||||
vscode
|
|
||||||
|
|
||||||
niigo-miku-cursors
|
niigo-miku-cursors
|
||||||
patchouli-cursors
|
patchouli-cursors
|
||||||
|
|
||||||
# libreoffice stuff
|
|
||||||
libreoffice-qt6-fresh
|
|
||||||
hunspell
|
|
||||||
hunspellDicts.en_US
|
|
||||||
hunspellDicts.fr-moderne
|
|
||||||
|
|
||||||
];
|
];
|
||||||
|
|
||||||
sessionVariables = {
|
sessionVariables = {
|
||||||
|
@ -100,6 +77,32 @@
|
||||||
enable32Bit = true;
|
enable32Bit = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
hm.imports = [ ../programs/neovim/neovide.nix ];
|
||||||
|
hm.home = {
|
||||||
|
packages = with pkgs; [
|
||||||
|
chromium
|
||||||
|
(discord.override {
|
||||||
|
withOpenASAR = true;
|
||||||
|
withVencord = true;
|
||||||
|
})
|
||||||
|
gimp3
|
||||||
|
gparted
|
||||||
|
idea-wrapped
|
||||||
|
mpv
|
||||||
|
obsidian
|
||||||
|
strawberry
|
||||||
|
teams-for-linux
|
||||||
|
thunderbird
|
||||||
|
vscode
|
||||||
|
|
||||||
|
# libreoffice stuff
|
||||||
|
libreoffice-qt6-fresh
|
||||||
|
hunspell
|
||||||
|
hunspellDicts.en_US
|
||||||
|
hunspellDicts.fr-moderne
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
i18n.extraLocaleSettings = {
|
i18n.extraLocaleSettings = {
|
||||||
LC_ADDRESS = "fr_FR.UTF-8";
|
LC_ADDRESS = "fr_FR.UTF-8";
|
||||||
LC_IDENTIFICATION = "fr_FR.UTF-8";
|
LC_IDENTIFICATION = "fr_FR.UTF-8";
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
lib,
|
lib,
|
||||||
pkgs,
|
pkgs,
|
||||||
config,
|
config,
|
||||||
_utils,
|
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
|
@ -33,10 +32,8 @@
|
||||||
|
|
||||||
# hyprland stuff
|
# hyprland stuff
|
||||||
services.blueman = lib.mkIf config.programs.hyprland.enable { enable = true; };
|
services.blueman = lib.mkIf config.programs.hyprland.enable { enable = true; };
|
||||||
hj.".config/hypr/hyprland.conf".text = _utils.toHyprconf {
|
hm.wayland.windowManager.hyprland.settings.exec-once = with pkgs; [
|
||||||
exec-once = with pkgs; [
|
|
||||||
"${lib.getExe networkmanagerapplet}"
|
"${lib.getExe networkmanagerapplet}"
|
||||||
"${lib.getExe' blueman "blueman-applet"}"
|
"${lib.getExe' blueman "blueman-applet"}"
|
||||||
];
|
];
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
22
flake.lock
generated
22
flake.lock
generated
|
@ -3,7 +3,9 @@
|
||||||
"agenix": {
|
"agenix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"darwin": [],
|
"darwin": [],
|
||||||
"home-manager": [],
|
"home-manager": [
|
||||||
|
"home-manager"
|
||||||
|
],
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
|
@ -143,23 +145,23 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"hjem": {
|
"home-manager": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1746355589,
|
"lastModified": 1746413188,
|
||||||
"narHash": "sha256-LguszqsDBTtdBxblQTtN7vOAYmfoe43aHkB8aK1dChE=",
|
"narHash": "sha256-i6BoiQP0PasExESQHszC0reQHfO6D4aI2GzOwZMOI20=",
|
||||||
"owner": "feel-co",
|
"owner": "nix-community",
|
||||||
"repo": "hjem",
|
"repo": "home-manager",
|
||||||
"rev": "77b37eeb583d43e1c723119a69c906235174ce57",
|
"rev": "8a318641ac13d3bc0a53651feaee9560f9b2d89a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "feel-co",
|
"owner": "nix-community",
|
||||||
"repo": "hjem",
|
"repo": "home-manager",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -281,7 +283,7 @@
|
||||||
"flake-parts": "flake-parts",
|
"flake-parts": "flake-parts",
|
||||||
"flake-utils": "flake-utils",
|
"flake-utils": "flake-utils",
|
||||||
"getchvim": "getchvim",
|
"getchvim": "getchvim",
|
||||||
"hjem": "hjem",
|
"home-manager": "home-manager",
|
||||||
"lanzaboote": "lanzaboote",
|
"lanzaboote": "lanzaboote",
|
||||||
"mystia": "mystia",
|
"mystia": "mystia",
|
||||||
"nix-index-database": "nix-index-database",
|
"nix-index-database": "nix-index-database",
|
||||||
|
|
|
@ -68,7 +68,7 @@
|
||||||
url = "github:uku3lig/agenix";
|
url = "github:uku3lig/agenix";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
inputs.systems.follows = "systems";
|
inputs.systems.follows = "systems";
|
||||||
inputs.home-manager.follows = "";
|
inputs.home-manager.follows = "home-manager";
|
||||||
inputs.darwin.follows = "";
|
inputs.darwin.follows = "";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -89,8 +89,8 @@
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
hjem = {
|
home-manager = {
|
||||||
url = "github:feel-co/hjem";
|
url = "github:nix-community/home-manager";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -111,62 +111,4 @@
|
||||||
alias = builtins.toString (pkgs.writeTextDir filename content) + "/";
|
alias = builtins.toString (pkgs.writeTextDir filename content) + "/";
|
||||||
tryFiles = "${filename} =${builtins.toString status}";
|
tryFiles = "${filename} =${builtins.toString status}";
|
||||||
};
|
};
|
||||||
|
|
||||||
# https://github.com/nix-community/home-manager/blob/ec71b5162848e6369bdf2be8d2f1dd41cded88e8/modules/lib/generators.nix#L4-L61
|
|
||||||
toHyprconf =
|
|
||||||
attrs:
|
|
||||||
let
|
|
||||||
inherit (lib)
|
|
||||||
all
|
|
||||||
concatMapStringsSep
|
|
||||||
concatStrings
|
|
||||||
concatStringsSep
|
|
||||||
filterAttrs
|
|
||||||
foldl
|
|
||||||
generators
|
|
||||||
hasPrefix
|
|
||||||
isAttrs
|
|
||||||
isList
|
|
||||||
mapAttrsToList
|
|
||||||
replicate
|
|
||||||
;
|
|
||||||
|
|
||||||
indentLevel = 0;
|
|
||||||
importantPrefixes = [ "$" ];
|
|
||||||
initialIndent = concatStrings (replicate indentLevel " ");
|
|
||||||
|
|
||||||
toHyprconf' =
|
|
||||||
indent: attrs:
|
|
||||||
let
|
|
||||||
sections = filterAttrs (n: v: isAttrs v || (isList v && all isAttrs v)) attrs;
|
|
||||||
|
|
||||||
mkSection =
|
|
||||||
n: attrs:
|
|
||||||
if lib.isList attrs then
|
|
||||||
(concatMapStringsSep "\n" (a: mkSection n a) attrs)
|
|
||||||
else
|
|
||||||
''
|
|
||||||
${indent}${n} {
|
|
||||||
${toHyprconf' " ${indent}" attrs}${indent}}
|
|
||||||
'';
|
|
||||||
|
|
||||||
mkFields = generators.toKeyValue {
|
|
||||||
listsAsDuplicateKeys = true;
|
|
||||||
inherit indent;
|
|
||||||
};
|
|
||||||
|
|
||||||
allFields = filterAttrs (n: v: !(isAttrs v || (isList v && all isAttrs v))) attrs;
|
|
||||||
|
|
||||||
isImportantField =
|
|
||||||
n: _: foldl (acc: prev: if hasPrefix prev n then true else acc) false importantPrefixes;
|
|
||||||
|
|
||||||
importantFields = filterAttrs isImportantField allFields;
|
|
||||||
|
|
||||||
fields = builtins.removeAttrs allFields (mapAttrsToList (n: _: n) importantFields);
|
|
||||||
in
|
|
||||||
mkFields importantFields
|
|
||||||
+ concatStringsSep "\n" (mapAttrsToList mkSection sections)
|
|
||||||
+ mkFields fields;
|
|
||||||
in
|
|
||||||
toHyprconf' initialIndent attrs;
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,23 +3,24 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
{
|
||||||
toml = pkgs.formats.toml { };
|
hm.programs.alacritty =
|
||||||
|
let
|
||||||
theme = pkgs.fetchurl {
|
theme = pkgs.fetchurl {
|
||||||
# url = "https://raw.githubusercontent.com/catppuccin/alacritty/ce476fb41f307d90f841c1a4fd7f0727c21248b2/catppuccin-macchiato.toml";
|
# url = "https://raw.githubusercontent.com/catppuccin/alacritty/ce476fb41f307d90f841c1a4fd7f0727c21248b2/catppuccin-macchiato.toml";
|
||||||
url = "https://raw.githubusercontent.com/rose-pine/alacritty/3c3e36eb5225b0eb6f1aa989f9d9e783a5b47a83/dist/rose-pine.toml";
|
url = "https://raw.githubusercontent.com/rose-pine/alacritty/3c3e36eb5225b0eb6f1aa989f9d9e783a5b47a83/dist/rose-pine.toml";
|
||||||
hash = "sha256-MheSmzz02ZLAOS2uaclyazu6E//eikcdFydFfkio0/U=";
|
hash = "sha256-MheSmzz02ZLAOS2uaclyazu6E//eikcdFydFfkio0/U=";
|
||||||
};
|
};
|
||||||
|
|
||||||
themeAttr = builtins.fromTOML (builtins.readFile theme);
|
themeAttr = builtins.fromTOML (builtins.readFile theme);
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
hj.".config/alacritty/alacritty.toml".source = toml.generate "alacritty.toml" (
|
enable = true;
|
||||||
lib.recursiveUpdate themeAttr {
|
settings = lib.recursiveUpdate themeAttr {
|
||||||
font = {
|
font = {
|
||||||
normal.family = "Iosevka Nerd Font";
|
normal.family = "Iosevka Nerd Font";
|
||||||
size = 12;
|
size = 12;
|
||||||
};
|
};
|
||||||
}
|
};
|
||||||
);
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,16 +6,17 @@
|
||||||
fishPlugins.hydro
|
fishPlugins.hydro
|
||||||
];
|
];
|
||||||
|
|
||||||
hj.".config/fish/config.fish".text = ''
|
hm.programs.fish = {
|
||||||
function fish_greeting
|
enable = true;
|
||||||
end
|
|
||||||
|
|
||||||
if status is-interactive
|
interactiveShellInit = ''
|
||||||
set --global hydro_symbol_git_dirty "*"
|
set --global hydro_symbol_git_dirty "*"
|
||||||
set --global hydro_color_pwd blue
|
set --global hydro_color_pwd blue
|
||||||
set --global hydro_color_git magenta
|
set --global hydro_color_git magenta
|
||||||
set --global hydro_color_prompt green
|
set --global hydro_color_prompt green
|
||||||
set --global hydro_color_duration yellow
|
set --global hydro_color_duration yellow
|
||||||
end
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
functions.fish_greeting = "";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,7 @@
|
||||||
{ lib, pkgs, ... }:
|
|
||||||
{
|
{
|
||||||
environment.systemPackages = [ pkgs.fuzzel ];
|
hm.programs.fuzzel = {
|
||||||
|
enable = true;
|
||||||
hj.".config/fuzzel/fuzzel.ini".text = lib.generators.toINI { } {
|
settings = {
|
||||||
main = {
|
main = {
|
||||||
font = "Iosevka Nerd Font:size=16";
|
font = "Iosevka Nerd Font:size=16";
|
||||||
dpi-aware = false;
|
dpi-aware = false;
|
||||||
|
@ -21,4 +20,5 @@
|
||||||
selection-match = "40a02bff"; # latte green
|
selection-match = "40a02bff"; # latte green
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
xpadneo.enable = true;
|
xpadneo.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
hm.home.packages = with pkgs; [
|
||||||
obs-studio
|
obs-studio
|
||||||
osu-lazer-bin
|
osu-lazer-bin
|
||||||
krita
|
krita
|
||||||
|
|
|
@ -1,12 +1,14 @@
|
||||||
{ pkgs, ... }:
|
|
||||||
{
|
{
|
||||||
environment.systemPackages = [ pkgs.ghostty ];
|
hm.programs.ghostty = {
|
||||||
|
enable = true;
|
||||||
hj.".config/ghostty/config".text = ''
|
settings = {
|
||||||
font-family = Iosevka Term
|
theme = "light:catppuccin-latte,dark:catppuccin-mocha";
|
||||||
font-feature = -calt
|
font-family = "Iosevka Term";
|
||||||
font-feature = -dlig
|
font-size = 12;
|
||||||
font-size = 12
|
font-feature = [
|
||||||
theme = light:catppuccin-latte,dark:catppuccin-mocha
|
"-calt"
|
||||||
'';
|
"-dlig"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,36 +1,36 @@
|
||||||
{ lib, pkgs, ... }:
|
{ config, ... }:
|
||||||
{
|
{
|
||||||
environment.systemPackages = with pkgs; [
|
programs.git.enable = true;
|
||||||
git
|
|
||||||
gh
|
|
||||||
];
|
|
||||||
|
|
||||||
hj = {
|
hm.programs = {
|
||||||
".gitconfig".text = lib.generators.toGitINI {
|
git = {
|
||||||
user = {
|
inherit (config.programs.git) enable package;
|
||||||
name = "uku";
|
userName = "uku";
|
||||||
email = "hi@uku.moe";
|
userEmail = "hi@uku.moe";
|
||||||
signingKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIN+7+KfdOrhcnHayxvOENUeMx8rE4XEIV/AxMHiaNUP8";
|
|
||||||
|
signing = {
|
||||||
|
format = "ssh";
|
||||||
|
key = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIN+7+KfdOrhcnHayxvOENUeMx8rE4XEIV/AxMHiaNUP8";
|
||||||
|
signByDefault = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
commit = {
|
# delta.enable = true;
|
||||||
gpgSign = true;
|
|
||||||
verbose = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
gpg.format = "ssh";
|
extraConfig = {
|
||||||
tag.gpgSign = true;
|
|
||||||
core.autocrlf = "input";
|
|
||||||
diff.submodule = "log";
|
|
||||||
init.defaultBranch = "main";
|
init.defaultBranch = "main";
|
||||||
merge.conflictStyle = "zdiff3";
|
core.autocrlf = "input";
|
||||||
push.autoSetupRemote = true;
|
push.autoSetupRemote = true;
|
||||||
|
merge.conflictStyle = "zdiff3";
|
||||||
rebase.autoStash = true;
|
rebase.autoStash = true;
|
||||||
status.submoduleSummary = true;
|
status.submoduleSummary = true;
|
||||||
|
diff.submodule = "log";
|
||||||
submodule.recurse = true;
|
submodule.recurse = true;
|
||||||
|
commit.verbose = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
".config/gh/config.yml".text = lib.generators.toYAML { } {
|
gh = {
|
||||||
|
enable = true;
|
||||||
settings.git_protocol = "ssh";
|
settings.git_protocol = "ssh";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -16,6 +16,14 @@
|
||||||
terminal = "ghostty";
|
terminal = "ghostty";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
hm.programs.gnome-shell = {
|
||||||
|
enable = true;
|
||||||
|
extensions = with pkgs.gnomeExtensions; [
|
||||||
|
{ package = appindicator; }
|
||||||
|
{ package = dash-to-panel; }
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
# ssh-agent is provided by gnome-keyring-daemon
|
# ssh-agent is provided by gnome-keyring-daemon
|
||||||
# (mabye soon by gcr, see NixOS/nixpkgs#140824)
|
# (mabye soon by gcr, see NixOS/nixpkgs#140824)
|
||||||
programs.ssh.startAgent = lib.mkForce false;
|
programs.ssh.startAgent = lib.mkForce false;
|
||||||
|
@ -24,8 +32,6 @@
|
||||||
systemPackages = [
|
systemPackages = [
|
||||||
adw-gtk3
|
adw-gtk3
|
||||||
gnome-tweaks
|
gnome-tweaks
|
||||||
gnomeExtensions.appindicator
|
|
||||||
gnomeExtensions.dash-to-panel
|
|
||||||
];
|
];
|
||||||
|
|
||||||
gnome.excludePackages = [
|
gnome.excludePackages = [
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
{
|
{
|
||||||
# utility packages for hyprland, since you know it's not a DE
|
# utility packages for hyprland, since you know it's not a DE
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
|
hm.home.packages = with pkgs; [
|
||||||
gnome.gnome-calculator
|
gnome.gnome-calculator
|
||||||
mate.eom
|
mate.eom
|
||||||
nwg-look
|
nwg-look
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{
|
{
|
||||||
lib,
|
lib,
|
||||||
pkgs,
|
pkgs,
|
||||||
_utils,
|
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
|
@ -24,7 +23,8 @@
|
||||||
|
|
||||||
xdg.portal.extraPortals = with pkgs; [ xdg-desktop-portal-gtk ];
|
xdg.portal.extraPortals = with pkgs; [ xdg-desktop-portal-gtk ];
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
hm = {
|
||||||
|
home.packages = with pkgs; [
|
||||||
hyprpaper
|
hyprpaper
|
||||||
hyprpicker
|
hyprpicker
|
||||||
wl-clipboard
|
wl-clipboard
|
||||||
|
@ -36,7 +36,9 @@
|
||||||
polkit_gnome
|
polkit_gnome
|
||||||
];
|
];
|
||||||
|
|
||||||
hj.".config/hypr/hyprland.conf".text =
|
wayland.windowManager.hyprland = {
|
||||||
|
enable = true;
|
||||||
|
settings =
|
||||||
let
|
let
|
||||||
inherit (lib) getExe getExe';
|
inherit (lib) getExe getExe';
|
||||||
keys = [
|
keys = [
|
||||||
|
@ -53,7 +55,7 @@
|
||||||
];
|
];
|
||||||
in
|
in
|
||||||
with pkgs;
|
with pkgs;
|
||||||
_utils.toHyprconf {
|
{
|
||||||
"$mod" = "SUPER";
|
"$mod" = "SUPER";
|
||||||
"$wl-paste" = getExe' wl-clipboard "wl-paste";
|
"$wl-paste" = getExe' wl-clipboard "wl-paste";
|
||||||
"$wpctl" = getExe' wireplumber "wpctl";
|
"$wpctl" = getExe' wireplumber "wpctl";
|
||||||
|
@ -183,4 +185,6 @@
|
||||||
"$mod SHIFT, mouse:272, resizewindow"
|
"$mod SHIFT, mouse:272, resizewindow"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
{ pkgs, ... }:
|
# home-manager module
|
||||||
{
|
{
|
||||||
environment.systemPackages = [ pkgs.neovide ];
|
programs.neovide = {
|
||||||
|
enable = true;
|
||||||
hj.".config/neovide/config.toml".text = "fork = true";
|
settings.fork = true;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,8 +8,8 @@ let
|
||||||
toml = pkgs.formats.toml { };
|
toml = pkgs.formats.toml { };
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
hj.".cargo/config.toml".source = toml.generate "config.toml" {
|
hm.home.file.".cargo/config.toml".source = toml.generate "config.toml" {
|
||||||
build.target-dir = "${config.hjem.users.leo.directory}/.cargo/target";
|
build.target-dir = "${config.hm.home.homeDirectory}/.cargo/target";
|
||||||
|
|
||||||
target.x86_64-unknown-linux-gnu = {
|
target.x86_64-unknown-linux-gnu = {
|
||||||
linker = "${lib.getExe pkgs.clang}";
|
linker = "${lib.getExe pkgs.clang}";
|
||||||
|
|
|
@ -1,24 +1,13 @@
|
||||||
{ lib, pkgs, ... }:
|
|
||||||
let
|
|
||||||
toml = pkgs.formats.toml { };
|
|
||||||
in
|
|
||||||
{
|
{
|
||||||
environment.systemPackages = [ pkgs.starship ];
|
hm.programs.starship = {
|
||||||
|
enable = true;
|
||||||
hj = {
|
settings = {
|
||||||
".config/starship.toml" =
|
|
||||||
toml.generate "starship.toml" {
|
|
||||||
add_newline = false;
|
add_newline = false;
|
||||||
|
|
||||||
directory = {
|
directory = {
|
||||||
truncation_length = 3;
|
truncation_length = 3;
|
||||||
truncation_symbol = "…/";
|
truncation_symbol = "…/";
|
||||||
};
|
};
|
||||||
}
|
} // (import ./nerd-font.nix);
|
||||||
// (import ./nerd-font.nix);
|
|
||||||
|
|
||||||
".config/fish/config.fish".text = lib.mkAfter ''
|
|
||||||
starship init fish | source
|
|
||||||
'';
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,12 +5,12 @@
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
environment.systemPackages = [ pkgs.waybar ];
|
hm.programs.waybar = {
|
||||||
|
enable = true;
|
||||||
|
style = ./style.css;
|
||||||
|
|
||||||
hj = {
|
settings = [
|
||||||
".config/waybar/style.css".source = ./style.css;
|
{
|
||||||
|
|
||||||
".config/waybar/config".text = builtins.toJSON {
|
|
||||||
position = "bottom";
|
position = "bottom";
|
||||||
layer = "top";
|
layer = "top";
|
||||||
height = 24;
|
height = 24;
|
||||||
|
@ -91,6 +91,7 @@
|
||||||
return-type = "";
|
return-type = "";
|
||||||
interval = 2;
|
interval = 2;
|
||||||
};
|
};
|
||||||
};
|
}
|
||||||
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ pkgs, _utils, ... }:
|
{ pkgs, ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./nvidia.nix
|
./nvidia.nix
|
||||||
|
@ -7,16 +7,20 @@
|
||||||
|
|
||||||
services.xserver.videoDrivers = [ "amdgpu" ];
|
services.xserver.videoDrivers = [ "amdgpu" ];
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
hm = {
|
||||||
|
home.packages = with pkgs; [
|
||||||
wineWowPackages.waylandFull
|
wineWowPackages.waylandFull
|
||||||
];
|
];
|
||||||
|
|
||||||
hj.".config/hypr/hyprland.conf".text = _utils.toHyprconf {
|
wayland.windowManager.hyprland.settings = {
|
||||||
monitor = "DP-1,3840x2160@144,0x0,1.5";
|
monitor = "DP-1,3840x2160@144,0x0,1.5";
|
||||||
|
|
||||||
xwayland.force_zero_scaling = true;
|
xwayland.force_zero_scaling = true;
|
||||||
|
|
||||||
env = [
|
env = [
|
||||||
"GDK_SCALE,1.5"
|
"GDK_SCALE,1.5"
|
||||||
"XCURSOR_SIZE,24"
|
"XCURSOR_SIZE,24"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
lib,
|
lib,
|
||||||
pkgs,
|
pkgs,
|
||||||
config,
|
config,
|
||||||
_utils,
|
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
|
@ -38,12 +37,10 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
hj.".config/hypr/hyprland.conf".text = _utils.toHyprconf {
|
hm.wayland.windowManager.hyprland.settings.env = [
|
||||||
env = [
|
|
||||||
"XDG_SESSION_TYPE,wayland"
|
"XDG_SESSION_TYPE,wayland"
|
||||||
"GBM_BACKEND,nvidia-drm"
|
"GBM_BACKEND,nvidia-drm"
|
||||||
"__GLX_VENDOR_LIBRARY_NAME,nvidia"
|
"__GLX_VENDOR_LIBRARY_NAME,nvidia"
|
||||||
"NVD_BACKEND,direct"
|
"NVD_BACKEND,direct"
|
||||||
];
|
];
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -29,14 +29,9 @@ in
|
||||||
|
|
||||||
i18n.defaultLocale = lib.mkForce "fr_FR.UTF-8";
|
i18n.defaultLocale = lib.mkForce "fr_FR.UTF-8";
|
||||||
|
|
||||||
hj = {
|
hm.programs = {
|
||||||
".gitconfig".text = lib.generators.toGitINI {
|
git.includes = [ { path = "~/.config/git/work_config"; } ];
|
||||||
include.path = "~/.config/git/work_config";
|
ssh.includes = [ "work_config" ];
|
||||||
};
|
|
||||||
|
|
||||||
".ssh/config".text = lib.mkBefore ''
|
|
||||||
Include work_config
|
|
||||||
'';
|
|
||||||
};
|
};
|
||||||
|
|
||||||
networking.firewall.allowedTCPPorts = [ 8000 ];
|
networking.firewall.allowedTCPPorts = [ 8000 ];
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue