hand7s: upstream

Signed-off-by: s0me1newithhand7s <git+me@hand7s.org>
This commit is contained in:
s0me1newithhand7s 2026-02-08 22:43:08 +03:00
parent e6c9d19b0f
commit e4222e5423
48 changed files with 282 additions and 1097 deletions

View file

@ -4,8 +4,6 @@
"${self}/hand7s/options/gui.nix" "${self}/hand7s/options/gui.nix"
"${self}/hand7s/wayland/hyprland.nix" "${self}/hand7s/wayland/hyprland.nix"
"${self}/hand7s/wayland/river.nix"
"${self}/hand7s/wayland/sway.nix"
"${self}/hand7s/home/defaults.nix" "${self}/hand7s/home/defaults.nix"
"${self}/hand7s/home/gui.nix" "${self}/hand7s/home/gui.nix"
@ -17,7 +15,7 @@
"${self}/hand7s/nixpkgs/overlays.nix" "${self}/hand7s/nixpkgs/overlays.nix"
"${self}/hand7s/services/hypridle.nix" "${self}/hand7s/services/hypridle.nix"
"${self}/hand7s/services/swayidle.nix" "${self}/hand7s/services/hyprsunset.nix"
"${self}/hand7s/services/kdeconnect.nix" "${self}/hand7s/services/kdeconnect.nix"
"${self}/hand7s/systemd/hyprpolkitagent-service.nix" "${self}/hand7s/systemd/hyprpolkitagent-service.nix"
@ -33,19 +31,15 @@
"${self}/hand7s/programs/index.nix" "${self}/hand7s/programs/index.nix"
"${self}/hand7s/programs/obs-studio.nix" "${self}/hand7s/programs/obs-studio.nix"
"${self}/hand7s/programs/starship.nix" "${self}/hand7s/programs/starship.nix"
"${self}/hand7s/programs/firefox.nix"
"${self}/hand7s/programs/swaylock.nix"
"${self}/hand7s/programs/yazi.nix" "${self}/hand7s/programs/yazi.nix"
"${self}/hand7s/programs/zoxide.nix" "${self}/hand7s/programs/zoxide.nix"
"${self}/hand7s/programs/chrome.nix" "${self}/hand7s/programs/chrome.nix"
"${self}/hand7s/programs/hyprlock.nix" "${self}/hand7s/programs/hyprlock.nix"
"${self}/hand7s/programs/hyprpanel.nix"
"${self}/hand7s/programs/spicetify.nix" "${self}/hand7s/programs/spicetify.nix"
"${self}/hand7s/programs/vscode.nix" "${self}/hand7s/programs/vscode.nix"
"${self}/hand7s/programs/zellij.nix" "${self}/hand7s/programs/zellij.nix"
"${self}/hand7s/programs/zed-editor.nix"
"${self}/hand7s/programs/direnv.nix" "${self}/hand7s/programs/direnv.nix"
"${self}/hand7s/programs/kitty.nix"
"${self}/hand7s/programs/noctalia.nix" "${self}/hand7s/programs/noctalia.nix"
"${self}/hand7s/programs/iamb.nix"
]; ];
} }

View file

