Compare commits
9 Commits
c08192ac34
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
5911da7f99
|
|||
|
d1949310c5
|
|||
|
f83a201895
|
|||
|
4ce282f378
|
|||
|
d2a8db4d57
|
|||
|
a4282dd9aa
|
|||
|
9e4fc8ee21
|
|||
|
a31ac455cb
|
|||
|
e5230def14
|
48
flake.nix
48
flake.nix
@@ -98,30 +98,30 @@
|
|||||||
};
|
};
|
||||||
});
|
});
|
||||||
})
|
})
|
||||||
(
|
# (
|
||||||
final: prev:
|
# final: prev:
|
||||||
let
|
# let
|
||||||
system = prev.stdenv.hostPlatform.system;
|
# system = prev.stdenv.hostPlatform.system;
|
||||||
pkgs_gamescope = import inputs.nixpkgs-gamescope {
|
# pkgs_gamescope = import inputs.nixpkgs-gamescope {
|
||||||
inherit system;
|
# inherit system;
|
||||||
config = {
|
# config = {
|
||||||
allow_unfree = true;
|
# allow_unfree = true;
|
||||||
};
|
# };
|
||||||
};
|
# };
|
||||||
packageNix = "${inputs.nixpkgs-gamescope}/pkgs/by-name/ga/gamescope/package.nix";
|
# packageNix = "${inputs.nixpkgs-gamescope}/pkgs/by-name/ga/gamescope/package.nix";
|
||||||
in
|
# in
|
||||||
{
|
# {
|
||||||
gamescope = pkgs_gamescope.callPackage packageNix { };
|
# gamescope = pkgs_gamescope.callPackage packageNix { };
|
||||||
}
|
# }
|
||||||
)
|
# )
|
||||||
(self: super: {
|
# (self: super: {
|
||||||
intel-npu-driver = super.intel-npu-driver.overrideAttrs (oldAttrs: rec {
|
# intel-npu-driver = super.intel-npu-driver.overrideAttrs (oldAttrs: rec {
|
||||||
installPhase = ''
|
# installPhase = ''
|
||||||
mkdir -p $out/lib/firmware
|
# mkdir -p $out/lib/firmware
|
||||||
${oldAttrs.installPhase}
|
# ${oldAttrs.installPhase}
|
||||||
'';
|
# '';
|
||||||
});
|
# });
|
||||||
})
|
# })
|
||||||
(final: prev: {
|
(final: prev: {
|
||||||
vesktop = prev.vesktop.overrideAttrs (old: {
|
vesktop = prev.vesktop.overrideAttrs (old: {
|
||||||
preBuild = ''
|
preBuild = ''
|
||||||
|
|||||||
@@ -1,143 +1,12 @@
|
|||||||
{ pkgs, lib, ... }:
|
{ pkgs, lib, ... }:
|
||||||
let
|
let
|
||||||
battery-limit-script = ''
|
batt-gpu = pkgs.writeShellScript "batt-igpu" ''
|
||||||
start_batt() {
|
|
||||||
echo 80 > /sys/class/power_supply/BAT0/charge_control_end_threshold
|
|
||||||
}
|
|
||||||
stop_batt() {
|
|
||||||
echo "meow"
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
gpu-limit-frequency = ''
|
|
||||||
start_gpu() {
|
|
||||||
${pkgs.intel-gpu-tools}/bin/intel_gpu_frequency -e
|
${pkgs.intel-gpu-tools}/bin/intel_gpu_frequency -e
|
||||||
}
|
echo "800" > /sys/class/drm/card1/gt_boost_freq_mhz
|
||||||
|
'';
|
||||||
stop_gpu() {
|
ac-gpu = pkgs.writeShellScript "ac-igpu" ''
|
||||||
${pkgs.intel-gpu-tools}/bin/intel_gpu_frequency -d
|
${pkgs.intel-gpu-tools}/bin/intel_gpu_frequency -d
|
||||||
}
|
echo "2350" > /sys/class/drm/card1/gt_boost_freq_mhz
|
||||||
'';
|
|
||||||
cpu-power-efficency = ''
|
|
||||||
start_cpu_effic() {
|
|
||||||
n=$(nproc)
|
|
||||||
i=0
|
|
||||||
while [ "$i" -lt $n ]; do
|
|
||||||
echo 178 | tee /sys/devices/system/cpu/cpu$i/cpufreq/energy_performance_preference
|
|
||||||
echo 8 | tee /sys/devices/system/cpu/cpu$i/power/energy_perf_bias
|
|
||||||
i=$(( i + 1 ))
|
|
||||||
done
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
|
|
||||||
stop_cpu_effic() {
|
|
||||||
n=$(nproc)
|
|
||||||
i=0
|
|
||||||
while [ "$i" -lt $n ]; do
|
|
||||||
echo "balance_performance" | tee /sys/devices/system/cpu/cpu$i/cpufreq/energy_performance_preference
|
|
||||||
echo 6 | tee /sys/devices/system/cpu/cpu$i/power/energy_perf_bias
|
|
||||||
i=$(( i + 1 ))
|
|
||||||
done
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
one-with-all = ''
|
|
||||||
#!/bin/sh
|
|
||||||
${battery-limit-script}
|
|
||||||
${gpu-limit-frequency}
|
|
||||||
${cpu-power-efficency}
|
|
||||||
start() {
|
|
||||||
echo "meow"
|
|
||||||
echo "mreoww" > /home/doloro/meow.txt
|
|
||||||
start_gpu
|
|
||||||
start_batt
|
|
||||||
start_cpu_effic
|
|
||||||
}
|
|
||||||
stop() {
|
|
||||||
stop_gpu
|
|
||||||
stop_batt
|
|
||||||
stop_cpu_effic
|
|
||||||
}
|
|
||||||
if [ "$1" == "start" ]; then
|
|
||||||
start
|
|
||||||
fi
|
|
||||||
if [ "$1" == "stop" ]; then
|
|
||||||
stop
|
|
||||||
fi
|
|
||||||
'';
|
|
||||||
tuned-auto-profile-config = ''
|
|
||||||
# TuneD rules for recommend_profile.
|
|
||||||
#
|
|
||||||
# Syntax:
|
|
||||||
# [PROFILE1]
|
|
||||||
# KEYWORD11=RE11
|
|
||||||
# KEYWORD21=RE12
|
|
||||||
#
|
|
||||||
# [PROFILE2]
|
|
||||||
# KEYWORD21=RE21
|
|
||||||
# KEYWORD22=RE22
|
|
||||||
|
|
||||||
# KEYWORD can be:
|
|
||||||
# virt - for RE to match output of virt-what
|
|
||||||
# system - for RE to match content of /etc/system-release-cpe
|
|
||||||
# process - for RE to match running processes. It can have arbitrary
|
|
||||||
# suffix, all process* lines have to match for the PROFILE
|
|
||||||
# to match (i.e. the AND operator)
|
|
||||||
# /FILE - for RE to match content of the FILE, e.g.:
|
|
||||||
# '/etc/passwd=.+'. If file doesn't exist, its RE will not
|
|
||||||
# match.
|
|
||||||
# chassis_type - for RE to match the chassis type as reported by dmidecode
|
|
||||||
# syspurpose_role - for RE to match the system role as reported by syspurpose
|
|
||||||
|
|
||||||
# All REs for all KEYWORDs have to match for PROFILE to match (i.e. the AND operator).
|
|
||||||
# If 'virt' or 'system' is not specified, it matches for every string.
|
|
||||||
# If 'virt' or 'system' is empty, i.e. 'virt=', it matches only empty string (alias for '^$').
|
|
||||||
# If several profiles matched, the first match is taken.
|
|
||||||
#
|
|
||||||
# Limitation:
|
|
||||||
# Each profile can be specified only once, because there cannot be
|
|
||||||
# multiple sections in the configuration file with the same name
|
|
||||||
# (ConfigParser limitation).
|
|
||||||
# If there is a need to specify the profile multiple times, unique
|
|
||||||
# suffix like ',ANYSTRING' can be used. Everything after the last ','
|
|
||||||
# is stripped by the parser, e.g.:
|
|
||||||
#
|
|
||||||
# [balanced,1]
|
|
||||||
# /FILE1=RE1
|
|
||||||
#
|
|
||||||
# [balanced,2]
|
|
||||||
# /FILE2=RE2
|
|
||||||
#
|
|
||||||
# This will set 'balanced' profile in case there is FILE1 matching RE1 or
|
|
||||||
# FILE2 matching RE2 or both.
|
|
||||||
|
|
||||||
# Profile for devices on battery
|
|
||||||
[doloro-power-saver]
|
|
||||||
virt=
|
|
||||||
system=
|
|
||||||
/sys/class/power_supply/BAT0/status=Discharging
|
|
||||||
|
|
||||||
# Profile for devices on AC power
|
|
||||||
[doloro-balanced]
|
|
||||||
virt=
|
|
||||||
system=
|
|
||||||
/sys/class/power_supply/BAT0/status=Charging
|
|
||||||
|
|
||||||
[atomic-host]
|
|
||||||
virt=
|
|
||||||
system=.*atomic.*
|
|
||||||
|
|
||||||
[atomic-guest]
|
|
||||||
virt=.+
|
|
||||||
system=.*atomic.*
|
|
||||||
|
|
||||||
[throughput-performance]
|
|
||||||
virt=
|
|
||||||
system=.*(computenode|server).*
|
|
||||||
|
|
||||||
[virtual-guest]
|
|
||||||
virt=.+
|
|
||||||
|
|
||||||
[balanced]
|
|
||||||
'';
|
'';
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
@@ -156,7 +25,7 @@ in
|
|||||||
# PCI Express Active-State Power Management (ASPM)
|
# PCI Express Active-State Power Management (ASPM)
|
||||||
PCIE_ASPM_ON_BAT = "powersupersave";
|
PCIE_ASPM_ON_BAT = "powersupersave";
|
||||||
|
|
||||||
# Runtime Power Management for PCI(e) buses/devices
|
RUNTIME_PM_ON_AC = "on";
|
||||||
RUNTIME_PM_ON_BAT = "auto";
|
RUNTIME_PM_ON_BAT = "auto";
|
||||||
|
|
||||||
# Disable Bluetooth on battery
|
# Disable Bluetooth on battery
|
||||||
@@ -165,9 +34,13 @@ in
|
|||||||
# Restore brightness on battery
|
# Restore brightness on battery
|
||||||
RESTORE_BRIGHTNESS_ON_BAT = "1";
|
RESTORE_BRIGHTNESS_ON_BAT = "1";
|
||||||
PCIE_ASPM_ON_AC = "balanced";
|
PCIE_ASPM_ON_AC = "balanced";
|
||||||
DEVICES_TO_DISABLE_ON_BAT_NOT_IN_USE = "bluetooth wifi wwan";
|
DEVICES_TO_DISABLE_ON_BAT_NOT_IN_USE = "bluetooth";
|
||||||
INTEL_GPU_MAX_FREQ_ON_AC = 0;
|
INTEL_GPU_MAX_FREQ_ON_AC = 0;
|
||||||
INTEL_GPU_MAX_FREQ_ON_BAT = 800;
|
INTEL_GPU_MAX_FREQ_ON_BAT = 800;
|
||||||
|
INTEL_GPU_BOOST_FREQ_ON_AC = 0;
|
||||||
|
INTEL_GPU_BOOST_FREQ_ON_BAT = 800;
|
||||||
|
|
||||||
|
CPU_MAX_PERF_ON_BAT = 50;
|
||||||
|
|
||||||
PLATFORM_PROFILE_ON_AC = "balanced";
|
PLATFORM_PROFILE_ON_AC = "balanced";
|
||||||
PLATFORM_PROFILE_ON_BAT = "quiet";
|
PLATFORM_PROFILE_ON_BAT = "quiet";
|
||||||
@@ -213,7 +86,7 @@ in
|
|||||||
};
|
};
|
||||||
boot.kernelParams = [
|
boot.kernelParams = [
|
||||||
# "mem_sleep_default=deep"
|
# "mem_sleep_default=deep"
|
||||||
"i915.fastboot=1"
|
# "i915.fastboot=1"
|
||||||
"pcie_aspm=force"
|
"pcie_aspm=force"
|
||||||
"ahci.mobile_lpm_policy=1"
|
"ahci.mobile_lpm_policy=1"
|
||||||
];
|
];
|
||||||
@@ -234,7 +107,7 @@ in
|
|||||||
|
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
Type = "oneshot";
|
Type = "oneshot";
|
||||||
ExecStart = "${pkgs.intel-gpu-tools}/bin/intel_gpu_frequency -e";
|
ExecStart = "${batt-gpu}";
|
||||||
RemainAfterExit = true;
|
RemainAfterExit = true;
|
||||||
};
|
};
|
||||||
wantedBy = [ "battery.target" ];
|
wantedBy = [ "battery.target" ];
|
||||||
@@ -247,7 +120,7 @@ in
|
|||||||
|
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
Type = "oneshot";
|
Type = "oneshot";
|
||||||
ExecStart = "${pkgs.intel-gpu-tools}/bin/intel_gpu_frequency -d";
|
ExecStart = "${ac-gpu}";
|
||||||
RemainAfterExit = true;
|
RemainAfterExit = true;
|
||||||
};
|
};
|
||||||
wantedBy = [ "ac.target" ];
|
wantedBy = [ "ac.target" ];
|
||||||
|
|||||||
@@ -31,8 +31,8 @@ in
|
|||||||
# Use the systemd-boot EFI boot loader.
|
# Use the systemd-boot EFI boot loader.
|
||||||
boot.loader.systemd-boot.enable = true;
|
boot.loader.systemd-boot.enable = true;
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
boot.kernelPackages = pkgs.linuxPackages_6_12; # Hibernate works on 6.12 but not on latest
|
# boot.kernelPackages = pkgs.linuxPackages_6_12; # Hibernate works on 6.12 but not on latest
|
||||||
# boot.kernelPackages = pkgs.linuxPackages_zen; # Hibernate works on 6.12 but not on latest
|
boot.kernelPackages = pkgs.linuxPackages_latest; # Unpinned the linux version for now.. as i am not using hibernate that often
|
||||||
networking.hostName = "doloro-nixos-laptop"; # Define your hostname.
|
networking.hostName = "doloro-nixos-laptop"; # Define your hostname.
|
||||||
security.rtkit.enable = true;
|
security.rtkit.enable = true;
|
||||||
|
|
||||||
@@ -61,6 +61,9 @@ in
|
|||||||
"doloro"
|
"doloro"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
services.gnome.gnome-keyring.enable = true;
|
||||||
|
|
||||||
hardware = {
|
hardware = {
|
||||||
firmware = [ pkgs.intel-npu-driver ];
|
firmware = [ pkgs.intel-npu-driver ];
|
||||||
cpu.intel = {
|
cpu.intel = {
|
||||||
@@ -149,6 +152,7 @@ in
|
|||||||
# tlp-pd
|
# tlp-pd
|
||||||
brightnessctl
|
brightnessctl
|
||||||
nvtopPackages.intel
|
nvtopPackages.intel
|
||||||
|
seahorse
|
||||||
];
|
];
|
||||||
|
|
||||||
# Some programs need SUID wrappers, can be configured further or are
|
# Some programs need SUID wrappers, can be configured further or are
|
||||||
|
|||||||
@@ -29,6 +29,10 @@ in
|
|||||||
fonts.enable = true;
|
fonts.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
services.resolved.enable = true;
|
||||||
|
|
||||||
|
services.gnome.gnome-keyring.enable = true;
|
||||||
|
|
||||||
# Use the systemd-boot EFI boot loader.
|
# Use the systemd-boot EFI boot loader.
|
||||||
boot.loader.grub.enable = true;
|
boot.loader.grub.enable = true;
|
||||||
boot.loader.grub.device = "nodev";
|
boot.loader.grub.device = "nodev";
|
||||||
@@ -232,7 +236,7 @@ in
|
|||||||
programs = {
|
programs = {
|
||||||
ssh = {
|
ssh = {
|
||||||
# enable = true;
|
# enable = true;
|
||||||
startAgent = true;
|
# startAgent = true;
|
||||||
|
|
||||||
};
|
};
|
||||||
fish.enable = true;
|
fish.enable = true;
|
||||||
@@ -270,6 +274,7 @@ in
|
|||||||
wget
|
wget
|
||||||
killall
|
killall
|
||||||
sops
|
sops
|
||||||
|
seahorse
|
||||||
];
|
];
|
||||||
|
|
||||||
# Some programs need SUID wrappers, can be configured further or are
|
# Some programs need SUID wrappers, can be configured further or are
|
||||||
|
|||||||
7
hosts/rpi-5/containers.nix
Normal file
7
hosts/rpi-5/containers.nix
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
{ ... }:
|
||||||
|
let
|
||||||
|
|
||||||
|
in
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
@@ -16,12 +16,48 @@ in
|
|||||||
imports = [
|
imports = [
|
||||||
rpi-pi.nixosModules.raspberry-pi
|
rpi-pi.nixosModules.raspberry-pi
|
||||||
rpi-pi.nixosModules.sd-image
|
rpi-pi.nixosModules.sd-image
|
||||||
|
./containers.nix
|
||||||
];
|
];
|
||||||
nix.settings = {
|
nix.settings = {
|
||||||
substituters = [ "https://nix-community.cachix.org" ];
|
substituters = [ "https://nix-community.cachix.org" ];
|
||||||
trusted-public-keys = [ "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" ];
|
trusted-public-keys = [ "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
services.traefik = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
staticConfigOptions = {
|
||||||
|
entryPoints = {
|
||||||
|
web = {
|
||||||
|
address = ":80";
|
||||||
|
http.redirections.entrypoint = {
|
||||||
|
to = "websecure";
|
||||||
|
scheme = "https";
|
||||||
|
};
|
||||||
|
asDefault = true;
|
||||||
|
};
|
||||||
|
websecure = {
|
||||||
|
address = ":443";
|
||||||
|
asDefault = true;
|
||||||
|
http.tls.certResolver = "letsencrypt";
|
||||||
|
};
|
||||||
|
traefik = {
|
||||||
|
address = ":8081";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
certificatesResolvers.letsencrypt.acme = {
|
||||||
|
email = "doloroo@proton.me";
|
||||||
|
storage = "${config.services.traefik.dataDir}/acme.json";
|
||||||
|
httpChallenge.entryPoint = "web";
|
||||||
|
};
|
||||||
|
api.dashboard = true;
|
||||||
|
api.insecure = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# TEMP
|
||||||
|
networking.firewall.enable = false;
|
||||||
|
|
||||||
users = {
|
users = {
|
||||||
mutableUsers = false;
|
mutableUsers = false;
|
||||||
users.doloro = {
|
users.doloro = {
|
||||||
@@ -33,8 +69,14 @@ in
|
|||||||
];
|
];
|
||||||
initialPassword = "meowmeowmeow";
|
initialPassword = "meowmeowmeow";
|
||||||
};
|
};
|
||||||
|
users.root = {
|
||||||
|
initialPassword = "rootmeow";
|
||||||
|
openssh.authorizedKeys.keys = [
|
||||||
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIE/4h+WCBBW82puv8SMdUbkWymF4amEMuZitgFztB6oZ" # laptop pub key
|
||||||
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBaa6Z5qtBSLEz+A4fQGYPfkOISsRQlmKkVbcx2zxML7" # pc pub key
|
||||||
|
];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
users.users.root.initialPassword = "root";
|
|
||||||
|
|
||||||
networking.hostName = "nixos-001-rp5";
|
networking.hostName = "nixos-001-rp5";
|
||||||
|
|
||||||
|
|||||||
@@ -45,6 +45,48 @@ in
|
|||||||
hyprlock = {
|
hyprlock = {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
|
wlogout = {
|
||||||
|
enable = true;
|
||||||
|
layout = [
|
||||||
|
{
|
||||||
|
"label" = "lock";
|
||||||
|
"action" = "hyprlock";
|
||||||
|
"text" = "Lock";
|
||||||
|
"keybind" = "l";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"label" = "hibernate";
|
||||||
|
"action" = "systemctl hibernate";
|
||||||
|
"text" = "Hibernate";
|
||||||
|
"keybind" = "h";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"label" = "logout";
|
||||||
|
"action" = "uwsm stop";
|
||||||
|
"text" = "Logout";
|
||||||
|
"keybind" = "e";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
# TODO add hypr shutdown
|
||||||
|
"label" = "shutdown";
|
||||||
|
"action" = "systemctl poweroff";
|
||||||
|
"text" = "Shutdown";
|
||||||
|
"keybind" = "s";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"label" = "suspend";
|
||||||
|
"action" = "systemctl suspend";
|
||||||
|
"text" = "Suspend";
|
||||||
|
"keybind" = "u";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
"label" = "reboot";
|
||||||
|
"action" = "systemctl reboot";
|
||||||
|
"text" = "Reboot";
|
||||||
|
"keybind" = "r";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
systemd.user.services."hyprland_suspend" = lib.mkIf cfg.suspend-on-hibernate {
|
systemd.user.services."hyprland_suspend" = lib.mkIf cfg.suspend-on-hibernate {
|
||||||
Unit = {
|
Unit = {
|
||||||
|
|||||||
@@ -37,8 +37,8 @@ in
|
|||||||
package = pkgs-unstable.mesa;
|
package = pkgs-unstable.mesa;
|
||||||
|
|
||||||
# if you also want 32-bit support (e.g for Steam)
|
# if you also want 32-bit support (e.g for Steam)
|
||||||
enable32Bit = true;
|
# enable32Bit = true;
|
||||||
package32 = pkgs-unstable.pkgsi686Linux.mesa;
|
# package32 = pkgs-unstable.pkgsi686Linux.mesa;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,21 +1,41 @@
|
|||||||
{ inputs, pkgs, ... }:
|
{ inputs, pkgs, ... }:
|
||||||
|
let
|
||||||
|
config = pkgs.writeTextFile {
|
||||||
|
name = "config";
|
||||||
|
text = ''
|
||||||
|
width = 100%
|
||||||
|
height = 100%
|
||||||
|
border-width = 0
|
||||||
|
outline-width = 0
|
||||||
|
padding-left = 35%
|
||||||
|
padding-top = 35%
|
||||||
|
result-spacing = 25
|
||||||
|
num-results = 5
|
||||||
|
font = monospace
|
||||||
|
background-color = #000A
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
script = pkgs.writeShellScript "mreow" ''
|
||||||
|
exec $(tofi-drun -c ${config})
|
||||||
|
'';
|
||||||
|
in
|
||||||
{
|
{
|
||||||
home.packages = [
|
home.packages = [
|
||||||
pkgs.hyprlauncher
|
pkgs.tofi
|
||||||
];
|
];
|
||||||
wayland.windowManager.hyprland.settings = {
|
wayland.windowManager.hyprland.settings = {
|
||||||
bind = [
|
bind = [
|
||||||
"$mainMod, R, exec, hyprlauncher"
|
"$mainMod, R, exec, ${script}"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
systemd.user.services.hyprlauncher-deamon = {
|
# systemd.user.services.hyprlauncher-deamon = {
|
||||||
Install = {
|
# Install = {
|
||||||
WantedBy = [ "hyprland-session.target" ];
|
# WantedBy = [ "hyprland-session.target" ];
|
||||||
};
|
# };
|
||||||
Service = {
|
# Service = {
|
||||||
ExecStart = "${pkgs.writeShellScript "watch-store" ''
|
# ExecStart = "${pkgs.writeShellScript "watch-store" ''
|
||||||
hyprlauncher -d
|
# hyprlauncher -d
|
||||||
''}";
|
# ''}";
|
||||||
};
|
# };
|
||||||
};
|
# };
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -102,7 +102,7 @@ in
|
|||||||
"$mainMod" = "SUPER";
|
"$mainMod" = "SUPER";
|
||||||
bind = [
|
bind = [
|
||||||
"$mainMod, C, killactive"
|
"$mainMod, C, killactive"
|
||||||
"$mainMod, M, exit"
|
"$mainMod, M, exec, uwsm stop"
|
||||||
"$mainMod, E, exec, $fileManager"
|
"$mainMod, E, exec, $fileManager"
|
||||||
"$mainMod, V, togglefloating,"
|
"$mainMod, V, togglefloating,"
|
||||||
"$mainMod, P, pseudo, # dwindle"
|
"$mainMod, P, pseudo, # dwindle"
|
||||||
@@ -143,9 +143,9 @@ in
|
|||||||
];
|
];
|
||||||
windowrule = [
|
windowrule = [
|
||||||
"match:class .*, suppress_event maximize"
|
"match:class .*, suppress_event maximize"
|
||||||
"match:class ^(gamescope)$, workspace 5"
|
"match:class gamescope, workspace 5"
|
||||||
"match:class ^(gamescope)$, fullscreen true"
|
"match:class gamescope, fullscreen true"
|
||||||
"match:class ^(gamescope)$, immediate true"
|
"match:class gamescope, immediate true"
|
||||||
"match:class ^(steam)$, workspace 6 silent"
|
"match:class ^(steam)$, workspace 6 silent"
|
||||||
"match:class ^(vesktop)$, workspace 8 silent"
|
"match:class ^(vesktop)$, workspace 8 silent"
|
||||||
"match:class ^(org.telegram.desktop)$, workspace 8 silent"
|
"match:class ^(org.telegram.desktop)$, workspace 8 silent"
|
||||||
|
|||||||
@@ -63,6 +63,7 @@ in
|
|||||||
ts_ls = {
|
ts_ls = {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
|
svelte.enable = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
lsp-format = {
|
lsp-format = {
|
||||||
|
|||||||
BIN
nixos.qcow2
BIN
nixos.qcow2
Binary file not shown.
Reference in New Issue
Block a user