mirror of
https://github.com/caperren/nixos-configs.git
synced 2025-11-08 19:51:14 +00:00
Compare commits
3 Commits
37398fccac
...
56c18519b3
| Author | SHA1 | Date | |
|---|---|---|---|
| 56c18519b3 | |||
| 17495207aa | |||
| b138866194 |
@@ -1,5 +1,19 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
let
|
||||
spotifyPlayerDesktopEntry = pkgs.writeTextFile {
|
||||
name = "spotify-player-desktop";
|
||||
destination = "/share/applications/spotify-player.desktop";
|
||||
text = ''
|
||||
[Desktop Entry]
|
||||
Type=Application
|
||||
Name=Spotify Player
|
||||
Exec=kitty -e spotify_player
|
||||
Icon=spotify_player
|
||||
Terminal=false
|
||||
Categories=Media;
|
||||
'';
|
||||
};
|
||||
in {
|
||||
boot = {
|
||||
# Make v4l2loopback kernel module available to NixOS.
|
||||
extraModulePackages = with config.boot.kernelPackages; [
|
||||
@@ -26,18 +40,20 @@
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
deadbeef
|
||||
vlc
|
||||
sox
|
||||
audacity
|
||||
glava
|
||||
spotify-player
|
||||
projectm_3
|
||||
obs-studio
|
||||
darktable
|
||||
|
||||
# Encountering build failures
|
||||
# plex-desktop
|
||||
audacity
|
||||
darktable
|
||||
deadbeef
|
||||
glava
|
||||
obs-studio
|
||||
# plex-desktop --> Encountering build failures
|
||||
projectm_3
|
||||
sox
|
||||
spotify-player
|
||||
spotifyPlayerDesktopEntry
|
||||
vlc
|
||||
];
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -1,20 +1,35 @@
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
let
|
||||
jetbrainsToolboxDesktopEntry = pkgs.writeTextFile {
|
||||
name = "jetbrains-toolbox-desktop";
|
||||
destination = "/share/applications/jetbrains-toolbox.desktop";
|
||||
text = ''
|
||||
[Desktop Entry]
|
||||
Type=Application
|
||||
Name=JetBrains Toolbox
|
||||
Exec=jetbrains-toolbox
|
||||
Icon=jetbrains-toolbox
|
||||
Terminal=false
|
||||
Categories=Development;IDE;
|
||||
'';
|
||||
};
|
||||
in {
|
||||
environment.systemPackages = with pkgs; [
|
||||
vscode-with-extensions
|
||||
nixfmt-rfc-style
|
||||
platformio
|
||||
jetbrains-toolbox
|
||||
arduino-ide
|
||||
python311Full
|
||||
gcc
|
||||
jetbrains-toolbox
|
||||
jetbrainsToolboxDesktopEntry
|
||||
nix-update
|
||||
nixfmt-rfc-style
|
||||
nixos-generators
|
||||
nodejs
|
||||
platformio
|
||||
python311Full
|
||||
python3Full
|
||||
stm32cubemx
|
||||
stm32flash
|
||||
python3Full
|
||||
nix-update
|
||||
nixos-generators
|
||||
teensy-udev-rules
|
||||
vscode-with-extensions
|
||||
];
|
||||
|
||||
services.udev.extraRules = ''
|
||||
|
||||
@@ -3,7 +3,9 @@ let
|
||||
hyprlandConfigPath = ./. + "/dotfiles/hyprland/${config.networking.hostName}";
|
||||
kanshiConfigPath = ./. + "/dotfiles/kanshi/${config.networking.hostName}";
|
||||
spotifyPlayerAppTomlTextTemplate = builtins.readFile ./dotfiles/spotify-player/app.toml;
|
||||
spotifyPlayerAppTomlText = builtins.replaceStrings [ "{{hostname}}" ] [ config.networking.hostName ] spotifyPlayerAppTomlTextTemplate;
|
||||
spotifyPlayerAppTomlText =
|
||||
builtins.replaceStrings [ "{{hostname}}" ] [ config.networking.hostName ]
|
||||
spotifyPlayerAppTomlTextTemplate;
|
||||
waybarConfigPath = ./. + "/dotfiles/waybar/${config.networking.hostName}";
|
||||
in
|
||||
{
|
||||
@@ -35,11 +37,35 @@ in
|
||||
userEmail = "caperren@gmail.com";
|
||||
};
|
||||
|
||||
home.file.".config/hypr/hypridle.conf".source = ./dotfiles/hypridle/hypridle.conf;
|
||||
home.file.".config/hypr/hyprland-common.conf".source = ./dotfiles/hyprland/hyprland-common.conf;
|
||||
home.file.".config/hypr/hyprland.conf".source = hyprlandConfigPath + "/hyprland.conf";
|
||||
home.file.".config/kanshi/config".source = kanshiConfigPath + "/config";
|
||||
home.file.".config/spotify-player/app.toml".text = spotifyPlayerAppTomlText;
|
||||
home.file.".config/waybar/config".source = waybarConfigPath + "/config";
|
||||
home.file.".config/wlogout/layout".source = ./dotfiles/wlogout/layout;
|
||||
|
||||
gtk = {
|
||||
enable = true;
|
||||
|
||||
theme = {
|
||||
name = "Adwaita-dark"; # Or another dark theme
|
||||
package = pkgs.gnome-themes-extra;
|
||||
};
|
||||
|
||||
iconTheme = {
|
||||
name = "Papirus-Dark";
|
||||
package = pkgs.papirus-icon-theme;
|
||||
};
|
||||
|
||||
cursorTheme = {
|
||||
name = "Bibata-Modern-Ice";
|
||||
package = pkgs.bibata-cursors;
|
||||
};
|
||||
};
|
||||
|
||||
home.sessionVariables = {
|
||||
GTK_THEME = "Adwaita-dark";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
33
users/caperren/dotfiles/hypridle/hypridle.conf
Normal file
33
users/caperren/dotfiles/hypridle/hypridle.conf
Normal file
@@ -0,0 +1,33 @@
|
||||
general {
|
||||
lock_cmd = pidof hyprlock || hyprlock # Avoid starting multiple hyprlock instances
|
||||
before_sleep_cmd = loginctl lock-session # Lock before suspend
|
||||
after_sleep_cmd = hyprctl dispatch dpms on # To avoid having to press a key twice to turn on the display
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 60 # 1 minute
|
||||
on-timeout = brightnessctl -sd platform::kbd_backlight set 0 # Turn off keyboard backlight
|
||||
on-resume = brightnessctl -rd platform::kbd_backlight # Turn on keyboard backlight
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 180 # 3 minutes
|
||||
on-timeout = brightnessctl -s set 1% # Set monitor backlight to minimum
|
||||
on-resume = brightnessctl -r # monitor backlight restore
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 600 # 10 minutes
|
||||
on-timeout = loginctl lock-session # Lock screen when timeout has passed
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 610 # 10 minutes, 10 seconds
|
||||
on-timeout = hyprctl dispatch dpms off # Screen off when timeout has passed
|
||||
on-resume = hyprctl dispatch dpms on # Screen on when activity is detected after timeout has fired
|
||||
}
|
||||
|
||||
# listener {
|
||||
# timeout = 1200 # 20 minutes
|
||||
# on-timeout = systemctl suspend # Suspend pc
|
||||
# }
|
||||
@@ -2,4 +2,8 @@
|
||||
monitor=eDP-2,2560x1600@165,auto,1,vrr,1
|
||||
|
||||
# Source configs
|
||||
source = ~/.config/hypr/hyprland-common.conf
|
||||
source = ~/.config/hypr/hyprland-common.conf
|
||||
|
||||
# Application launch
|
||||
exec-once = brightnessctl -sd platform::kbd_backlight set 1
|
||||
exec-once = brightnessctl -s set 30%
|
||||
@@ -162,12 +162,16 @@ bind = ,XF86MonBrightnessDown, exec, brightnessctl s 1%-
|
||||
bind = ,XF86MonBrightnessUp, exec, brightnessctl s +1%
|
||||
|
||||
# Application launch
|
||||
exec-once = kanshi &
|
||||
exec-once = ydotoold &
|
||||
exec-once = kanshi
|
||||
exec-once = ydotoold
|
||||
exec-once = hypridle
|
||||
|
||||
exec-once = sleep 3 && waybar
|
||||
exec-once = wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 10%
|
||||
|
||||
# Loop needed until waybar gtk icon crash fixed
|
||||
exec-once = bash -c "while true; do waybar; sleep 3; done"
|
||||
|
||||
exec-once = sleep 5 && nm-applet
|
||||
exec-once = sleep 5 && blueman-applet
|
||||
exec-once = sleep 5 && streamdeck -n
|
||||
exec-once = sleep 5 & telegram-desktop -startintray
|
||||
exec-once = sleep 5 && Telegram -startintray
|
||||
@@ -43,7 +43,9 @@
|
||||
"format-icons": {
|
||||
"activated": "",
|
||||
"deactivated": ""
|
||||
}
|
||||
},
|
||||
"tooltip-format-activated": "idle-inhibitor <span color='#a6da95'>on</span>",
|
||||
"tooltip-format-deactivated": "idle-inhibitor <span color='#ee99a0'>off</span>"
|
||||
},
|
||||
"clock": {
|
||||
"format": "{:%I:%M:%S %p | %a | %F}",
|
||||
|
||||
@@ -70,7 +70,9 @@
|
||||
"format-icons": {
|
||||
"activated": "",
|
||||
"deactivated": ""
|
||||
}
|
||||
},
|
||||
"tooltip-format-activated": "idle-inhibitor <span color='#a6da95'>on</span>",
|
||||
"tooltip-format-deactivated": "idle-inhibitor <span color='#ee99a0'>off</span>"
|
||||
},
|
||||
"clock": {
|
||||
"format": "{:%I:%M:%S %p | %a | %F}",
|
||||
|
||||
Reference in New Issue
Block a user