Compare commits
22 commits
0b49ad2e92
...
ef733f10a3
Author | SHA1 | Date | |
---|---|---|---|
ef733f10a3 | |||
0a4a477c25 | |||
720bd2f391 | |||
3ebb38d6d4 | |||
eeb7f1fe5a | |||
35557352cb | |||
c7e8ec0628 | |||
308d6fca81 | |||
0b053e3db2 | |||
fc30593e0a | |||
7c5882f2c5 | |||
d5ca13547f | |||
94fce63f6f | |||
6a8beb894d | |||
89cc43f245 | |||
2e22c734de | |||
c1ee8f9d50 | |||
a359d8c06e | |||
e446394b83 | |||
40da37234a | |||
e93c365d1b | |||
93bb0be9be |
18 changed files with 179 additions and 158 deletions
76
flake.lock
generated
76
flake.lock
generated
|
@ -22,12 +22,15 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils": {
|
"flake-utils": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems"
|
||||||
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1659877975,
|
"lastModified": 1731533236,
|
||||||
"narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=",
|
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0",
|
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -43,11 +46,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1748955489,
|
"lastModified": 1755810213,
|
||||||
"narHash": "sha256-OmZXyW2g5qIuo5Te74McwR0TwauCO2sF3/SjGDVuxyg=",
|
"narHash": "sha256-QdenO8f0PTg+tC6HuSvngKcbRZA5oZKmjUT+MXKOLQg=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "bb846c031be68a96466b683be32704ef6e07b159",
|
"rev": "6911d3e7f475f7b3558b4f5a6aba90fa86099baa",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -61,10 +64,10 @@
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": "nixpkgs"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1755552883,
|
"lastModified": 1755761639,
|
||||||
"narHash": "sha256-wdVtGyN8JkpByIiNwSevZMBy02vWwCPNaD/caCQJ6aM=",
|
"narHash": "sha256-rEvyLY/3u1RfxsySyqScM3peGUVNJNmGApHVyIY7Cx0=",
|
||||||
"ref": "main",
|
"ref": "main",
|
||||||
"rev": "1ccd39ac6de09a7a73a9a36ec1c34f70cb5edfe2",
|
"rev": "d73f46baaff8c9fff2a7b11c97413ea3fb171584",
|
||||||
"shallow": true,
|
"shallow": true,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "ssh://git@git.epha.se:24422/ephase/nix-private.git"
|
"url": "ssh://git@git.epha.se:24422/ephase/nix-private.git"
|
||||||
|
@ -84,11 +87,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1713543440,
|
"lastModified": 1752054764,
|
||||||
"narHash": "sha256-lnzZQYG0+EXl/6NkGpyIz+FEOc/DSEG57AP1VsdeNrM=",
|
"narHash": "sha256-Ob/HuUhANoDs+nvYqyTKrkcPXf4ZgXoqMTQoCK0RFgQ=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nixGL",
|
"repo": "nixGL",
|
||||||
"rev": "310f8e49a149e4c9ea52f1adf70cdc768ec53f8a",
|
"rev": "a8e1ce7d49a149ed70df676785b07f63288f53c5",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -113,11 +116,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1748693115,
|
"lastModified": 1755615617,
|
||||||
"narHash": "sha256-StSrWhklmDuXT93yc3GrTlb0cKSS0agTAxMGjLKAsY8=",
|
"narHash": "sha256-HMwfAJBdrr8wXAkbGhtcby1zGFvs+StOp19xNsbqdOg=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "910796cabe436259a29a72e8d3f5e180fc6dfacc",
|
"rev": "20075955deac2583bb12f07151c2df830ef346b4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -128,11 +131,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_3": {
|
"nixpkgs_3": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1748693115,
|
"lastModified": 1755615617,
|
||||||
"narHash": "sha256-StSrWhklmDuXT93yc3GrTlb0cKSS0agTAxMGjLKAsY8=",
|
"narHash": "sha256-HMwfAJBdrr8wXAkbGhtcby1zGFvs+StOp19xNsbqdOg=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "910796cabe436259a29a72e8d3f5e180fc6dfacc",
|
"rev": "20075955deac2583bb12f07151c2df830ef346b4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -145,15 +148,14 @@
|
||||||
"nur": {
|
"nur": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-parts": "flake-parts",
|
"flake-parts": "flake-parts",
|
||||||
"nixpkgs": "nixpkgs_3",
|
"nixpkgs": "nixpkgs_3"
|
||||||
"treefmt-nix": "treefmt-nix"
|
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1748973087,
|
"lastModified": 1755877557,
|
||||||
"narHash": "sha256-ZN0XKKdCBC9eLeog7qYhfGPbajkPtQPdlxp/dhwONw4=",
|
"narHash": "sha256-AjUqNCIgjQKfhvH+HUXZQLlSDiRTFQPSPN8Ws/O7mVQ=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "NUR",
|
"repo": "NUR",
|
||||||
"rev": "90add46380908ba4395f5f1dfec84224a3b0d4b9",
|
"rev": "332abf45be8133422a97e134b35782400ffc65bd",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -179,11 +181,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1747603214,
|
"lastModified": 1754988908,
|
||||||
"narHash": "sha256-lAblXm0VwifYCJ/ILPXJwlz0qNY07DDYdLD+9H+Wc8o=",
|
"narHash": "sha256-t+voe2961vCgrzPFtZxha0/kmFSHFobzF00sT8p9h0U=",
|
||||||
"owner": "Mic92",
|
"owner": "Mic92",
|
||||||
"repo": "sops-nix",
|
"repo": "sops-nix",
|
||||||
"rev": "8d215e1c981be3aa37e47aeabd4e61bb069548fd",
|
"rev": "3223c7a92724b5d804e9988c6b447a0d09017d48",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -192,24 +194,18 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"treefmt-nix": {
|
"systems": {
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": [
|
|
||||||
"nur",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1733222881,
|
"lastModified": 1681028828,
|
||||||
"narHash": "sha256-JIPcz1PrpXUCbaccEnrcUS8jjEb/1vJbZz5KkobyFdM=",
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
"owner": "numtide",
|
"owner": "nix-systems",
|
||||||
"repo": "treefmt-nix",
|
"repo": "default",
|
||||||
"rev": "49717b5af6f80172275d47a418c9719a31a78b53",
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "numtide",
|
"owner": "nix-systems",
|
||||||
"repo": "treefmt-nix",
|
"repo": "default",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -51,11 +51,12 @@
|
||||||
overlays = [ nixgl.overlay ];
|
overlays = [ nixgl.overlay ];
|
||||||
};
|
};
|
||||||
extraSpecialArgs = {
|
extraSpecialArgs = {
|
||||||
inherit stateVersion inputs;
|
inherit stateVersion inputs nixgl;
|
||||||
hostname = hostname;
|
hostname = hostname;
|
||||||
username = username;
|
username = username;
|
||||||
};
|
};
|
||||||
modules = [
|
modules = [
|
||||||
|
{ nixpkgs.overlays = [ nixgl.overlay ];}
|
||||||
./home-manager/default.nix
|
./home-manager/default.nix
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ inputs, lib, stateVersion, username, hostname, ... }:
|
{ inputs, lib, stateVersion, username, hostname, nixgl, ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
inputs.sops-nix.homeManagerModules.sops
|
inputs.sops-nix.homeManagerModules.sops
|
||||||
|
@ -12,7 +12,9 @@
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
programs.home-manager.enable = true;
|
programs.home-manager.enable = true;
|
||||||
fonts.fontconfig.enable = true;
|
fonts.fontconfig.enable = true;
|
||||||
|
nixGL.packages = nixgl.packages;
|
||||||
|
nixGL.defaultWrapper = "mesa";
|
||||||
|
nixGL.installScripts = ["mesa"];
|
||||||
home = {
|
home = {
|
||||||
inherit stateVersion username;
|
inherit stateVersion username;
|
||||||
homeDirectory = "/home/${username}";
|
homeDirectory = "/home/${username}";
|
||||||
|
|
|
@ -24,14 +24,8 @@
|
||||||
kdenlive.enable = false;
|
kdenlive.enable = false;
|
||||||
mpv.enable = false;
|
mpv.enable = false;
|
||||||
};
|
};
|
||||||
web.firefox = {
|
web.firefox.enable = true;
|
||||||
enable = true;
|
web.qutebrowser.enable = true;
|
||||||
enableNixGL = true;
|
|
||||||
};
|
|
||||||
web.qutebrowser = {
|
|
||||||
enable = true;
|
|
||||||
enableNixGL = true;
|
|
||||||
};
|
|
||||||
web.webcord.enable = false;
|
web.webcord.enable = false;
|
||||||
gaming.lutris.enable = false;
|
gaming.lutris.enable = false;
|
||||||
desktop.sway = {
|
desktop.sway = {
|
||||||
|
|
|
@ -2,10 +2,7 @@
|
||||||
config.modules = {
|
config.modules = {
|
||||||
application = {
|
application = {
|
||||||
zathura.enable = true;
|
zathura.enable = true;
|
||||||
foot = {
|
foot.enable = true;
|
||||||
enable = true;
|
|
||||||
font-size = "10.5";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
audio.cmus.enable = true;
|
audio.cmus.enable = true;
|
||||||
cli = {
|
cli = {
|
||||||
|
@ -33,9 +30,22 @@
|
||||||
zellij.enable = true;
|
zellij.enable = true;
|
||||||
zsh.enable = true;
|
zsh.enable = true;
|
||||||
};
|
};
|
||||||
|
desktop.sway = {
|
||||||
|
enable = true;
|
||||||
|
kanshi = true;
|
||||||
|
swaylock.useNullPackage = true;
|
||||||
|
waybar = {
|
||||||
|
laptop = true;
|
||||||
|
gpuThermal.enable = false;
|
||||||
|
cpuThermal = {
|
||||||
|
hwmonPathAbs = "/sys/devices/platform/coretemp.0/hwmon/";
|
||||||
|
inputFilename = "temp1_input";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
xdg.useDistributionPortals = true;
|
||||||
|
};
|
||||||
web.firefox = {
|
web.firefox = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableNixGL = true;
|
|
||||||
optionalExtensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
optionalExtensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
||||||
okta-browser-plugin
|
okta-browser-plugin
|
||||||
];
|
];
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ pkgs, ... }:
|
{ pkgs, config, ... }:
|
||||||
{
|
{
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
dejavu_fonts
|
dejavu_fonts
|
||||||
|
@ -13,7 +13,23 @@
|
||||||
noto-fonts-cjk-sans
|
noto-fonts-cjk-sans
|
||||||
slurp
|
slurp
|
||||||
wl-clipboard
|
wl-clipboard
|
||||||
|
(config.lib.nixGL.wrap ungoogled-chromium)
|
||||||
|
(config.lib.nixGL.wrap slack)
|
||||||
];
|
];
|
||||||
targets.genericLinux.enable = true;
|
targets.genericLinux.enable = true;
|
||||||
xdg.mime.enable = true;
|
xdg.mime.enable = true;
|
||||||
|
wayland.windowManager.sway.config.input = {
|
||||||
|
"1:1:AT_Translated_Set_2_keyboard" = {
|
||||||
|
xkb_layout = "us";
|
||||||
|
xkb_variant = "altgr-intl";
|
||||||
|
};
|
||||||
|
"65261:8800:KBDFans_DZ60" = {
|
||||||
|
xkb_layout = "us";
|
||||||
|
xkb_variant = "altgr-intl";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
home.sessionVariables = {
|
||||||
|
SSH_AUTH_SOCK = ''$XDG_RUNTIME_DIR/gnupg/S.gpg-agent.ssh'';
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,7 +31,7 @@ let
|
||||||
version = "main";
|
version = "main";
|
||||||
src = builtins.fetchGit {
|
src = builtins.fetchGit {
|
||||||
url = "https://github.com/tonychg/nvim-k8s-lsp.git";
|
url = "https://github.com/tonychg/nvim-k8s-lsp.git";
|
||||||
rev = "930aa20bcd54f2d6f16040e98ff4068b292c6c7f";
|
rev = "1dffda65f4fe117f67514ed5d93b18f62be1ef24";
|
||||||
ref = "main";
|
ref = "main";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -167,6 +167,7 @@ in
|
||||||
p.cpp
|
p.cpp
|
||||||
p.cmake
|
p.cmake
|
||||||
p.dockerfile
|
p.dockerfile
|
||||||
|
p.go
|
||||||
p.hcl
|
p.hcl
|
||||||
p.helm
|
p.helm
|
||||||
p.javascript
|
p.javascript
|
||||||
|
|
|
@ -10,14 +10,14 @@ in
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
programs.zsh = {
|
programs.zsh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
dotDir = ".config/zsh";
|
dotDir = "${config.xdg.configHome}/zsh";
|
||||||
defaultKeymap = "viins";
|
defaultKeymap = "viins";
|
||||||
enableCompletion = true;
|
enableCompletion = true;
|
||||||
history = {
|
history = {
|
||||||
ignoreAllDups = true;
|
ignoreAllDups = true;
|
||||||
save = 10000;
|
save = 10000;
|
||||||
share = true;
|
share = true;
|
||||||
path = "$HOME/.local/share/zsh/history";
|
path = "${config.xdg.dataHome }/zsh/history";
|
||||||
};
|
};
|
||||||
historySubstringSearch = {
|
historySubstringSearch = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
@ -108,7 +108,7 @@ in
|
||||||
};
|
};
|
||||||
}];
|
}];
|
||||||
localVariables = {
|
localVariables = {
|
||||||
BASE16_THEME = "$HOME/.config/zsh/plugins/base16";
|
BASE16_THEME = "${config.xdg.configHome}/zsh/plugins/base16";
|
||||||
# Make ESC key more reactive to go to normal mode
|
# Make ESC key more reactive to go to normal mode
|
||||||
KEYTIMEOUT = 1;
|
KEYTIMEOUT = 1;
|
||||||
};
|
};
|
||||||
|
|
|
@ -13,6 +13,26 @@ in
|
||||||
description = "configure laptop mode";
|
description = "configure laptop mode";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
swaylock.useNullPackage = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = ''
|
||||||
|
Use null package to not install swaylock with Nix
|
||||||
|
Useful when using Home-Manager on third-party distribution to avoid
|
||||||
|
problem with PAM
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
xdg.useDistributionPortals = mkOption {
|
||||||
|
type = types.bool;
|
||||||
|
default = false;
|
||||||
|
description = ''
|
||||||
|
This prevent installing xdg-desktop-portal from nixpkgs. These
|
||||||
|
Useful when using Home-Manager on third-party distribution with old
|
||||||
|
version of portals (coucou Ubuntu LTS)
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
wallpapers = {
|
wallpapers = {
|
||||||
lockscreen = mkOption {
|
lockscreen = mkOption {
|
||||||
type = types.str;
|
type = types.str;
|
||||||
|
@ -114,7 +134,7 @@ in
|
||||||
};
|
};
|
||||||
iconTheme = {
|
iconTheme = {
|
||||||
name = "Papirus Dark";
|
name = "Papirus Dark";
|
||||||
package = pkgs.papirus-icon-theme;
|
package = pkgs.papirus-icon-theme;
|
||||||
};
|
};
|
||||||
font = {
|
font = {
|
||||||
name = "Deja Vu Sans";
|
name = "Deja Vu Sans";
|
||||||
|
@ -133,8 +153,10 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Avoid pixelated effect for QT application with fractionnal scaling
|
|
||||||
home.sessionVariables = {
|
home.sessionVariables = {
|
||||||
|
# Use wayland for chrom{e|ium} based crap
|
||||||
|
NIXOS_OZONE_WL = "1";
|
||||||
|
# Avoid pixelated effect for QT application with fractionnal scaling
|
||||||
QT_SCALE_FACTOR_ROUNDING_POLICY = "RoundPreferFloor";
|
QT_SCALE_FACTOR_ROUNDING_POLICY = "RoundPreferFloor";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -158,6 +180,34 @@ in
|
||||||
desktop = "${config.home.homeDirectory}/documents";
|
desktop = "${config.home.homeDirectory}/documents";
|
||||||
publicShare = "${config.home.homeDirectory}/tmp/public";
|
publicShare = "${config.home.homeDirectory}/tmp/public";
|
||||||
};
|
};
|
||||||
|
portal = mkIf (cfg.xdg.useDistributionPortals == false) {
|
||||||
|
enable = true;
|
||||||
|
extraPortals = with pkgs; [
|
||||||
|
xdg-desktop-portal-wlr
|
||||||
|
xdg-desktop-portal-gtk
|
||||||
|
];
|
||||||
|
xdgOpenUsePortal = true;
|
||||||
|
config = {
|
||||||
|
sway = {
|
||||||
|
default = [
|
||||||
|
"wlr"
|
||||||
|
"gtk"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# When using `useDistributionPackage`, create wlr configuration to let user
|
||||||
|
# choose the right screen. This is a workarount to not have to configure
|
||||||
|
# it manually.
|
||||||
|
home.file = mkIf cfg.xdg.useDistributionPortals {
|
||||||
|
"${config.xdg.configHome}/xdg-desktop-portal-wlr/config".text = ''
|
||||||
|
[screencast]
|
||||||
|
max_fps=30
|
||||||
|
chooser_type=simple
|
||||||
|
chooser_cmd=${pkgs.slurp}/bin/slurp -f %o -or
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,7 +10,7 @@ with lib;
|
||||||
profile.name = "standalone";
|
profile.name = "standalone";
|
||||||
profile.outputs = [
|
profile.outputs = [
|
||||||
{
|
{
|
||||||
criteria = "eDP-1";
|
criteria = "eDP-1";
|
||||||
scale = 1.33;
|
scale = 1.33;
|
||||||
status = "enable";
|
status = "enable";
|
||||||
}
|
}
|
||||||
|
@ -20,13 +20,13 @@ with lib;
|
||||||
profile.name = "home";
|
profile.name = "home";
|
||||||
profile.outputs = [
|
profile.outputs = [
|
||||||
{
|
{
|
||||||
criteria = "Iiyama North America PL2792UH 1166310803122";
|
criteria = "Iiyama North America PL2792UH 1166310803122";
|
||||||
mode = "3840x2160";
|
mode = "3840x2160";
|
||||||
position = "1235,0";
|
position = "1235,0";
|
||||||
scale = 1.75;
|
scale = 1.75;
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
criteria = "Iiyama North America PL2792UH 1176923201598";
|
criteria = "Iiyama North America PL2792UH 1176923201598";
|
||||||
mode = "3840x2160";
|
mode = "3840x2160";
|
||||||
position = "0,0";
|
position = "0,0";
|
||||||
transform = "90";
|
transform = "90";
|
||||||
|
@ -42,18 +42,16 @@ with lib;
|
||||||
profile.name = "work";
|
profile.name = "work";
|
||||||
profile.outputs = [
|
profile.outputs = [
|
||||||
{
|
{
|
||||||
criteria = "Iiyama North America PL2480H 11183M2807013";
|
criteria = "Iiyama North America PL2792QN 1179214201663";
|
||||||
mode = "1920x1080";
|
mode = "2560x1440";
|
||||||
position = "0,0";
|
position = "1450,0";
|
||||||
}
|
scale = 1.15;
|
||||||
{
|
|
||||||
criteria = "Iiyama North America PL2480H 11183M2807016";
|
|
||||||
mode = "1920x1080";
|
|
||||||
position = "1920,0";
|
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
criteria = "eDP-1";
|
criteria = "BOE 0x0A95 Unknown";
|
||||||
status = "disable";
|
mode = "1920x1080";
|
||||||
|
position = "0,0";
|
||||||
|
scale = 1.325;
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,6 +6,7 @@ in
|
||||||
{
|
{
|
||||||
config = mkIf config.modules.desktop.sway.enable {
|
config = mkIf config.modules.desktop.sway.enable {
|
||||||
wayland.windowManager.sway = {
|
wayland.windowManager.sway = {
|
||||||
|
package = config.lib.nixGL.wrap pkgs.sway;
|
||||||
enable = true;
|
enable = true;
|
||||||
wrapperFeatures.gtk = true;
|
wrapperFeatures.gtk = true;
|
||||||
systemd.enable = true;
|
systemd.enable = true;
|
||||||
|
@ -75,7 +76,7 @@ in
|
||||||
"${mod}+Alt+k" = "kill";
|
"${mod}+Alt+k" = "kill";
|
||||||
"${mod}+Alt+c" = "reload";
|
"${mod}+Alt+c" = "reload";
|
||||||
"${mod}+Alt+Backspace" = "exec swaynag -t warning -m 'Exit sway?' -B 'Yes' 'swaymsg exit'";
|
"${mod}+Alt+Backspace" = "exec swaynag -t warning -m 'Exit sway?' -B 'Yes' 'swaymsg exit'";
|
||||||
"${mod}+Alt+l" = "exec ${pkgs.swaylock}/bin/swaylock";
|
"${mod}+Alt+l" = if cfg.swaylock.useNullPackage then "exec swaylock" else "exec ${pkgs.swaylock}/bin/swaylock";
|
||||||
# Manage windows placement
|
# Manage windows placement
|
||||||
"${mod}+b" = "splith";
|
"${mod}+b" = "splith";
|
||||||
"${mod}+v" = "splitv";
|
"${mod}+v" = "splitv";
|
||||||
|
|
|
@ -10,7 +10,7 @@ in
|
||||||
timeouts = [
|
timeouts = [
|
||||||
{
|
{
|
||||||
timeout = 300;
|
timeout = 300;
|
||||||
command = "${pkgs.swaylock}/bin/swaylock -f";
|
command = if cfg.swaylock.useNullPackage then ''/usr/bin/swaylock -f'' else ''${pkgs.swaylock}/bin/swaylock -f'';
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
timeout = 600;
|
timeout = 600;
|
||||||
|
@ -21,11 +21,11 @@ in
|
||||||
events = [
|
events = [
|
||||||
{
|
{
|
||||||
event = "before-sleep";
|
event = "before-sleep";
|
||||||
command = "${pkgs.swaylock}/bin/swaylock -f";
|
command = if cfg.swaylock.useNullPackage then ''/usr/bin/swaylock -f'' else ''${pkgs.swaylock}/bin/swaylock -f'';
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
event = "lock";
|
event = "lock";
|
||||||
command = "${pkgs.swaylock}/bin/swaylock -f";
|
command = if cfg.swaylock.useNullPackage then ''usr/bin/swaylock -f'' else ''${pkgs.swaylock}/bin/swaylock -f'';
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ config, lib, pkgs, ... }:
|
{ config, lib, pkgs, ... }:
|
||||||
with lib;
|
with lib;
|
||||||
let
|
let
|
||||||
cfg = config.modules.desktop.sway;
|
cfg = config.modules.desktop.sway;
|
||||||
|
@ -6,9 +6,10 @@ in
|
||||||
{
|
{
|
||||||
config = mkIf config.modules.desktop.sway.enable {
|
config = mkIf config.modules.desktop.sway.enable {
|
||||||
programs.swaylock = {
|
programs.swaylock = {
|
||||||
|
package = if cfg.swaylock.useNullPackage then null else pkgs.swaylock;
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
image = "${cfg.wallpapers.lockscreen}";
|
image = if cfg.wallpapers.lockscreen != "" then "${cfg.wallpapers.lockscreen}" else false;
|
||||||
scaling = "center";
|
scaling = "center";
|
||||||
color = "000000";
|
color = "000000";
|
||||||
indicator-radius = 70;
|
indicator-radius = 70;
|
||||||
|
@ -22,7 +23,7 @@ in
|
||||||
ring-wrong-color = "f268b3";
|
ring-wrong-color = "f268b3";
|
||||||
inside-wrong-color = "f268b3cc";
|
inside-wrong-color = "f268b3cc";
|
||||||
key-hl-color = "1cd180";
|
key-hl-color = "1cd180";
|
||||||
caps-lock-key-hl-color = "1cd180";
|
caps-lock-key-hl-color = "1cd180";
|
||||||
caps-lock-bs-hl-color = "f268b3";
|
caps-lock-bs-hl-color = "f268b3";
|
||||||
bs-hl-color = "f268b3ff";
|
bs-hl-color = "f268b3ff";
|
||||||
separator-color = "00000000";
|
separator-color = "00000000";
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{lib, config, ...}:
|
{lib, config, ...}:
|
||||||
with lib;
|
with lib;
|
||||||
let
|
let
|
||||||
cfg = config.modules.desktop.sway;
|
cfg = config.modules.desktop.sway;
|
||||||
|
@ -22,7 +22,7 @@ in
|
||||||
"sway/mode"
|
"sway/mode"
|
||||||
];
|
];
|
||||||
modules-right = [
|
modules-right = [
|
||||||
"network"
|
"network"
|
||||||
"custom/sep"
|
"custom/sep"
|
||||||
] ++ (
|
] ++ (
|
||||||
if cfg.waybar.laptop then [
|
if cfg.waybar.laptop then [
|
||||||
|
@ -38,15 +38,15 @@ in
|
||||||
"memory"
|
"memory"
|
||||||
"cpu"
|
"cpu"
|
||||||
"temperature"
|
"temperature"
|
||||||
"custom/sep"
|
"custom/sep"
|
||||||
] ++ (
|
] ++ (
|
||||||
if cfg.waybar.gpuThermal.enable then [
|
if cfg.waybar.gpuThermal.enable then [
|
||||||
"temperature#gpu"
|
"temperature#gpu"
|
||||||
"custom/sep"
|
"custom/sep"
|
||||||
]
|
]
|
||||||
else [
|
else [
|
||||||
]
|
]
|
||||||
) ++
|
) ++
|
||||||
[
|
[
|
||||||
"pulseaudio"
|
"pulseaudio"
|
||||||
"custom/sep"
|
"custom/sep"
|
||||||
|
@ -101,8 +101,8 @@ in
|
||||||
"format-icons" = {
|
"format-icons" = {
|
||||||
"car" = "";
|
"car" = "";
|
||||||
"default" = "";
|
"default" = "";
|
||||||
"handsfree" = "";
|
"hands-free" = "";
|
||||||
"headphones" = "";
|
"headphone" = "";
|
||||||
"headset" = "";
|
"headset" = "";
|
||||||
"phone" = "";
|
"phone" = "";
|
||||||
"portable" = "";
|
"portable" = "";
|
||||||
|
|
|
@ -29,11 +29,6 @@ in
|
||||||
description = "Optional Firefox Plugins to install";
|
description = "Optional Firefox Plugins to install";
|
||||||
};
|
};
|
||||||
|
|
||||||
enableNixGL = mkOption {
|
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = "Use NixGL to start Firefox";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
programs.browserpass = {
|
programs.browserpass = {
|
||||||
|
@ -47,24 +42,6 @@ in
|
||||||
"x-scheme-handler/about" = "firefox.desktop";
|
"x-scheme-handler/about" = "firefox.desktop";
|
||||||
"x-scheme-handler/unknown" = "firefox.desktop";
|
"x-scheme-handler/unknown" = "firefox.desktop";
|
||||||
};
|
};
|
||||||
xdg.desktopEntries."firefox" = mkIf cfg.enableNixGL {
|
|
||||||
name = "Firefox NixGL Powered";
|
|
||||||
exec = "${pkgs.nixgl.nixGLMesa}/bin/nixGLMesa firefox %U";
|
|
||||||
icon = "firefox";
|
|
||||||
terminal = false;
|
|
||||||
type = "Application";
|
|
||||||
startupNotify = true;
|
|
||||||
actions = {
|
|
||||||
"new-private-window" = {
|
|
||||||
exec = "${pkgs.nixgl.nixGLMesa}/bin/nixGLMesa firefox --private-window %U";
|
|
||||||
name = "New Private Window";
|
|
||||||
};
|
|
||||||
"new-window" = {
|
|
||||||
exec = "${pkgs.nixgl.nixGLMesa}/bin/nixGLMesa firefox --new-window %U";
|
|
||||||
name = "New Window";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
xdg.configFile."tridactyl/tridactylrc".text = ''
|
xdg.configFile."tridactyl/tridactylrc".text = ''
|
||||||
sanitize tridactyllocal tridactylsync
|
sanitize tridactyllocal tridactylsync
|
||||||
|
@ -93,13 +70,13 @@ in
|
||||||
allExtensions = cfg.baseExtensions ++ cfg.optionalExtensions;
|
allExtensions = cfg.baseExtensions ++ cfg.optionalExtensions;
|
||||||
in {
|
in {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.wrapFirefox pkgs.firefox-unwrapped {
|
package = config.lib.nixGL.wrap ( pkgs.wrapFirefox pkgs.firefox-unwrapped {
|
||||||
nativeMessagingHosts = [
|
nativeMessagingHosts = [
|
||||||
# Tridactyl native connector
|
# Tridactyl native connector
|
||||||
pkgs.tridactyl-native
|
pkgs.tridactyl-native
|
||||||
pkgs.browserpass
|
pkgs.browserpass
|
||||||
];
|
];
|
||||||
};
|
});
|
||||||
profiles.ephase = {
|
profiles.ephase = {
|
||||||
id = 0;
|
id = 0;
|
||||||
name = "ephase";
|
name = "ephase";
|
||||||
|
|
|
@ -6,35 +6,13 @@ in
|
||||||
{
|
{
|
||||||
options.modules.web.qutebrowser = {
|
options.modules.web.qutebrowser = {
|
||||||
enable = mkEnableOption "enable Qutebrowser web browser";
|
enable = mkEnableOption "enable Qutebrowser web browser";
|
||||||
|
|
||||||
enableNixGL = mkOption {
|
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = "Use NixGL to start Qutebrowser";
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
};
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
xdg.desktopEntries."org.qutebrowser.qutebrowser" = mkIf cfg.enableNixGL {
|
|
||||||
name = "QuteBrowser NixGL Powered";
|
|
||||||
|
|
||||||
exec = "${pkgs.nixgl.nixGLMesa}/bin/nixGLMesa qutebrowser %u";
|
|
||||||
icon = "qutebrowser";
|
|
||||||
terminal = false;
|
|
||||||
type = "Application";
|
|
||||||
startupNotify = true;
|
|
||||||
actions = {
|
|
||||||
"preference" = {
|
|
||||||
exec = "${pkgs.nixgl.nixGLMesa}/bin/nixGLMesa qutebrowser \"qute://settings\"";
|
|
||||||
name = "Preferences";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
programs.qutebrowser = {
|
programs.qutebrowser = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
package = config.lib.nixGL.wrap pkgs.qutebrowser;
|
||||||
loadAutoconfig = true;
|
loadAutoconfig = true;
|
||||||
settings = {
|
settings = {
|
||||||
|
|
||||||
qt.args = [
|
qt.args = [
|
||||||
"autoplay-policy=user-gesture-required"
|
"autoplay-policy=user-gesture-required"
|
||||||
"ignore-gpu-blocklist"
|
"ignore-gpu-blocklist"
|
||||||
|
|
|
@ -16,20 +16,5 @@ in
|
||||||
alsa.support32Bit = true;
|
alsa.support32Bit = true;
|
||||||
pulse.enable = true;
|
pulse.enable = true;
|
||||||
};
|
};
|
||||||
xdg.portal = {
|
|
||||||
enable = true;
|
|
||||||
wlr.enable = true;
|
|
||||||
# gtk portal needed to make gtk apps happy
|
|
||||||
extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
|
|
||||||
config = {
|
|
||||||
common = {
|
|
||||||
default = [
|
|
||||||
"gtk"
|
|
||||||
];
|
|
||||||
"org.freedesktop.impl.portal.ScreenCast" = "wlr";
|
|
||||||
"org.freedesktop.impl.portal.Screenshot" = "wlr";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,10 +1,21 @@
|
||||||
{ inputs, pkgs, ...}:
|
{ inputs, pkgs, ...}:
|
||||||
{
|
{
|
||||||
nixpkgs.overlays = [
|
nixpkgs.overlays = [
|
||||||
(final: prev: {
|
(final: prev: {
|
||||||
qutebrowser = prev.qutebrowser.override {
|
qutebrowser = prev.qutebrowser.override {
|
||||||
enableWideVine = if pkgs.system == "x86_64-linux" then true else false;
|
enableWideVine = if pkgs.system == "x86_64-linux" then true else false;
|
||||||
};
|
# Get Widevine friom slackware as google CDN seems to not working anymore
|
||||||
|
# TODO: Remove this when resolved upstream
|
||||||
|
# https://github.com/NixOS/nixpkgs/issues/435671
|
||||||
|
widevine-cdm = pkgs.widevine-cdm.overrideAttrs (oldAttrs: {
|
||||||
|
src = pkgs.fetchzip {
|
||||||
|
url = "https://alien.slackbook.org/slackbuilds/chromium-widevine-plugin/build/4.10.2891.0-linux-x64.zip" ;
|
||||||
|
hash = "sha256-ZO6FmqJUnB9VEJ7caJt58ym8eB3/fDATri3iOWCULRI";
|
||||||
|
|
||||||
|
stripRoot = false;
|
||||||
|
};
|
||||||
|
});
|
||||||
|
};
|
||||||
})
|
})
|
||||||
inputs.nur.overlays.default
|
inputs.nur.overlays.default
|
||||||
];
|
];
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue