This commit is contained in:
dusk 2022-11-27 01:04:43 +03:00
parent 149eec29c4
commit bc1a7d8733
Signed by: dusk
GPG Key ID: 1D8F8FAF2294D6EA
12 changed files with 216 additions and 113 deletions

View File

@ -17,35 +17,18 @@
"type": "github"
}
},
"all-cabal-json_2": {
"flake": false,
"locked": {
"lastModified": 1665552503,
"narHash": "sha256-r14RmRSwzv5c+bWKUDaze6pXM7nOsiz1H8nvFHJvufc=",
"owner": "nix-community",
"repo": "all-cabal-json",
"rev": "d7c0434eebffb305071404edcf9d5cd99703878e",
"type": "github"
},
"original": {
"owner": "nix-community",
"ref": "hackage",
"repo": "all-cabal-json",
"type": "github"
}
},
"base16-schemes": {
"flake": false,
"locked": {
"lastModified": 1654895891,
"narHash": "sha256-xYYmZkHnyLCUBAkqkZ7v1Lc5m39857MukQLMRtGuvdk=",
"owner": "base16-project",
"lastModified": 1665690101,
"narHash": "sha256-J2ZvNaVFkqaTXzYO5L+jyRORfIOavFPKvWItP6UTMKs=",
"owner": "tinted-theming",
"repo": "base16-schemes",
"rev": "7c247f734eac7f04518c6e28d098635ee8dcabf5",
"rev": "a3dc916cf90471a422c0bfe1bb4b1bdd12185ced",
"type": "github"
},
"original": {
"owner": "base16-project",
"owner": "tinted-theming",
"repo": "base16-schemes",
"type": "github"
}
@ -225,10 +208,12 @@
"inputs": {
"alejandra": [
"helix",
"nci",
"nixpkgs"
"nci"
],
"all-cabal-json": [
"helix",
"nci"
],
"all-cabal-json": "all-cabal-json_2",
"crane": "crane_2",
"devshell": [
"helix",
@ -237,19 +222,19 @@
],
"flake-utils-pre-commit": [
"helix",
"nci",
"nixpkgs"
"nci"
],
"ghc-utils": [
"helix",
"nci"
],
"ghc-utils": "ghc-utils_2",
"gomod2nix": [
"helix",
"nci",
"nixpkgs"
"nci"
],
"mach-nix": [
"helix",
"nci",
"nixpkgs"
"nci"
],
"nixpkgs": [
"helix",
@ -258,21 +243,19 @@
],
"poetry2nix": [
"helix",
"nci",
"nixpkgs"
"nci"
],
"pre-commit-hooks": [
"helix",
"nci",
"nixpkgs"
"nci"
]
},
"locked": {
"lastModified": 1667429039,
"narHash": "sha256-Lu6da25JioHzerkLHAHSO9suCQFzJ/XBjkcGCIbasLM=",
"lastModified": 1668851003,
"narHash": "sha256-X7RCQQynbxStZR2m7HW38r/msMQwVl3afD6UXOCtvx4=",
"owner": "nix-community",
"repo": "dream2nix",
"rev": "5252794e58eedb02d607fa3187ffead7becc81b0",
"rev": "c77e8379d8fe01213ba072e40946cbfb7b58e628",
"type": "github"
},
"original": {
@ -438,22 +421,6 @@
"url": "https://gitlab.haskell.org/bgamari/ghc-utils"
}
},
"ghc-utils_2": {
"flake": false,
"locked": {
"lastModified": 1662774800,
"narHash": "sha256-1Rd2eohGUw/s1tfvkepeYpg8kCEXiIot0RijapUjAkE=",
"ref": "refs/heads/master",
"rev": "bb3a2d3dc52ff0253fb9c2812bd7aa2da03e0fea",
"revCount": 1072,
"type": "git",
"url": "https://gitlab.haskell.org/bgamari/ghc-utils"
},
"original": {
"type": "git",
"url": "https://gitlab.haskell.org/bgamari/ghc-utils"
}
},
"haskell-flake": {
"locked": {
"lastModified": 1661726764,
@ -492,11 +459,11 @@
"rust-overlay": "rust-overlay_3"
},
"locked": {
"lastModified": 1668647763,
"narHash": "sha256-VKM8qDnPaSEjK4BW3WjTVuviDtO8qZ+uNlD5nh2dQ4A=",
"lastModified": 1669495243,
"narHash": "sha256-ap787IQRUsFNnLconu9SDumtPxbczjVKv5E8Z9YKBD4=",
"owner": "helix-editor",
"repo": "helix",
"rev": "322e957ea1947108d10699f217b75b831df2a2c0",
"rev": "f0f295a6679655dccfab0c1e0e9bb4a87e351db5",
"type": "github"
},
"original": {
@ -513,11 +480,11 @@
"utils": "utils"
},
"locked": {
"lastModified": 1668716823,
"narHash": "sha256-e6d2SIIiJOvTzItUbp+GJVhPD6AzSm823XAyPvPlpvo=",
"lastModified": 1669328018,
"narHash": "sha256-aJRMobnNDEXKwoSZFS4hGjGU1WDNxkQ82BVKAEohOfY=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "fe85cc4c37d5f37104e349c5553029417e3833d1",
"rev": "62cb5bcf93896e4dd6b4507dac7ba2e2e3abc9d7",
"type": "github"
},
"original": {
@ -535,11 +502,11 @@
"wlroots": "wlroots"
},
"locked": {
"lastModified": 1668709670,
"narHash": "sha256-YEyRGFGUO7lpGuU85ZN6zhe17tPwr493obNiX1KcNwE=",
"lastModified": 1669496178,
"narHash": "sha256-OVVqfsCr5+mtnuLoGs17Gikti91Pv7VE6kYNFk1exe8=",
"owner": "hyprwm",
"repo": "Hyprland",
"rev": "724e411ffcf1e2c528a7d4fb6fc24350076ad37f",
"rev": "9247f88d0c9905dec186ea607bee0cf6c00fdb44",
"type": "github"
},
"original": {
@ -606,11 +573,11 @@
]
},
"locked": {
"lastModified": 1667542401,
"narHash": "sha256-mdWjP5tjSf8n6FAtpSgL23kX4+eWBwLrSYo9iY3mA8Q=",
"lastModified": 1669011203,
"narHash": "sha256-Lymj4HktNEFmVXtwI0Os7srDXHZbZW0Nzw3/+5Hf8ko=",
"owner": "yusdacra",
"repo": "nix-cargo-integration",
"rev": "cd5e5cbd81c80dc219455dd3b1e0ddb55fae51ec",
"rev": "c5133b91fc1d549087c91228bd213f2518728a4b",
"type": "github"
},
"original": {
@ -628,11 +595,11 @@
"rust-overlay": "rust-overlay_4"
},
"locked": {
"lastModified": 1668625881,
"narHash": "sha256-cWPlB/gqR30BWKRaeQoToL7vCxTFZNNz1lt0M/fj+ds=",
"lastModified": 1669391194,
"narHash": "sha256-4oWcXqyBYPHF+Wt8AxRhWk70O1qVJPkyBw2IhxJtj6k=",
"owner": "oxalica",
"repo": "nil",
"rev": "bea40f71fc2b918ad6cf2154bcc12521ac664dc2",
"rev": "afec5fed829ee193de7e8c62e1fb4bd55140f4ac",
"type": "github"
},
"original": {
@ -647,11 +614,11 @@
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1667165773,
"narHash": "sha256-47gEPN7UKrNM+a3OKAFtNQeyc1/sSPgDm3OGCgphCyo=",
"lastModified": 1669296560,
"narHash": "sha256-W7Hqq1gWlPO54M79+olt+cl2wodq8/B9K9gDHXl99jc=",
"owner": "Misterio77",
"repo": "nix-colors",
"rev": "a58fb210eb285920ec10f204d007185b3629cadc",
"rev": "01c5aea7d6724723f3deca4dfde6d916b7bdbe50",
"type": "github"
},
"original": {
@ -682,11 +649,11 @@
},
"nixos-hardware": {
"locked": {
"lastModified": 1668334946,
"narHash": "sha256-omMbUj4r5DVBWh7KxkoO/Z/1V1shVR6Ls4jXNB4mr3U=",
"lastModified": 1669146234,
"narHash": "sha256-HEby7EG1yaq1oT2Ze6Cvok9CFju1XHkSvVHmkptLW9U=",
"owner": "nixos",
"repo": "nixos-hardware",
"rev": "e0452b33ab0ef16ffe075e980644ed92a6a200bb",
"rev": "0099253ad0b5283f06ffe31cf010af3f9ad7837d",
"type": "github"
},
"original": {
@ -744,11 +711,11 @@
"nixpkgs-wayland": {
"flake": false,
"locked": {
"lastModified": 1668684692,
"narHash": "sha256-MzY2yQC6O6Zs1OXFLdLIDvIV+W7pAJRMkKyejFCs6UQ=",
"lastModified": 1669345789,
"narHash": "sha256-bgPNYOreLhmAj3GasmFmKyZmlpWIUuk29K9Ef3T+xFA=",
"owner": "nix-community",
"repo": "nixpkgs-wayland",
"rev": "8843743111484436d63ed28b4a27daf2984c6c00",
"rev": "fe0de01500c36062c4db7db02e25a82be275a402",
"type": "github"
},
"original": {
@ -775,11 +742,11 @@
},
"nixpkgs_3": {
"locked": {
"lastModified": 1667482890,
"narHash": "sha256-pua0jp87iwN7NBY5/ypx0s9L9CG49Ju/NI4wGwurHc4=",
"lastModified": 1668905981,
"narHash": "sha256-RBQa/+9Uk1eFTqIOXBSBezlEbA3v5OkgP+qptQs1OxY=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "a2a777538d971c6b01c6e54af89ddd6567c055e8",
"rev": "690ffff026b4e635b46f69002c0f4e81c65dfc2e",
"type": "github"
},
"original": {
@ -791,11 +758,11 @@
},
"nixpkgs_4": {
"locked": {
"lastModified": 1668596599,
"narHash": "sha256-rhHyZTGI31/OfgYa9xF49UTchDXTI94pEsSNa0fOkpk=",
"lastModified": 1669411043,
"narHash": "sha256-LfPd3+EY+jaIHTRIEOUtHXuanxm59YKgUacmSzaqMLc=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "b457130e8a21608675ddf12c7d85227b22a27112",
"rev": "5dc7114b7b256d217fe7752f1614be2514e61bb8",
"type": "github"
},
"original": {
@ -807,11 +774,11 @@
},
"nur": {
"locked": {
"lastModified": 1668717409,
"narHash": "sha256-uSgod4fiI4K52T63nnmo23PEugOJEti1tWZT912FmLM=",
"lastModified": 1669471448,
"narHash": "sha256-jG75clzKUQI+foiRxAWK8+2f58NS8Tf7fvQncOIfUuI=",
"owner": "nix-community",
"repo": "NUR",
"rev": "6e103ce9e5a76afb75d93f3a936577d911299e1e",
"rev": "81badd317a42472752389870baa37827b495a6d9",
"type": "github"
},
"original": {
@ -886,11 +853,11 @@
]
},
"locked": {
"lastModified": 1667487142,
"narHash": "sha256-bVuzLs1ZVggJAbJmEDVO9G6p8BH3HRaolK70KXvnWnU=",
"lastModified": 1668998422,
"narHash": "sha256-G/BklIplCHZEeDIabaaxqgITdIXtMolRGlwxn9jG2/Q=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "cf668f737ac986c0a89e83b6b2e3c5ddbd8cf33b",
"rev": "68ab029c93f8f8eed4cf3ce9a89a9fd4504b2d6e",
"type": "github"
},
"original": {
@ -911,11 +878,11 @@
]
},
"locked": {
"lastModified": 1667789120,
"narHash": "sha256-Yid92tEY2CeS8VUiexjSw0hsjfQbRLbUCpqkdVLaEnI=",
"lastModified": 1669170936,
"narHash": "sha256-TKPH4Pzkjw5gAPo9hejs3O4mWJW6V/RSiOj8UuSFRTs=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "528499f67169671e931cf1ba63601803e58abd2a",
"rev": "c90c223c4aef334356029b89c72bb65e26f7efe6",
"type": "github"
},
"original": {
@ -960,11 +927,11 @@
"flake": false,
"locked": {
"host": "gitlab.freedesktop.org",
"lastModified": 1668292512,
"narHash": "sha256-lCMnIguyZgAGq7W2IwIVPoQS8fAfZ/XFwz/1TQ53eI8=",
"lastModified": 1668785720,
"narHash": "sha256-CX+PYJP2PxZWL380WzyMNsrfRgIb/78brdwvDg/zj28=",
"owner": "wlroots",
"repo": "wlroots",
"rev": "627a5c511278e67c3c308cdc6a639cbb490f48c3",
"rev": "4ff46e6cf9463e594605928feeb7c55cf323b5e7",
"type": "gitlab"
},
"original": {

View File

@ -30,13 +30,13 @@
domain = "*";
type = "soft";
item = "nofile";
value = "524288";
value = "16777216";
}
{
domain = "*";
type = "hard";
item = "nofile";
value = "524288";
value = "16777216";
}
];
allowSimultaneousMultithreading = true;

View File

@ -40,5 +40,8 @@
];
})
];
home-manager.extraSpecialArgs = {inherit inputs tlib;};
home-manager.extraSpecialArgs = {
inherit inputs tlib;
nixosConfig = config;
};
}