@ -1,4 +1,4 @@
{...}: { _: {
fonts = { fonts = {
fontconfig = { fontconfig = {
enable = true; enable = true;

View file

@ -1,4 +1,4 @@
{...}: { _: {
gtk = { gtk = {
enable = true; enable = true;
}; };

View file

@ -1,4 +1,4 @@
{...}: { _: {
home = { home = {
stateVersion = "24.11"; stateVersion = "24.11";
username = "hand7s"; username = "hand7s";

View file

@ -1,5 +1,6 @@
{ {
osConfig, osConfig,
config,
lib, lib,
... ...
}: { }: {
@ -7,27 +8,13 @@
gui = { gui = {
enable = enable =
lib.mkIf ( lib.mkIf (
osConfig.networking.hostName == "s0mePC-nix" || osConfig.networking.hostName == "s0melapt0p-nix" osConfig.networking.hostName == "ada" || osConfig.networking.hostName == "isla" || osConfig.networking.hostName == "wanda"
) )
true; true;
sessionType = sessionType =
if lib.mkIf config.home.gui.enable
( "Hyprland";
osConfig.networking.hostName == "s0mePC-nix"
)
then "Hyprland"
else if
(
osConfig.networking.hostName == "s0mew0rkstat1on-nix"
)
then "Hyprland"
else if
(
osConfig.networking.hostName == "s0melapt0p-nix"
)
then "Sway"
else "None";
}; };
}; };
} }

View file

@ -1,4 +1,4 @@
{...}: { _: {
home = { home = {
keyboard = { keyboard = {
variant = ""; variant = "";

View file

@ -1,62 +1,32 @@
{ {pkgs, ...}: {
osConfig,
pkgs,
lib,
...
}: {
home = { home = {
packages = with pkgs; packages = with pkgs; [
[
fd fd
gh gh
sd sd
xh xh
dua dua
nvd nvd
gat
dust dust
sops sops
rsync rsync
procs procs
sbctl sbctl
gping gping
dconf
tokei
comma comma
ifuse
trippy trippy
bottom bottom
kubectl ragenix
yt-dlp
ripgrep ripgrep
kubectl
gitoxide gitoxide
tty-clock
deploy-rs deploy-rs
monero-cli btop-rocm
bubblewrap
ripgrep-all
nixos-anywhere nixos-anywhere
wireguard-tools wireguard-tools
yubico-piv-tool
yubikey-manager
libimobiledevice
nix-output-monitor nix-output-monitor
yubikey-touch-detector
yubikey-personalization
netbird-ui
]
++ lib.optionals (
osConfig.networking.hostName == "s0mePC-nix"
) [
mindustry
thunderbird
tetrio-desktop
min-ed-launcher
qbittorrent-enhanced
]
++ lib.optionals (
osConfig.networking.hostName == "s0melapt0p-nix"
) [
iwgtk
brightnessctl
]; ];
}; };
} }

View file

@ -1,4 +1,4 @@
{...}: { _: {
nix = { nix = {
settings = { settings = {
substituters = [ substituters = [
@ -9,9 +9,10 @@
# cachix # cachix
"https://nix-community.cachix.org/" "https://nix-community.cachix.org/"
"https://chaotic-nyx.cachix.org/" "https://chaotic-nyx.cachix.org/"
"https://ags.cachix.org"
"https://hyprland.cachix.org" "https://hyprland.cachix.org"
"https://chaotic-nyx.cachix.org/" "https://chaotic-nyx.cachix.org/"
# nix-community
"https://hydra.nix-community.org/"
]; ];
}; };
}; };

View file

@ -1,4 +1,4 @@
{...}: { _: {
nix = { nix = {
settings = { settings = {
trusted-public-keys = [ trusted-public-keys = [

View file

@ -1,4 +1,4 @@
{...}: { _: {
nixpkgs = { nixpkgs = {
config = { config = {
allowBroken = true; allowBroken = true;

View file

@ -1,4 +1,4 @@
{...}: { _: {
nixpkgs = { nixpkgs = {
overlays = [ overlays = [
]; ];

View file

@ -2,12 +2,12 @@
lib, lib,
pkgs, pkgs,
config, config,
inputs, self,
... ...
}: let }: let
cfg = config.home.gui; cfg = config.home.gui;
ayugram = inputs.ayugram-desktop.packages.${pkgs.system}.ayugram-desktop; ayugram = self.inputs.ayugram-desktop.packages.${pkgs.system}.ayugram-desktop;
freesm-launcher = inputs.freesm.packages.${pkgs.system}.freesmlauncher; freesm-launcher = self.inputs.freesm.packages.${pkgs.system}.freesmlauncher;
in { in {
options.home.gui = { options.home.gui = {
enable = lib.mkEnableOption '' enable = lib.mkEnableOption ''
@ -19,6 +19,7 @@ in {
''; '';
sessionType = lib.mkOption { sessionType = lib.mkOption {
default = "None";
type = lib.types.enum [ type = lib.types.enum [
"DWL" "DWL"
"Sway" "Sway"
@ -26,7 +27,7 @@ in {
"Hyprland" "Hyprland"
"None" "None"
]; ];
default = "None";
description = '' description = ''
This option allows to choose current desktop session. All This option allows to choose current desktop session. All
three: riverwm, sway and Hyprland has their own config. Almost three: riverwm, sway and Hyprland has their own config. Almost
@ -39,49 +40,55 @@ in {
home = { home = {
packages = with pkgs; packages = with pkgs;
[ [
throne
heroic
vesktop vesktop
nekoray ayugram
anki-bin anki-bin
obsidian obsidian
playerctl
monero-gui
mindustry mindustry
bitwarden
lan-mouse lan-mouse
monero-gui
parsec-bin parsec-bin
proton-pass
pwvucontrol pwvucontrol
easyeffects easyeffects
ayugram thunderbird
element-desktop chatterino7
tetrio-desktop
hyprpolkitagent hyprpolkitagent
freesm-launcher freesm-launcher
bitwarden-desktop
qbittorrent-enhanced
(discord.override { (discord.override {
withVencord = true; withVencord = true;
withOpenASAR = false; withOpenASAR = false;
}) })
] ]
++ lib.optionals (
cfg.sessionType == "Sway"
) [
swaykbdd
autotiling-rs
sway-audio-idle-inhibit
sway-contrib.grimshot
sway-contrib.inactive-windows-transparency
]
++ lib.optionals (
cfg.sessionType == "River"
) [
wayshot
waylock
wayidle
]
++ lib.optionals ( ++ lib.optionals (
cfg.sessionType == "Hyprland" cfg.sessionType == "Hyprland"
) [ ) [
inputs.noctalia.packages.${system}.default fum
timg
dconf
iwgtk
tokei
ifuse
yt-dlp
termusic
playerctl
tty-clock
grimblast grimblast
monero-cli
brightnessctl
hyprsysteminfo
yubico-piv-tool
yubikey-manager
libimobiledevice
yubikey-touch-detector
yubikey-personalization
self.inputs.noctalia.packages.${system}.default
]; ];
}; };
@ -89,10 +96,8 @@ in {
chromium.enable = true; chromium.enable = true;
spicetify.enable = true; spicetify.enable = true;
vscode.enable = true; vscode.enable = true;
fuzzel.enable = true;
ghostty.enable = true; ghostty.enable = true;
firefox.enable = true; git.enable = true;
alacritty.enable = true;
}; };
services = with lib.mkDefault; { services = with lib.mkDefault; {

View file

@ -1,7 +1,9 @@
{...}: { _: {
programs = { programs = {
direnv = { direnv = {
enable = true; enable = true;
silent = true;
nix-direnv = { nix-direnv = {
enable = true; enable = true;
}; };

View file

@ -1,4 +1,4 @@
{...}: { _: {
programs = { programs = {
eza = { eza = {
enable = true; enable = true;

View file

@ -1,28 +0,0 @@
{
inputs,
pkgs,
...
}: let
zen-browser = inputs.zen-browser.packages.${pkgs.system}.default;
in {
programs = {
firefox = {
package = zen-browser;
profiles = rec {
default = {
userContent = "
--zen-colors-primary: #82aaff !important;
--zen-colors-secondary: #c099ff !important;
--zen-colors-tertiary: #1e2030 !important;
--zen-colors-border: #3b4261 !important;
--zen-dialog-background: #222436 !important;
.tab-background[selected=[selected=''] {
background-color: #6c598c !important;
}
";
};
};
};
};
}

View file

@ -1,4 +1,4 @@
{...}: { _: {
programs = { programs = {
fzf = { fzf = {
enable = true; enable = true;

View file

@ -8,12 +8,25 @@
enableFishIntegration = true; enableFishIntegration = true;
installBatSyntax = true; installBatSyntax = true;
settings = { settings = {
title = "spooky scary tty"; title = "";
command = "${lib.getExe pkgs.fish} --login --interactive"; bell-features = "system";
command = "${lib.getExe pkgs.fish}";
confirm-close-surface = false; confirm-close-surface = false;
cursor-style-blink = true;
cursor-style = "bar";
mouse-hide-while-typing = true;
working-directory = "home";
window-save-state = "never";
window-inherit-working-directory = false;
keybind = [ keybind = [
"ctrl+shift+d=new_split:right" "ctrl+shift+d=new_split:right"
"ctrl+shift+a=new_split:down" "ctrl+shift+a=new_split:down"

View file

@ -5,13 +5,11 @@
}: { }: {
programs = { programs = {
git = { git = {
enable = true;
package = pkgs.git; package = pkgs.git;
userEmail = "117505144+s0me1newithhand7s@users.noreply.github.com"; settings = {
userName = "s0me1newithhand7s"; user = {
aliases = { email = "git+me@hand7s.org";
pushall = "push github && push gitlab"; name = "s0me1newithhand7s";
pushall-f = "push --force github && push --force gitlab";
}; };
signing = { signing = {
@ -19,9 +17,6 @@
signByDefault = true; signByDefault = true;
key = osConfig.sops.secrets.sshKey.path; key = osConfig.sops.secrets.sshKey.path;
}; };
lfs = {
enable = true;
}; };
}; };
}; };

View file

@ -5,7 +5,7 @@
}: { }: {
programs = { programs = {
helix = { helix = {
package = pkgs.helix_git; package = pkgs.helix;
enable = true; enable = true;
defaultEditor = true; defaultEditor = true;
extraPackages = with pkgs; [ extraPackages = with pkgs; [

View file

@ -1,5 +1,6 @@
{ {
config, config,
pkgs,
lib, lib,
... ...
}: { }: {
@ -20,14 +21,17 @@
label = [ label = [
{ {
monitor = ""; monitor = "";
text = "$TIME"; text = ''
cmd[update:1000] ${lib.getExe' pkgs.uutils-coreutils-noprefix "date"} +"%T"
'';
text_align = "center"; text_align = "center";
color = config.lib.stylix.colors.base01; color = config.lib.stylix.colors.base01;
font_size = 48; font_size = 48;
font_family = config.stylix.fonts.emoji.name; font_family = config.stylix.fonts.emoji.name;
rotate = 0; rotate = 0;
position = "0, 50"; position = "0, 200";
halign = "center"; halign = "center";
valign = "center"; valign = "center";
@ -39,14 +43,17 @@
{ {
monitor = ""; monitor = "";
text = "> $LAYOUT[en,ru]"; text = ''
cmd[update:1000] ${lib.getExe' pkgs.uutils-coreutils-noprefix "date"} +"%A, %B"
'';
text_align = "center"; text_align = "center";
color = config.lib.stylix.colors.base06; color = config.lib.stylix.colors.base01;
font_size = 26; font_size = 24;
font_family = config.stylix.fonts.emoji.name; font_family = config.stylix.fonts.emoji.name;
rotate = 0; rotate = 0;
position = "200, -50"; position = "0, 150";
halign = "center"; halign = "center";
valign = "center"; valign = "center";
@ -73,7 +80,7 @@
hide_input = false; hide_input = false;
rounding = -0.3; rounding = -0.3;
fail_text = "<i>$FAIL <b>($ATTEMPTS)</b></i>"; fail_text = "$FAIL -> $ATTEMPTS";
fail_transition = 1000; fail_transition = 1000;
capslock_color = -1; capslock_color = -1;
numlock_color = -1; numlock_color = -1;
@ -81,7 +88,7 @@
invert_numlock = false; invert_numlock = false;
swap_font_color = false; swap_font_color = false;
position = "0, -50"; position = "0, -650";
halign = "center"; halign = "center";
valign = "center"; valign = "center";

View file

@ -1,440 +0,0 @@
{
pkgs,
lib,
...
}: {
programs = {
hyprpanel = {
enable = false;
settings = {
layout = {
"bar.layouts" = {
"*" = {
left = [
"dashboard"
"workspaces"
"media"
];
middle = [
"clock"
"power"
];
right = [
"network"
"kbinput"
"volume"
"systray"
"notifications"
];
};
};
};
scalingPriority = "hyprland";
tear = false;
dummy = true;
hyprpanel = {
restartAgs = true;
restartCommand = "${lib.getExe' pkgs.systemd "systemctl"} --user restart hyprpanel.service";
};
bar = {
autoHide = "never";
scrollSpeed = 5;
battery = {
hideLabelWhenFull = true;
label = true;
};
bluetooth = {
label = true;
};
clock = {
format = "%a, %b %d %I:%M:%S %p";
icon = "󰸗";
showIcon = true;
showTime = true;
};
launcher = {
icon = " ";
autoDetectIcon = true;
};
media = {
format = "{artist: - }{title}";
show_active_only = true;
show_label = true;
truncation = true;
truncation_size = 30;
};
network = {
label = true;
showWifiInfo = true;
truncation = true;
truncation_size = 10;
};
notifications = {
show_total = false;
hideCountWhenZero = true;
};
volume = {
label = true;
scrollDown = "${lib.getExe' pkgs.wireplumber "wpctl"} set-volume @DEFAULT_AUDIO_SINK@ 5%-";
scrollUp = "${lib.getExe' pkgs.wireplumber "wpctl"} set-volume @DEFAULT_AUDIO_SINK@ 5%+";
rightClick = "${lib.getExe' pkgs.wireplumber "wpctl"} set-mute @DEFAULT_AUDIO_SINK@ toggle";
};
windowtitle = {
icon = true;
label = true;
class_name = false;
custom_title = true;
truncation = true;
truncation_size = 50;
};
workspaces = {
show_icons = false;
show_numbered = false;
showApplicationIcons = true;
showAllActive = true;
showWsIcons = true;
numbered_active_indicator = "highlight";
workspaces = 20;
monitorSpecific = true;
reverse_scroll = false;
scroll_speed = 5;
spacing = 1.0;
workspaceMask = true;
ignored = "";
applicationIconEmptyWorkspace = "";
applicationIconFallback = "󰣆";
icons = {
active = "";
available = "";
occupied = "";
};
};
customModules = {
scrollSpeed = 5;
cava = {
showIcon = true;
icon = "";
spaceCharacter = "";
showActiveOnly = true;
stereo = false;
autoSensitivity = true;
bars = 10;
channels = 2;
framerate = 165;
samplerate = 48000;
lowCutoff = 20;
highCutoff = 20000;
barCharacters = [
""
""
""
""
""
""
""
""
];
};
cpu = {
icon = "";
label = true;
round = true;
pollingInterval = 1000;
};
cpuTemp = {
icon = "";
label = true;
pollingInterval = 500;
round = true;
showUnit = true;
sensor = "";
};
hypridle = {
label = true;
pollingInterval = 500;
offIcon = "";
offLabel = "OFF";
onIcon = "";
onLabel = "ON";
};
hyprsunset = {
label = true;
pollingInterval = 500;
offIcon = "󰛨";
offLabel = "OFF";
onIcon = "󱩌";
onLabel = "ON";
};
kbLayout = {
icon = "󰌌";
label = true;
labelType = "code";
rightClick = "${lib.getExe' pkgs.hyprland "hyprctl"} switchxkblayout monsgeek-monsgeek-keyboard next";
};
netstat = {
icon = "󰖟";
label = true;
pollingInterval = 250;
dynamicIcon = true;
round = true;
rateUnit = "auto";
networkInLabel = "";
networkOutLabel = "";
};
power = {
icon = "";
showLabel = true;
leftClick = "menu:powerdropdown";
};
microphone = {
label = true;
mutedIcon = "";
unmutedIcon = "";
leftClick = "menu:audio";
};
ram = {
icon = "";
label = true;
labelType = "percentage";
pollingInterval = 250;
round = true;
};
storage = {
icon = "󰋊";
label = true;
labelType = "percentage";
pollingInterval = 2000;
round = false;
};
submap = {
label = true;
showSubmapName = true;
enabledIcon = "󰌐";
enabledText = "ON";
disabledIcon = "󰌌";
disabledText = "OFF";
};
updates = {
label = true;
autoHide = true;
padZero = true;
pollingInterval = 1440000;
updateCommand = "nix flake update --flake ~/Projects/flake";
icon = {
pending = "󰏗";
updated = "󰏖";
};
};
weather = {
label = true;
unit = "metric";
};
};
};
menus = {
transition = "crossfade";
transitionTime = 200;
clock = {
time = {
military = false;
hideSeconds = true;
};
weather = {
enabled = true;
location = "Yelabuga";
unit = "metric";
key = "ac3df6535cac4448a4c83337252702";
};
};
dashboard = {
shortcuts = {
left = {
shortcut1 = {
command = "${lib.getExe pkgs.google-chrome}";
icon = "";
tooltip = "Google Chrome";
};
shortcut2 = {
command = "spotify";
icon = "";
tooltip = "Spotify";
};
shortcut3 = {
command = "${lib.getExe pkgs.discord}";
icon = "";
tooltip = "Discord";
};
shortcut4 = {
command = "ayugram-desktop";
icon = "";
tooltip = "Telegram";
};
};
right = {
shortcut1 = {
command = "${lib.getExe pkgs.fuzzel}";
icon = "";
tooltip = "Search";
};
shortcut3 = {
command = "${lib.getExe pkgs.grimblast} --notify --freeze copysave area /home/hand7s/Pictures/Screenshots/$(date '+%y%m%d_%H-%M-%s').png";
icon = "󰄀";
tooltip = "Screenshot";
};
};
};
stats = {
enable_gpu = false;
enabled = true;
interval = 1000;
};
directories = {
enabled = true;
};
powermenu = {
avatar = {
image = "/home/hand7s/Pictures/pfp4_mini.jpg";
name = "system";
};
};
};
media = {
displayTime = true;
displayTimeTooltip = true;
noMediaText = "-";
hideAlbum = false;
hideAuthor = false;
};
power = {
confirmation = true;
showLabel = true;
logout = "${lib.getExe' pkgs.hyprland "hyprctl"} dispatch exit";
reboot = "${lib.getExe' pkgs.systemd "systemctl"} reboot";
shutdown = "${lib.getExe' pkgs.systemd "systemctl"} poweroff";
sleep = "${lib.getExe' pkgs.systemd "systemctl"} suspend";
};
volume = {
raiseMaximumVolume = false;
};
};
notifications = {
active_monitor = true;
cache_actions = true;
clearDelay = 50;
displayedTotal = 5;
showActionsOnHover = true;
timeout = 5000;
};
theme = {
matugen = false;
name = "tokyo-night-vivid";
font = {
name = "Hack Font Nerd Regular";
size = "16px";
weight = 600;
};
bar = {
transparent = false;
floating = true;
layer = "top";
location = "top";
margin_bottom = "0";
margin_sides = "20px";
margin_top = "20px";
border_radius = "10px";
border = {
location = "full";
width = "2px";
};
buttons = {
enableBorders = false;
monochrome = false;
style = "default";
};
};
osd = {
enable = true;
active_monitor = true;
duration = 2500;
location = "right";
margins = "5px 5px 5px 5px";
muted_zero = false;
radius = "10px";
};
};
wallpaper = {
enable = false;
pywal = false;
image = "";
};
};
};
};
}

16
hand7s/programs/iamb.nix Normal file
View file

@ -0,0 +1,16 @@
_: {
programs = {
iamb = {
enable = true;
settings = {
default_profile = "hand7s";
profiles = {
hand7s = {
user_id = "@s0me1newithhand7s:ubiquelambda.dev";
url = "https://ubiquelambda.dev";
};
};
};
};
};
}

View file

@ -1,4 +1,4 @@
{...}: { _: {
programs = { programs = {
nix-index = { nix-index = {
enable = true; enable = true;

View file

@ -1,12 +0,0 @@
{...}: {
programs = {
kitty = {
enable = true;
enableGitIntegration = true;
shellIntegration = {
enableFishIntegration = true;
};
};
};
}

View file

@ -1,4 +1,4 @@
{...}: { _: {
programs = { programs = {
mangohud = { mangohud = {
enable = true; enable = true;

View file

@ -1,4 +1,4 @@
{...}: { _: {
programs = { programs = {
mpv = { mpv = {
enable = true; enable = true;

View file

@ -1,4 +1,8 @@
{config, ...}: { {
lib,
config,
...
}: {
programs = programs =
if if
( (
@ -14,12 +18,14 @@
dimDesktop = false; dimDesktop = false;
forceBlackScreenCorners = true; forceBlackScreenCorners = true;
showScreenCorners = true; showScreenCorners = true;
screenRadiusRatio = 2; screenRadiusRatio = 1;
radiusRatio = 0.7; radiusRatio = 0.7;
enableShadows = true;
shadowDirection = "center";
}; };
appLauncher = { appLauncher = {
position = "center"; position = "bottom_center";
useApp2Unit = false; useApp2Unit = false;
sortByMostUsed = true; sortByMostUsed = true;
enableClipboardHistory = false; enableClipboardHistory = false;
@ -34,8 +40,8 @@
}; };
bar = { bar = {
floating = true; floating = false;
density = "comfortable"; density = "default";
position = "right"; position = "right";
showCapsule = false; showCapsule = false;
marginVertical = 1; marginVertical = 1;
@ -47,7 +53,7 @@
widgets = { widgets = {
left = [ left = [
{ {
id = "SidePanelToggle"; id = "ControlCenter";
useDistroLogo = true; useDistroLogo = true;
} }
@ -112,6 +118,10 @@
}; };
}; };
notifications = {
location = "top_center";
};
controlCenter = { controlCenter = {
position = "close_to_bar_button"; position = "close_to_bar_button";
quickSettingsStyle = "compact"; quickSettingsStyle = "compact";
@ -181,23 +191,27 @@
enabled = true; enabled = true;
alwaysOnTop = true; alwaysOnTop = true;
autoHideMs = 2500; autoHideMs = 2500;
location = "top"; location = "bottom_center";
monitors = [ monitors = [
"DP-3" "DP-3"
]; ];
}; };
ui = { ui = {
fontDefault = "Nerd Fonts Hack"; fontDefault = lib.mkForce "Nerd Fonts Hack";
fontDefaultScale = 1; fontDefaultScale = 1;
fontFixed = "Nerd Fonts Hack"; fontFixed = lib.mkForce "Nerd Fonts Hack";
fontFixedScale = 1; fontFixedScale = 1;
idleInhibitorEnabled = false; idleInhibitorEnabled = false;
tooltipsEnabled = true; tooltipsEnabled = true;
}; };
wallpaper = {
enabled = false;
};
location = { location = {
name = "Yelaguba"; name = "Tatarstan, Yelaguba";
showWeekNumberInCalendar = true; showWeekNumberInCalendar = true;
use12hourFormat = false; use12hourFormat = false;
useFahrenheit = false; useFahrenheit = false;

View file

@ -1,19 +1,19 @@
{ {
lib, lib,
pkgs, pkgs,
inputs, self,
... ...
}: { }: {
programs = { programs = {
spicetify = { spicetify = {
enabledExtensions = with inputs.spicetify-nix.legacyPackages.${pkgs.system}.extensions; [ enabledExtensions = with self.inputs.spicetify-nix.legacyPackages.${pkgs.system}.extensions; [
adblock adblock
hidePodcasts hidePodcasts
shuffle shuffle
]; ];
theme = lib.mkForce inputs.spicetify-nix.legacyPackages.${pkgs.system}.themes.text; theme = lib.mkForce self.inputs.spicetify-nix.legacyPackages.${pkgs.system}.themes.text;
colorScheme = lib.mkForce "Spotify"; colorScheme = lib.mkForce "TokyoNight";
}; };
}; };
} }

View file

@ -1,4 +1,4 @@
{...}: { _: {
programs = { programs = {
starship = { starship = {
enable = true; enable = true;
@ -7,15 +7,14 @@
add_newline = true; add_newline = true;
format = '' format = ''
[](bold blue) $hostname $os [](bold blue) $username at $hostname on $os
[](bold blue) $directory$git_branch$git_commit$git_state$git_metrics$git_status [](bold blue) $directory$git_branch$git_commit$git_state$git_metrics$git_status
[>](bold blue) [>](bold blue) '';
'';
right_format = ''$cmd_duration ($character) at $time''; right_format = ''$cmd_duration ($character) at $time'';
os = { os = {
format = "on [($name $codename$version$edition $symbol )]($style)"; format = "[($name $codename$version$edition $symbol )]($style)";
style = "bold blue"; style = "bold blue";
disabled = false; disabled = false;
}; };
@ -27,6 +26,13 @@
disabled = false; disabled = false;
}; };
username = {
show_always = true;
disabled = false;
format = "[$user]($style)";
style_user = "bold green";
};
character = { character = {
success_symbol = "[](bold green)"; success_symbol = "[](bold green)";
error_symbol = "[](bold red)"; error_symbol = "[](bold red)";

View file

@ -1,19 +0,0 @@
{
config,
lib,
...
}: {
programs = {
swaylock = {
enable =
lib.mkIf (
config.home.gui.sessionType == "Sway"
)
true;
settings = {
show-failed-attempts = true;
};
};
};
}

View file

@ -6,14 +6,19 @@
}: { }: {
programs = { programs = {
vscode = { vscode = {
package = pkgs.vscodium;
profiles = { profiles = {
default = { default = {
extensions = with pkgs.vscode-extensions; [ extensions = with pkgs.vscode-extensions; [
jnoortheen.nix-ide jnoortheen.nix-ide
ms-vscode-remote.vscode-remote-extensionpack ms-vscode-remote.vscode-remote-extensionpack
ms-vsliveshare.vsliveshare ms-vsliveshare.vsliveshare
redhat.vscode-yaml redhat.vscode-yaml
redhat.ansible redhat.ansible
nefrob.vscode-just-syntax
]; ];
userSettings = lib.mkForce { userSettings = lib.mkForce {
@ -24,7 +29,7 @@
"editor.cursorSmoothCaretAnimation" = "on"; "editor.cursorSmoothCaretAnimation" = "on";
"editor.wordWrap" = "on"; "editor.wordWrap" = "on";
"workbench.colorTheme" = "Tokyo Night Moon"; "workbench.colorTheme" = "Tokyo Storm AltSynt";
"workbench.sideBar.location" = "right"; "workbench.sideBar.location" = "right";
"workbench.activityBar.location" = "top"; "workbench.activityBar.location" = "top";
"workbench.editor.editorActionsLocation" = "titleBar"; "workbench.editor.editorActionsLocation" = "titleBar";
@ -35,11 +40,6 @@
"terminal.integrated.cursorBlinking" = true; "terminal.integrated.cursorBlinking" = true;
"files.autoSave" = "afterDelay"; "files.autoSave" = "afterDelay";
"[nix]" = {
"editor.insertSpaces" = true;
"editor.tabSize" = 4;
};
}; };
}; };
}; };

View file

@ -50,6 +50,14 @@
} }
]; ];
view = [
{
run = "${lib.getExe pkgs.timg} ''-p k -C $@ | ${lib.getExe' pkgs.uutils-coreutils-noprefix "more"}''";
block = true;
for = "unix";
}
];
edit = [ edit = [
{ {
run = "${lib.getExe pkgs.helix} ''$@''"; run = "${lib.getExe pkgs.helix} ''$@''";
@ -61,12 +69,36 @@
open = [ open = [
{ {
run = "${lib.getExe' pkgs.xdg-utils "xdg-open"} ''$@''"; run = "${lib.getExe' pkgs.xdg-utils "xdg-open"} ''$@''";
block = true; orphan = true;
for = "unix"; for = "unix";
} }
]; ];
}; };
open = {
rules = [
{
mime = "image/*";
use = "view";
}
{
mime = "text/*";
use = "edit";
}
{
mime = "audio/*";
use = "play";
}
{
mime = "video/*";
use = "play";
}
];
};
input = { input = {
cursor_blink = true; cursor_blink = true;
}; };

View file

@ -1,32 +0,0 @@
{pkgs, ...}: {
programs = {
zed-editor = {
enable = false;
package = pkgs.zed-editor_git;
installRemoteServer = true;
userSettings = {
vim_mode = true;
features = {
copilot = false;
};
tab_bar = {
show = false;
};
telemetry = {
metrics = false;
};
};
extensions = [
"nix"
"xy-zed"
];
extraPackages = [
pkgs.nixd
];
};
};
}

View file

@ -1,4 +1,4 @@
{...}: { _: {
programs = { programs = {
zoxide = { zoxide = {
enable = true; enable = true;

View file

@ -1,4 +1,4 @@
{...}: { _: {
qt = { qt = {
enable = true; enable = true;
}; };

View file

@ -0,0 +1,23 @@
_: {
services = {
hyprsunset = {
enable = true;
settings = {
max-gamma = 150;
profile = [
{
time = "6:00";
identity = true;
}
{
time = "22:00";
temperature = 4000;
gamma = 1.1;
}
];
};
};
};
}

View file

@ -1,51 +0,0 @@
{
config,
pkgs,
lib,
...
}: {
services = {
swayidle = {
enable =
lib.mkIf (
config.home.gui.sessionType == "Sway"
)
true;
events = [
{
event = "lock";
command = "${lib.getExe pkgs.swaylock}";
}
{
event = "before-sleep";
command = "${lib.getExe' pkgs.sway "swaymsg"} 'output * power off'";
}
{
event = "after-resume";
command = "${lib.getExe' pkgs.sway "swaymsg"} 'output * power on'";
}
];
timeouts = [
{
timeout = 300;
command = "${lib.getExe pkgs.brightnessctl} -s set 10";
resumeCommand = "${lib.getExe pkgs.brightnessctl} -r";
}
{
timeout = 600;
command = "${lib.getExe pkgs.swaylock}";
}
{
timeout = 900;
command = "${lib.getExe' pkgs.systemd "systemctl"} suspend";
}
];
};
};
}

View file

@ -1,4 +1,4 @@
{...}: { _: {
stylix = { stylix = {
base16Scheme = { base16Scheme = {
scheme = "Tokyonight by Folke Lemaitre (https://github.com/folke)"; scheme = "Tokyonight by Folke Lemaitre (https://github.com/folke)";

View file

@ -1,4 +1,4 @@
{...}: { _: {
stylix = { stylix = {
enable = true; enable = true;
autoEnable = true; autoEnable = true;

View file

@ -1,5 +1,5 @@
{...}: { _: {
stylix = { stylix = {
image = ./wallpaper3.jpg; image = ./wallpaper3.png;
}; };
} }

View file

@ -1,4 +1,4 @@
{...}: { _: {
stylix = { stylix = {
base16Scheme = { base16Scheme = {
base00 = "2a1617"; base00 = "2a1617";

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 MiB

After

Width:  |  Height:  |  Size: 980 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 347 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 980 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

View file

@ -1,5 +1,5 @@
{ {
inputs, self,
config, config,
pkgs, pkgs,
lib, lib,
@ -14,8 +14,8 @@
) )
true; true;
package = inputs.hyprland.packages.${pkgs.system}.hyprland; package = self.inputs.hyprland.packages.${pkgs.system}.hyprland;
portalPackage = inputs.hyprland.packages.${pkgs.system}.xdg-desktop-portal-hyprland; portalPackage = self.inputs.hyprland.packages.${pkgs.system}.xdg-desktop-portal-hyprland;
settings = { settings = {
monitor = ", 2560x1440@165.00Hz, 0x0, 1"; monitor = ", 2560x1440@165.00Hz, 0x0, 1";
@ -92,9 +92,7 @@
"${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpaper.service" "${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpaper.service"
"${lib.getExe' pkgs.systemd "systemctl"} --user start hypridle.service" "${lib.getExe' pkgs.systemd "systemctl"} --user start hypridle.service"
"${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpolkitagent.service" "${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpolkitagent.service"
"${lib.getExe self.inputs.noctalia.packages.${pkgs.system}.default}"
# "${lib.getExe' pkgs.systemd "systemctl"} --user start noctalis.service"
"${lib.getExe inputs.noctalia.packages.${pkgs.system}.default}"
"${lib.getExe' pkgs.hyprland "hyprctl"} setcursor material_light_cursors 20" "${lib.getExe' pkgs.hyprland "hyprctl"} setcursor material_light_cursors 20"
]; ];
@ -102,13 +100,12 @@
bind = [ bind = [
"ALT, return, exec, ${lib.getExe pkgs.ghostty}" "ALT, return, exec, ${lib.getExe pkgs.ghostty}"
"ALT, Q, killactive," "ALT, Q, killactive,"
"ALT, S, exec, ${lib.getExe inputs.noctalia.packages.${pkgs.system}.default} ipc call launcher toggle" "ALT, S, exec, ${lib.getExe self.inputs.noctalia.packages.${pkgs.system}.default} ipc call launcher toggle"
"ALT, F, fullscreen, 0" "ALT, F, fullscreen, 0"
"ALT, L, exec, ${lib.getExe pkgs.hyprlock}" "ALT, L, exec, ${lib.getExe pkgs.hyprlock}"
"ALT SHIFT, E, exit,"
"ALT SHIFT, space, togglefloating, active" "ALT SHIFT, space, togglefloating, active"
"ALT SHIFT, S, exec, ${lib.getExe pkgs.grimblast} --notify --freeze copysave area /home/hand7s/Pictures/Screenshots/$(date '+%y%m%d_%H-%M-%s').png" "ALT SHIFT, S, exec, ${lib.getExe pkgs.grimblast} --notify --freeze copysave area /home/hand7s/Pictures/Screenshots/$(date '+%y%m%d_%H-%M-%s').png | , killall -9 hyprpicker"
"ALT, left, movefocus, l" "ALT, left, movefocus, l"
"ALT, right, movefocus, r" "ALT, right, movefocus, r"
@ -139,6 +136,8 @@
"ALT SHIFT, 0, movetoworkspacesilent, 10" "ALT SHIFT, 0, movetoworkspacesilent, 10"
"ALT SHIFT, H, movetoworkspacesilent, special" "ALT SHIFT, H, movetoworkspacesilent, special"
"ALT, Tab, hyprexpo:expo, toggle"
"ALT, mouse_down, workspace, e+1" "ALT, mouse_down, workspace, e+1"
"ALT, mouse_up, workspace, e-1" "ALT, mouse_up, workspace, e-1"
]; ];
@ -166,14 +165,16 @@
animation = [ animation = [
"enabled = true" "enabled = true"
"bezier = bez, 0.05, 0.9, 0.1, 1.05" "animation = windows, 1, 7, popin"
"animation = windowsOut, 1, 7, popin"
"animation = windows, 1, 7, bez" "animation = layers, 1, 7, fade"
"animation = windowsOut, 1, 7, default, popin 80%"
"animation = border, 1, 10, default" "animation = border, 1, 10"
"animation = borderangle, 1, 10, default" "animation = borderangle, 1, 10"
"animation = fade, 1, 7, default"
"animation = workspaces, 1, 7, default" "animation = workspaces, 1, 7, slidevert"
"animation = specialWorkspace, 1, 7, slidevert"
]; ];
misc = { misc = {
@ -216,10 +217,15 @@
hyprscrolling = { hyprscrolling = {
fullscreen_on_one_column = true; fullscreen_on_one_column = true;
follow_focus = true; follow_focus = true;
column_width = 0.7;
focus_fit_method = "center";
}; };
easymotion = { hyprexpo = {
only_special = false; columns = 2;
gap_size = 10;
skip_empty = true;
workspace_method = "workspace";
}; };
dynamic-cursors = { dynamic-cursors = {
@ -228,7 +234,7 @@
threshold = 2; threshold = 2;
stretch = { stretch = {
limit = 4000; limit = 4000;
function = "quadratic"; function = "linear";
}; };
shake = { shake = {
@ -256,17 +262,10 @@
}; };
}; };
plugins = [ plugins = with pkgs.hyprlandPlugins; [
# pkgs.hyprlandPlugins.hypr-dynamic-cursors hypr-dynamic-cursors
# pkgs.hyprlandPlugins.xtra-dispatchers hyprscrolling
# pkgs.hyprlandPlugins.hyprwinwrap hyprexpo
# pkgs.hyprlandPlugins.hyprgrass
# pkgs.hyprlandPlugins.hyprscrolling
# inputs.hyprcurs.packages.${pkgs.system}.hypr-dynamic-cursors
# inputs.hyprplugs.packages.${pkgs.system}.hyprscrolling
# inputs.hyprplugs.packages.${pkgs.system}.xtra-dispatchers
# inputs.hyprplugs.packages.${pkgs.system}.hyprwinwrap
]; ];
}; };
}; };

View file

@ -1,112 +0,0 @@
{
config,
pkgs,
lib,
...
}: {
wayland = {
windowManager = {
river = {
enable =
lib.mkIf (
config.home.gui.sessionType == "River"
)
true;
settings = {
default-layout = "rivertile";
focus-follows-cursor = "normal";
border-width = 2;
declare-mod = [
"locked"
"normal"
];
xwayland = {
enable = true;
};
map = {
normal = {
"Alt Q" = "close";
"Alt S" = "spawn fuzzel";
"Alt Return" = "spawn ghostty";
"Alt L" = "spawn hyprlock";
"Alt F" = "toggle-fullscreen";
"Alt+Shift S" = "spawn wayshot --clipboard";
"Alt+Shift E" = "exit";
"Alt+Shift Space" = "toggle-float";
"Alt Up" = "send-to-output next";
"Alt Down" = "send-to-output previous";
"Alt Right" = "send-to-output next";
"Alt Left" = "send-to-output previous";
"Alt 1" = "set-focused-tags 0";
"Alt 2" = "set-focused-tags 1";
"Alt 3" = "set-focused-tags 2";
"Alt 4" = "set-focused-tags 3";
"Alt 5" = "set-focused-tags 4";
"Alt 6" = "set-focused-tags 5";
"Alt 7" = "set-focused-tags 6";
"Alt 8" = "set-focused-tags 7";
"Alt 9" = "set-focused-tags 8";
"Alt H" = "toggle-focused-tags 20";
"Alt+Shift 1" = "set-view-tags 0";
"Alt+Shift 2" = "set-view-tags 1";
"Alt+Shift 3" = "set-view-tags 2";
"Alt+Shift 4" = "set-view-tags 3";
"Alt+Shift 5" = "set-view-tags 4";
"Alt+Shift 6" = "set-view-tags 5";
"Alt+Shift 7" = "set-view-tags 6";
"Alt+Shift 8" = "set-view-tags 7";
"Alt+Shift 9" = "set-view-tags 8";
"Alt+Shift H" = "set-view-tags 20";
"Alt+Control 1" = "toggle-focused-tags 0";
"Alt+Control 2" = "toggle-focused-tags 1";
"Alt+Control 3" = "toggle-focused-tags 2";
"Alt+Control 4" = "toggle-focused-tags 3";
"Alt+Control 5" = "toggle-focused-tags 4";
"Alt+Control 6" = "toggle-focused-tags 5";
"Alt+Control 7" = "toggle-focused-tags 6";
"Alt+Control 8" = "toggle-focused-tags 7";
"Alt+Control 9" = "toggle-focused-tags 8";
"Alt+Control H" = "toggle-focused-tags 20";
"Alt+Shift+Control 1" = "toggle-view-tags 0";
"Alt+Shift+Control 2" = "toggle-view-tags 1";
"Alt+Shift+Control 3" = "toggle-view-tags 2";
"Alt+Shift+Control 4" = "toggle-view-tags 3";
"Alt+Shift+Control 5" = "toggle-view-tags 4";
"Alt+Shift+Control 6" = "toggle-view-tags 5";
"Alt+Shift+Control 7" = "toggle-view-tags 6";
"Alt+Shift+Control 8" = "toggle-view-tags 7";
"Alt+Shift+Control 9" = "toggle-view-tags 8";
"Alt+Shift+Control H" = "toggle-view-tags 20";
};
map-pointer = {
normal = {
"Alt BTN_LEFT" = "move-view";
"Alt BTN_RIGHT" = "resize-view";
};
};
};
};
extraConfig = ''
${lib.getExe' pkgs.river "riverctl"} keyboard-layout -options "grp:caps_toggle" "us,ru"
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpaper.service
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpolkitagent.service
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getExe' pkgs.systemd "systemctl"} --user start yambar.service
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getEce pkgs.wayidle} -t=300 ${lib.getExe pkgs.brightnessctl} -s set 10
${lib.getExe' pkgs.river "riverctl"} spawn ${lib.getEce pkgs.wayidle} -t=600 ${lib.getExe pkgs.waylock}
'';
};
};
};
}

View file

@ -1,185 +0,0 @@
{
config,
pkgs,
lib,
...
}: {
wayland = {
windowManager = {
sway = {
enable =
lib.mkIf (
config.home.gui.sessionType == "Sway"
)
true;
package = pkgs.sway;
config = {
bindkeysToCode = true;
defaultWorkspace = "workspace number 1";
workspaceAutoBackAndForth = true;
bars = [];
window = {
border = 2;
titlebar = false;
hideEdgeBorders = "both";
};
floating = {
border = 2;
titlebar = false;
modifier = "Mod1";
};
focus = {
forceWrapping = true;
mouseWarping = true;
followMouse = "always";
newWindow = "smart";
wrapping = "yes";
};
gaps = {
vertical = null;
horizontal = null;
outer = null;
inner = null;
top = null;
bottom = null;
left = null;
right = null;
smartGaps = false;
smartBorders = "no_gaps";
};
startup = [
{
command = "${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpaper.service";
}
{
command = "${lib.getExe' pkgs.systemd "systemctl"} --user start hypridle.service";
}
{
command = "${lib.getExe' pkgs.systemd "systemctl"} --user start hyprpolkitagent.service";
}
{
command = "${lib.getExe' pkgs.systemd "systemctl"} --user start yambar.service";
}
{
command = "${lib.getExe pkgs.sway-audio-idle-inhibit}";
}
{
command = "${lib.getExe pkgs.autotiling-rs}";
}
{
command = "${lib.getExe pkgs.swaykbdd}";
}
];
keybindings = lib.mkOptionDefault {
"Mod1+q" = "kill";
"Mod1+s" = "exec ${lib.getExe pkgs.fuzzel}";
"Mod1+Return" = "exec ${lib.getExe pkgs.ghostty}";
"Mod1+l" = "exec ${lib.getExe pkgs.swaylock}";
"Mod1+f" = "fullscreen toggle";
"Mod1+Shift+s" = "exec ${lib.getExe pkgs.sway-contrib.grimshot} --notify copy area /home/hand7s/Pictures/Screenshots/$(date '+%y%m%d_%H-%M-%s').png";
"Mod1+Shift+e" = "exec ${lib.getExe' pkgs.sway "swaymsg"} exit";
"Mod1+Space" = "floating toggle";
"Mod1+r" = "mode resize";
"Mod1+Left" = "focus left";
"Mod1+Right" = "focus right";
"Mod1+Up" = "focus up";
"Mod1+Down" = "focus down";
"Mod1+1" = "workspace number 1";
"Mod1+2" = "workspace number 2";
"Mod1+3" = "workspace number 3";
"Mod1+4" = "workspace number 4";
"Mod1+5" = "workspace number 5";
"Mod1+6" = "workspace number 6";
"Mod1+7" = "workspace number 7";
"Mod1+8" = "workspace number 8";
"Mod1+9" = "workspace number 9";
"Mod1+0" = "workspace number 10";
"Mod1+h" = "scratchpad show";
"Mod1+Shift+1" = "move container to workspace number 1";
"Mod1+Shift+2" = "move container to workspace number 2";
"Mod1+Shift+3" = "move container to workspace number 3";
"Mod1+Shift+4" = "move container to workspace number 4";
"Mod1+Shift+5" = "move container to workspace number 5";
"Mod1+Shift+6" = "move container to workspace number 6";
"Mod1+Shift+7" = "move container to workspace number 7";
"Mod1+Shift+8" = "move container to workspace number 8";
"Mod1+Shift+9" = "move container to workspace number 9";
"Mod1+Shift+0" = "move container to workspace number 10";
"Mod1+Shift+h" = "move scratchpad";
"XF86AudioRaiseVolume" = "exec ${lib.getExe' pkgs.wireplumber "wpctl"} set-volume @DEFAULT_AUDIO_SINK@ 5%+";
"XF86AudioLowerVolume" = "exec ${lib.getExe' pkgs.wireplumber "wpctl"} set-volume @DEFAULT_AUDIO_SINK@ 5%-";
"XF86AudioMute" = "exec ${lib.getExe' pkgs.wireplumber "wpctl"} set-mute @DEFAULT_AUDIO_SINK@ toggle";
"XF86AudioPlay" = "exec ${lib.getExe pkgs.playerctl} play-pause";
"XF86AudioPrev" = "exec ${lib.getExe pkgs.playerctl} previous";
"XF86AudioNext" = "exec ${lib.getExe pkgs.playerctl} next";
"XF86MonBrightnessDown" = "exec ${lib.getExe pkgs.brightnessctl} set 5%-";
"XF86MonBrightnessUp" = "exec ${lib.getExe pkgs.brightnessctl} set +5%";
};
modes = {
resize = {
"Left" = "resize shrink width 10px";
"Right" = "resize shrink width 10px";
"Up" = "resize shrink height 10px";
"Down" = "resize shrink height 10px";
"Shift+Left" = "resize grow width 10px";
"Shift+Right" = "resize grow width 10px";
"Shift+Up" = "resize grow height 10px";
"Shift+Down" = "resize grow height 10px";
"Escape" = "mode default";
"Return" = "mode default";
};
};
input = {
"type:pointer" = {
accel_profile = "flat";
pointer_accel = "0";
};
"type:keyboard" = {
xkb_layout = "us,ru";
xkb_options = "grp:caps_toggle";
};
"type:touchpad" = {
natural_scroll = "enabled";
tap = "enabled";
};
};
};
extraConfig = ''
bindswitch lid:on exec swaylock
'';
};
};
};
}