stuffs
This commit is contained in:
parent
2be3c2087d
commit
c726abdce1
1158
flake.lock
1158
flake.lock
File diff suppressed because it is too large
Load Diff
17
flake.nix
17
flake.nix
@ -14,19 +14,26 @@
|
|||||||
nixinate.url = "github:matthewcroughan/nixinate";
|
nixinate.url = "github:matthewcroughan/nixinate";
|
||||||
nixinate.inputs.nixpkgs.follows = "nixpkgs";
|
nixinate.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
||||||
|
nixpkgs-wayland.url = "github:nix-community/nixpkgs-wayland";
|
||||||
|
nixpkgs-wayland.flake = false;
|
||||||
|
|
||||||
helix.url = "github:helix-editor/helix";
|
helix.url = "github:helix-editor/helix";
|
||||||
|
|
||||||
hyprland.url = "github:hyprwm/Hyprland";
|
hyprland.url = "github:hyprwm/Hyprland";
|
||||||
fufexan.url = "github:fufexan/dotfiles";
|
hyprland.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
fufexan.inputs.hyprland.follows = "hyprland";
|
hyprland-contrib.url = "github:hyprwm/contrib";
|
||||||
|
hyprland-contrib.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
||||||
blog.url = "git+https://git.gaze.systems/dusk/website.git";
|
blog.url = "git+https://git.gaze.systems/dusk/website.git";
|
||||||
blog.inputs.nixpkgs.follows = "nixpkgs";
|
blog.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
||||||
bernbot.url = "github:yusdacra/bernbot";
|
bernbot.url = "github:yusdacra/bernbot";
|
||||||
bernbot.inputs.nixpkgs.follows = "nixpkgs";
|
bernbot.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
discocss.url = "github:fufexan/discocss/flake";
|
|
||||||
discocss.inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
nil.url = "github:oxalica/nil";
|
nil.url = "github:oxalica/nil";
|
||||||
nil.inputs.nixpkgs.follows = "nixpkgs";
|
nil.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
webcord.url = "github:fufexan/webcord-flake/system-electron";
|
|
||||||
|
webcord.url = "github:fufexan/webcord-flake";
|
||||||
webcord.inputs.nixpkgs.follows = "nixpkgs";
|
webcord.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
4
locale/geo.nix
Normal file
4
locale/geo.nix
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
lat = "39.1";
|
||||||
|
long = "35.6";
|
||||||
|
}
|
@ -1,20 +0,0 @@
|
|||||||
{inputs}: final: prev: {
|
|
||||||
discord-open-asar = final.callPackage "${inputs.fufexan}/pkgs/discord" {
|
|
||||||
inherit (prev.discord) pname version src;
|
|
||||||
|
|
||||||
openasar = prev.callPackage "${inputs.nixpkgs}/pkgs/applications/networking/instant-messengers/discord/openasar.nix" {};
|
|
||||||
binaryName = "Discord";
|
|
||||||
desktopName = "Discord";
|
|
||||||
|
|
||||||
enableVulkan = false;
|
|
||||||
extraOptions = [
|
|
||||||
"--disable-gpu-memory-buffer-video-frames"
|
|
||||||
"--enable-accelerated-mjpeg-decode"
|
|
||||||
"--enable-accelerated-video"
|
|
||||||
"--enable-gpu-rasterization"
|
|
||||||
"--enable-native-gpu-memory-buffers"
|
|
||||||
"--enable-zero-copy"
|
|
||||||
"--ignore-gpu-blocklist"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
1
pkgs-set/overlays/nixpkgs-wayland.nix
Normal file
1
pkgs-set/overlays/nixpkgs-wayland.nix
Normal file
@ -0,0 +1 @@
|
|||||||
|
{inputs}: (import "${inputs.nixpkgs-wayland}/overlay.nix")
|
@ -4,6 +4,7 @@ pkgs: (
|
|||||||
"fractal-next"
|
"fractal-next"
|
||||||
"obsidian"
|
"obsidian"
|
||||||
"comic-mono"
|
"comic-mono"
|
||||||
|
"chromium"
|
||||||
]
|
]
|
||||||
pkgs
|
pkgs
|
||||||
)
|
)
|
||||||
|
@ -35,20 +35,20 @@
|
|||||||
}:
|
}:
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "fractal-next";
|
pname = "fractal-next";
|
||||||
version = "1206d4ed12059a298b5d918fd0a77dca034f7084";
|
version = "5c70961c";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
domain = "gitlab.gnome.org";
|
domain = "gitlab.gnome.org";
|
||||||
owner = "GNOME";
|
owner = "GNOME";
|
||||||
repo = "fractal";
|
repo = "fractal";
|
||||||
rev = "1206d4ed12059a298b5d918fd0a77dca034f7084";
|
rev = "5c70961cea34ac92658b59254bc3ef428ca7fa91";
|
||||||
sha256 = "sha256-ioMgVj85BKvsIjBbTAHFN6k5B/H86GLMTgAXK/5ji/k=";
|
sha256 = "sha256-Ai26Nwm9ujqxW0NCpxd97NiJWImitl87coS724nv27g=";
|
||||||
};
|
};
|
||||||
|
|
||||||
cargoDeps = rustPlatform.fetchCargoTarball {
|
cargoDeps = rustPlatform.fetchCargoTarball {
|
||||||
inherit src;
|
inherit src;
|
||||||
name = "${pname}-${version}";
|
name = "${pname}-${version}";
|
||||||
hash = "sha256-gbTljLIYAanXm1D/tNBGNMlaDatXgZDeSY5pA8s5gog=";
|
sha256 = "sha256-8fgQvlZGbntz2buQ/nCo90Kbel9aeC4kD3uqTdefylg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
@ -5,15 +5,6 @@
|
|||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
# imports = [inputs.discocss.hmModule];
|
|
||||||
|
|
||||||
# programs.discocss = {
|
|
||||||
# enable = true;
|
|
||||||
# discord = inputs.fufexan.packages.${pkgs.system}.discord-electron-openasar;
|
|
||||||
# discordAlias = true;
|
|
||||||
# css = builtins.readFile ./theme.css;
|
|
||||||
# };
|
|
||||||
|
|
||||||
home.persistence."${config.system.persistDir}${config.home.homeDirectory}".directories = [
|
home.persistence."${config.system.persistDir}${config.home.homeDirectory}".directories = [
|
||||||
".config/WebCord"
|
".config/WebCord"
|
||||||
];
|
];
|
||||||
|
@ -5,45 +5,41 @@
|
|||||||
}: {
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
../wayland
|
../wayland
|
||||||
|
../swaylock
|
||||||
|
../wlsunset
|
||||||
|
./swayidle.nix
|
||||||
inputs.hyprland.homeManagerModules.default
|
inputs.hyprland.homeManagerModules.default
|
||||||
];
|
];
|
||||||
|
|
||||||
home.packages =
|
home.packages = with pkgs; [
|
||||||
[
|
|
||||||
(import "${inputs.fufexan}/home/wayland/screenshot.nix" {inherit pkgs;})
|
|
||||||
]
|
|
||||||
++ (
|
|
||||||
with pkgs; [
|
|
||||||
wf-recorder
|
wf-recorder
|
||||||
xorg.xprop
|
xorg.xprop
|
||||||
]
|
inputs.hyprland-contrib.packages.${pkgs.system}.grimblast
|
||||||
);
|
light
|
||||||
|
playerctl
|
||||||
|
wlogout
|
||||||
|
];
|
||||||
|
|
||||||
wayland.windowManager.hyprland = {
|
wayland.windowManager.hyprland = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = inputs.hyprland.packages.${pkgs.system}.hyprland;
|
package = inputs.hyprland.packages.${pkgs.system}.hyprland;
|
||||||
extraConfig = let
|
extraConfig = let
|
||||||
rofi = "${pkgs.rofi-wayland}/bin/rofi";
|
launcher = "rofi -show drun";
|
||||||
launcher = "${rofi} -show drun";
|
term = "wezterm";
|
||||||
term = "${pkgs.wezterm}/bin/wezterm";
|
|
||||||
|
|
||||||
swaybg = "${pkgs.swaybg}/bin/swaybg";
|
|
||||||
light = "${pkgs.light}/bin/light";
|
|
||||||
playerctl = "${pkgs.playerctl}/bin/playerctl";
|
|
||||||
pulsemixer = "${pkgs.pulsemixer}/bin/pulsemixer";
|
|
||||||
wl-copy = "${pkgs.wl-clipboard}/bin/wl-copy";
|
|
||||||
notify-date = with pkgs;
|
notify-date = with pkgs;
|
||||||
writers.writeBash "notify-date" ''
|
writers.writeBash "notify-date" ''
|
||||||
${libnotify}/bin/notify-send -t 1000 " $(${coreutils}/bin/date +'%H:%M %d/%m/%Y')"
|
${libnotify}/bin/notify-send -t 1000 " $(${coreutils}/bin/date +'%H:%M %d/%m/%Y')"
|
||||||
'';
|
'';
|
||||||
in ''
|
in ''
|
||||||
# should be configured per-profile
|
# should be configured per-profile
|
||||||
monitor=,preferred,auto,1.6
|
monitor=eDP-1,preferred,auto,1.6
|
||||||
workspace=,1
|
monitor=HDMI-A-1,1920x1080@75,auto,1
|
||||||
|
workspace=eDP-1,1
|
||||||
|
workspace=HDMI-A-1,2
|
||||||
|
|
||||||
exec-once=dbus-update-activation-environment --systemd WAYLAND_DISPLAY DISPLAY HYPRLAND_INSTANCE_SIGNATURE
|
exec-once=xprop -root -f _XWAYLAND_GLOBAL_OUTPUT_SCALE 32c -set _XWAYLAND_GLOBAL_OUTPUT_SCALE 2
|
||||||
exec-once=systemctl --user start hyprland-session.target
|
exec-once=swaybg -i ~/.config/wallpaper
|
||||||
exec-once=${swaybg} -i ~/.config/wallpaper
|
|
||||||
|
|
||||||
input {
|
input {
|
||||||
kb_layout=tr
|
kb_layout=tr
|
||||||
@ -54,12 +50,10 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
general {
|
general {
|
||||||
sensitivity=1
|
|
||||||
main_mod=SUPER
|
main_mod=SUPER
|
||||||
gaps_in=5
|
gaps_in=5
|
||||||
gaps_out=5
|
gaps_out=5
|
||||||
border_size=0
|
border_size=0
|
||||||
damage_tracking=full
|
|
||||||
}
|
}
|
||||||
decoration {
|
decoration {
|
||||||
rounding=16
|
rounding=16
|
||||||
@ -67,12 +61,8 @@
|
|||||||
blur_size=3
|
blur_size=3
|
||||||
blur_passes=3
|
blur_passes=3
|
||||||
blur_new_optimizations=1
|
blur_new_optimizations=1
|
||||||
drop_shadow=1
|
drop_shadow=0
|
||||||
shadow_ignore_window=1
|
shadow_ignore_window=1
|
||||||
shadow_offset=2 2
|
|
||||||
shadow_range=2
|
|
||||||
shadow_render_power=1
|
|
||||||
col.shadow=0x55000000
|
|
||||||
}
|
}
|
||||||
animations {
|
animations {
|
||||||
enabled=1
|
enabled=1
|
||||||
@ -84,7 +74,18 @@
|
|||||||
dwindle {
|
dwindle {
|
||||||
pseudotile=0 # enable pseudotiling on dwindle
|
pseudotile=0 # enable pseudotiling on dwindle
|
||||||
}
|
}
|
||||||
|
misc {
|
||||||
|
no_vfr=0
|
||||||
|
}
|
||||||
|
|
||||||
|
windowrule=float,title:^(Media viewer)$
|
||||||
|
windowrule=float,title:^(Picture-in-Picture)$
|
||||||
|
windowrule=float,title:^(Firefox — Sharing Indicator)$
|
||||||
|
windowrule=move 0 0,title:^(Firefox — Sharing Indicator)$
|
||||||
|
|
||||||
|
|
||||||
|
bind=SUPER,Escape,exec,wlogout -p layer-shell
|
||||||
|
bind=SUPER,L,exec,swaylock
|
||||||
bind=SUPER,RETURN,exec,${term}
|
bind=SUPER,RETURN,exec,${term}
|
||||||
bind=SUPER,D,exec,${launcher}
|
bind=SUPER,D,exec,${launcher}
|
||||||
bind=SUPER,Q,killactive,
|
bind=SUPER,Q,killactive,
|
||||||
@ -93,14 +94,18 @@
|
|||||||
bind=SUPER,P,pseudo,
|
bind=SUPER,P,pseudo,
|
||||||
bind=SUPER,T,exec,${notify-date}
|
bind=SUPER,T,exec,${notify-date}
|
||||||
bind=SUPERSHIFT,T,togglefloating,
|
bind=SUPERSHIFT,T,togglefloating,
|
||||||
bind=,XF86AudioPlay,exec,${playerctl} play-pause
|
|
||||||
bind=,XF86AudioPrev,exec,${playerctl} previous
|
bind=,XF86AudioPlay,exec,playerctl play-pause
|
||||||
bind=,XF86AudioNext,exec,${playerctl} next
|
bind=,XF86AudioPrev,exec,playerctl previous
|
||||||
bind=,XF86AudioRaiseVolume,exec,${pulsemixer} --change-volume +6
|
bind=,XF86AudioNext,exec,playerctl next
|
||||||
bind=,XF86AudioLowerVolume,exec,${pulsemixer} --change-volume -6
|
|
||||||
bind=,XF86AudioMute,exec,${pulsemixer} --toggle-mute
|
bindle=,XF86AudioRaiseVolume,exec,wpctl set-volume @DEFAULT_AUDIO_SINK@ 6%+
|
||||||
bind=,XF86MonBrightnessUp,exec,${light} -A 5
|
bindle=,XF86AudioLowerVolume,exec,wpctl set-volume @DEFAULT_AUDIO_SINK@ 6%-
|
||||||
bind=,XF86MonBrightnessDown,exec,${light} -U 5
|
bind=,XF86AudioMute,exec,wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||||
|
bind=,XF86AudioMicMute,exec,wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
|
||||||
|
|
||||||
|
bind=,XF86MonBrightnessUp,exec,light -A 5
|
||||||
|
bind=,XF86MonBrightnessDown,exec,light -U 5
|
||||||
|
|
||||||
# move focus
|
# move focus
|
||||||
bind=SUPER,left,movefocus,l
|
bind=SUPER,left,movefocus,l
|
||||||
@ -139,21 +144,13 @@
|
|||||||
bind=SUPERSHIFT,8,movetoworkspace,8
|
bind=SUPERSHIFT,8,movetoworkspace,8
|
||||||
bind=SUPERSHIFT,9,movetoworkspace,9
|
bind=SUPERSHIFT,9,movetoworkspace,9
|
||||||
|
|
||||||
## screenshot ##
|
# screenshot
|
||||||
bind=,Print,exec,screenshot area
|
bind=,Print,exec,grimblast --notify copysave area
|
||||||
bind=SUPERSHIFT,R,exec,screenshot area
|
bind=SUPERSHIFT,R,exec,grimblast --notify copysave area
|
||||||
|
bind=CTRL,Print,exec,grimblast --notify --cursor copysave output
|
||||||
# monitor
|
bind=SUPERSHIFTCTRL,R,exec,grimblast --notify --cursor copysave output
|
||||||
bind=CTRL,Print,exec,screenshot monitor
|
bind=ALT,Print,exec,grimblast --notify --cursor copysave screen
|
||||||
bind=SUPERSHIFTCTRL,R,exec,screenshot monitor
|
bind=SUPERSHIFTALT,R,exec,grimblast --notify --cursor copysave screen
|
||||||
|
|
||||||
# all-monitors
|
|
||||||
bind=ALT,Print,exec,screenshot all
|
|
||||||
bind=SUPERSHIFTALT,R,exec,screenshot all
|
|
||||||
|
|
||||||
# screenrec
|
|
||||||
bind=ALT,Print,exec,screenshot rec area
|
|
||||||
bind=SUPERSHIFTALT,R,exec,screenshot rec area
|
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
32
users/modules/hyprland/swayidle.nix
Normal file
32
users/modules/hyprland/swayidle.nix
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
home.packages = with pkgs; [wlopm swayidle];
|
||||||
|
services.swayidle = {
|
||||||
|
enable = true;
|
||||||
|
events = [
|
||||||
|
{
|
||||||
|
event = "before-sleep";
|
||||||
|
command = "swaylock";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
event = "lock";
|
||||||
|
command = "swaylock";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
timeouts = [
|
||||||
|
{
|
||||||
|
timeout = 120;
|
||||||
|
command = "wlopm --off \*";
|
||||||
|
resumeCommand = "wlopm --on \*";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
timeout = 300;
|
||||||
|
command = "loginctl lock-session";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
systemd.user.services.swayidle.Install.WantedBy = lib.mkForce ["hyprland-session.target"];
|
||||||
|
}
|
17
users/modules/swaylock/default.nix
Normal file
17
users/modules/swaylock/default.nix
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
home.packages = [pkgs.swaylock-effects];
|
||||||
|
|
||||||
|
programs.swaylock.settings = {
|
||||||
|
screenshot = true;
|
||||||
|
ignore-empty-password = true;
|
||||||
|
clock = true;
|
||||||
|
effect-scale = "0.5";
|
||||||
|
effect-greyscale = true;
|
||||||
|
effect-blur = "20x3";
|
||||||
|
font = config.fonts.settings.name;
|
||||||
|
};
|
||||||
|
}
|
@ -6,12 +6,7 @@
|
|||||||
home.sessionVariables = {
|
home.sessionVariables = {
|
||||||
NIXOS_OZONE_WL = "1";
|
NIXOS_OZONE_WL = "1";
|
||||||
MOZ_ENABLE_WAYLAND = "1";
|
MOZ_ENABLE_WAYLAND = "1";
|
||||||
};
|
XDG_SESSION_TYPE = "wayland";
|
||||||
|
GDK_SCALE = "2";
|
||||||
services = {
|
|
||||||
gammastep = {
|
|
||||||
enable = true;
|
|
||||||
provider = "geoclue2";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
11
users/modules/wlsunset/default.nix
Normal file
11
users/modules/wlsunset/default.nix
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
{inputs, ...}:
|
||||||
|
let
|
||||||
|
geo = import "${inputs.self}/locale/geo.nix";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
services.wlsunset = {
|
||||||
|
enable = true;
|
||||||
|
latitude = geo.lat;
|
||||||
|
longitude = geo.long;
|
||||||
|
};
|
||||||
|
}
|
@ -56,14 +56,6 @@ in {
|
|||||||
seahorse.enable = true;
|
seahorse.enable = true;
|
||||||
};
|
};
|
||||||
services = {
|
services = {
|
||||||
# provide location
|
|
||||||
geoclue2 = {
|
|
||||||
enable = true;
|
|
||||||
appConfig.gammastep = {
|
|
||||||
isAllowed = true;
|
|
||||||
isSystem = false;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
syncthing.folders = {
|
syncthing.folders = {
|
||||||
notes = {
|
notes = {
|
||||||
enable = true;
|
enable = true;
|
||||||
@ -72,12 +64,18 @@ in {
|
|||||||
ignorePerms = true;
|
ignorePerms = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
gnome.gnome-keyring.enable = true;
|
||||||
};
|
};
|
||||||
# gnome keyring better fr fr
|
# gnome keyring better fr fr
|
||||||
security.pam.services.patriot = {
|
security.pam.services.patriot = {
|
||||||
enableGnomeKeyring = true;
|
enableGnomeKeyring = true;
|
||||||
enableKwallet = false;
|
enableKwallet = false;
|
||||||
};
|
};
|
||||||
|
security.pam.services.swaylock = {
|
||||||
|
text = ''
|
||||||
|
auth include login
|
||||||
|
'';
|
||||||
|
};
|
||||||
systemd = {
|
systemd = {
|
||||||
targets.network-online.enable = false;
|
targets.network-online.enable = false;
|
||||||
services = {
|
services = {
|
||||||
@ -135,7 +133,6 @@ in {
|
|||||||
"zsh"
|
"zsh"
|
||||||
"keyrings"
|
"keyrings"
|
||||||
"lutris"
|
"lutris"
|
||||||
"PolyMC"
|
|
||||||
"Terraria"
|
"Terraria"
|
||||||
]
|
]
|
||||||
++ mkPaths ".config" [
|
++ mkPaths ".config" [
|
||||||
@ -178,10 +175,10 @@ in {
|
|||||||
mupdf
|
mupdf
|
||||||
xdg_utils
|
xdg_utils
|
||||||
rust-analyzer
|
rust-analyzer
|
||||||
# polymc
|
|
||||||
cloudflared
|
cloudflared
|
||||||
lutris
|
lutris
|
||||||
protontricks
|
protontricks
|
||||||
|
fractal-next
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
programs = {
|
programs = {
|
||||||
|
Loading…
Reference in New Issue
Block a user