View File

@ -27,8 +27,8 @@ in {
renice = 15;
};
custom = {
start = "${startscript}";
end = "${endscript}";
# start = "${startscript}";
# end = "${endscript}";
};
};
};

View File

@ -2,7 +2,7 @@ final: prev: {
obsidian = prev.obsidian.overrideAttrs (old: {
installPhase =
prev.lib.replaceStrings
["makeWrapper ${final.electron_17}/bin/electron $out/bin/obsidian"]
["makeWrapper ${final.electron_18}/bin/electron $out/bin/obsidian"]
[
'' makeWrapper ${final.electron_20}/bin/electron $out/bin/obsidian \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform=wayland}}"''

View File

@ -0,0 +1,14 @@
final: prev: {
spotify =
final.runCommand prev.spotify.name {
inherit (prev.spotify) meta;
nativeBuildInputs = [final.makeWrapper];
} ''
shopt -s extglob
mkdir -p $out/bin
ln -sf ${prev.spotify}/!(bin) $out/
ln -sf ${prev.spotify}/bin/* $out/bin/
wrapProgram $out/bin/spotify \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--enable-features=UseOzonePlatform --ozone-platform=wayland}}"
'';
}

View File

@ -42,6 +42,7 @@ in {
];
pkg =
(pkgs.discord-canary.override {
nss = pkgs.nss_latest;
withOpenASAR = true;
})
.overrideAttrs (old: {

View File

@ -1,7 +1,13 @@
{config, ...}: {
{
config,
pkgs,
...
}: {
settings.terminal.name = "foot";
settings.terminal.binary = "${pkgs.foot}/bin/foot";
programs.foot = {
enable = true;
package = pkgs.foot;
server.enable = false;
settings = {
main = {

View File

@ -35,6 +35,9 @@ in {
name = l.mkOption {
type = t.str;
};
binary = l.mkOption {
type = t.path;
};
};
settings.font = {
regular = fontSettings;

View File

@ -0,0 +1,109 @@
{
config,
nixosConfig,
pkgs,
lib,
tlib,
...
}: {
imports = [
../wayland
../swaylock
../wlsunset
../dunst
../rofi
# ./swayidle.nix
];
wayland.windowManager = {
sway = let
mkRofiCmd = args: "${config.programs.rofi.package}/bin/rofi ${lib.concatStringsSep " " args} | ${pkgs.sway}/bin/swaymsg --";
inherit (tlib) pkgBin;
in {
enable = true;
extraSessionCommands = ''
export SDL_VIDEODRIVER=wayland
export QT_QPA_PLATFORM=wayland
'';
wrapperFeatures.gtk = true;
extraConfig = ''
exec dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=sway
exec xprop -root -f _XWAYLAND_GLOBAL_OUTPUT_SCALE 32c -set _XWAYLAND_GLOBAL_OUTPUT_SCALE 2
'';
config = {
fonts = {
names = [config.settings.font.regular.name];
size = config.settings.font.regular.size + 0.0;
};
bars = [];
gaps.smartBorders = "on";
menu = mkRofiCmd ["-show" "drun"];
modifier = "Mod4";
terminal = config.settings.terminal.binary;
keybindings = let
mod = config.wayland.windowManager.sway.config.modifier;
cat = pkgs.coreutils + "/bin/cat";
grim = pkgBin pkgs.grim;
slurp = pkgBin pkgs.slurp;
pactl = pkgs.pulseaudio + "/bin/pactl";
playerctl = pkgBin pkgs.playerctl;
wf-recorder = pkgBin pkgs.wf-recorder;
wl-copy = pkgs.wl-clipboard + "/bin/wl-copy";
wlogout = pkgBin pkgs.wlogout;
light = pkgBin pkgs.light;
shotFile = config.home.homeDirectory + "/shots/shot_$(date '+%Y_%m_%d_%H_%M')";
shotDir = config.home.homeDirectory + "/shots";
in
lib.mkOptionDefault
{
"${mod}+Escape" = "exec ${wlogout} -p layer-shell";
"${mod}+q" = "kill";
"${mod}+Shift+e" = "exit";
"${mod}+Shift+r" = "reload";
# Screenshot and copy it to clipboard
"Mod1+s" = ''
exec export SFILE="${shotFile}.png" && mkdir -p ${shotDir} && ${grim} "$SFILE" && ${cat} "$SFILE" | ${wl-copy} -t image/png
'';
# Save selected area as a picture and copy it to clipboard
"Mod1+Shift+s" = ''
exec export SFILE="${shotFile}.png" && mkdir -p ${shotDir} && ${grim} -g "$(${slurp})" "$SFILE" && ${cat} "$SFILE" | ${wl-copy} -t image/png
'';
# Record screen
"Mod1+r" = ''exec mkdir -p ${shotDir} && ${wf-recorder} -f "${shotFile}.mp4"'';
# Record an area
"Mod1+Shift+r" = ''exec mkdir -p ${shotDir} && ${wf-recorder} -g "$(${slurp})" -f "${shotFile}.mp4"'';
# Stop recording
"Mod1+c" = "exec pkill -INT wf-recorder";
"XF86AudioRaiseVolume" = "exec ${pactl} set-sink-volume 0 +5%";
"XF86AudioLowerVolume" = "exec ${pactl} set-sink-volume 0 -5%";
"XF86AudioMute" = "exec ${pactl} set-sink-mute 0 toggle";
"XF86AudioPlay" = "exec ${playerctl} play-pause";
"XF86AudioPrev" = "exec ${playerctl} previous";
"XF86AudioNext" = "exec ${playerctl} next";
"XF86AudioStop" = "exec ${playerctl} stop";
"XF86MonBrightnessUp" = "exec ${light} -T 1.4";
"XF86MonBrightnessDown" = "exec ${light} -T 0.72";
};
input = {
"*" = {
xkb_layout = nixosConfig.services.xserver.layout;
accel_profile = "flat";
};
};
output = {
"*" = {
bg = "${config.home.homeDirectory}/wallpaper.png fill";
adaptive_sync = "on";
};
"eDP-1" = {
scale = "2";
};
"HDMI-A-1" = {
mode = "1920x1080@74.973Hz";
};
};
};
};
};
}

View File

@ -7,7 +7,6 @@
NIXOS_OZONE_WL = "1";
MOZ_ENABLE_WAYLAND = "1";
XDG_SESSION_TYPE = "wayland";
GDK_SCALE = "2";
};
xdg.configFile = {
@ -15,7 +14,6 @@
NIXOS_OZONE_WL=1
MOZ_ENABLE_WAYLAND=1
XDG_SESSION_TYPE=wayland
GDK_SCALE=2
'';
};
}

View File

@ -10,7 +10,7 @@
nixosConfig = globalAttrs.config;
in {
imports = [../../modules/de/gnome];
# imports = [../../modules/de/gnome];
users.users.patriot = {
isNormalUser = true;
createHome = true;
@ -99,9 +99,10 @@ in {
modulesToEnable = l.flatten [
# wm
# ["hyprland" "foot"]
["sway" "foot"]
# desktop stuff
["wayland"]
["chromium"]
["chromium" "discord"]
# cli stuff
["zoxide" "zsh" "fzf" "starship" "direnv"]
# dev stuff
@ -244,11 +245,12 @@ in {
userName = name;
userEmail = email;
};
# zsh.loginExtra = ''
# if [[ "$(tty)" == "/dev/tty1" ]]; then
# exec Hyprland
# fi
# '';
zsh.loginExtra = ''
if [[ "$(tty)" == "/dev/tty1" ]]; then
export WLR_DRM_DEVICES=/dev/dri/card0
exec sway --unsupported-gpu
fi
'';
};
services = {
gpg-agent = let