multiple updates
This commit is contained in:
+10
-16
@@ -12,24 +12,18 @@
|
|||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
inputs.home-manager.follows = "home-manager";
|
inputs.home-manager.follows = "home-manager";
|
||||||
};
|
};
|
||||||
|
|
||||||
illogical-flake = {
|
|
||||||
url = "github:soymou/illogical-flake";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = inputs@{ nixpkgs, home-manager, illogical-flake, ... }:
|
outputs = inputs@{ nixpkgs, home-manager, ... }:
|
||||||
let system = "x86_64-linux";
|
let
|
||||||
|
system = "x86_64-linux";
|
||||||
|
username = "krosh"; # TODO: make it universal
|
||||||
in {
|
in {
|
||||||
homeConfigurations.krosh = home-manager.lib.homeManagerConfiguration {
|
homeConfigurations.${username} =
|
||||||
pkgs = nixpkgs.legacyPackages.${system};
|
home-manager.lib.homeManagerConfiguration {
|
||||||
modules = [
|
pkgs = nixpkgs.legacyPackages.${system};
|
||||||
./home.nix
|
modules = [ ./home.nix ];
|
||||||
# illogical-flake.homeManagerModules.default
|
extraSpecialArgs = { inherit inputs; };
|
||||||
# { programs.illogical-impulse.enable = true; }
|
};
|
||||||
];
|
|
||||||
extraSpecialArgs = { inherit inputs; };
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
./modules/git.nix
|
./modules/git.nix
|
||||||
./modules/programs.nix
|
./modules/programs.nix
|
||||||
./modules/custom/config.nix
|
./modules/custom/config.nix
|
||||||
./modules/hypr/hypr.nix
|
./modules/hypr/hypr.nix # TODO: make file with var for enable/disable hyprland
|
||||||
./modules/tmux.nix
|
./modules/tmux.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -31,9 +31,12 @@
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
in getFrom
|
in getFrom
|
||||||
"https://github.com/ful1e5/fuchsia-cursor/releases/download/v2.0.0/Fuchsia-Pop.tar.gz"
|
"https://github.com/catppuccin/cursors/releases/download/v2.0.0/catppuccin-mocha-dark-cursors.zip"
|
||||||
"sha256-BvVE9qupMjw7JRqFUj1J0a4ys6kc9fOLBPx2bGaapTk=" "Fuchsia-Pop";
|
"sha256-EbBzbSBalFx6oo85I7at/wYyoGZuJxIbOWBNrfqHey0=" "Catppuccin-Mocha-Dark";
|
||||||
|
# "https://github.com/ful1e5/fuchsia-cursor/releases/download/v2.0.1/Fuchsia.tar.xz"
|
||||||
|
# "sha256-TuhU8UFo0hbVShqsWy9rTKnMV8/WHqsxmpqWg1d9f84=" "Fuchsia";
|
||||||
|
|
||||||
|
# TODO: make it universal
|
||||||
home.username = "krosh";
|
home.username = "krosh";
|
||||||
home.homeDirectory = "/home/krosh";
|
home.homeDirectory = "/home/krosh";
|
||||||
home.stateVersion = "25.05";
|
home.stateVersion = "25.05";
|
||||||
|
|||||||
@@ -3,9 +3,9 @@
|
|||||||
{
|
{
|
||||||
programs.git = {
|
programs.git = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
userEmail = "gudovdo@my.msu.ru";
|
|
||||||
userName = "Krosh";
|
|
||||||
extraConfig.pull.rebase = true;
|
extraConfig.pull.rebase = true;
|
||||||
|
|
||||||
|
userEmail = "your email";
|
||||||
|
userName = "your name";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1 +0,0 @@
|
|||||||
# TODO
|
|
||||||
@@ -1,13 +1,31 @@
|
|||||||
{ config, pkgs, ... }:
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
# TODO:
|
||||||
|
# - make shortcuts for hyprctl commands
|
||||||
|
# - split into multiple files
|
||||||
|
# - configure comands like hyprpaper, waybar, etc.
|
||||||
|
|
||||||
{
|
{
|
||||||
home.packages = with pkgs; [ hyprland ];
|
home.packages = with pkgs; [
|
||||||
|
hyprland # already in nixos modules, but here for hyprctl
|
||||||
|
brightnessctl
|
||||||
|
];
|
||||||
programs.hyprpanel = {
|
programs.hyprpanel = {
|
||||||
enable = true;
|
enable = true;
|
||||||
systemd.enable = true;
|
systemd.enable = true;
|
||||||
};
|
};
|
||||||
programs.fuzzel.enable = true;
|
programs.fuzzel.enable = true;
|
||||||
|
|
||||||
|
wayland.windowManager.hyprland.settings = {
|
||||||
|
exec-once = [
|
||||||
|
# Fixes cursor themes in gnome apps under hyprland
|
||||||
|
"gsettings set org.gnome.desktop.interface cursor-theme '${config.home.pointerCursor.name}'"
|
||||||
|
"gsettings set org.gnome.desktop.interface cursor-size ${
|
||||||
|
toString config.home.pointerCursor.size
|
||||||
|
}"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
# wayland.windowManager.hyprland = {
|
# wayland.windowManager.hyprland = {
|
||||||
# enable = true;
|
# enable = true;
|
||||||
|
|
||||||
|
|||||||
@@ -19,16 +19,15 @@
|
|||||||
background_blur = 5;
|
background_blur = 5;
|
||||||
|
|
||||||
confirm_os_window_close = 0;
|
confirm_os_window_close = 0;
|
||||||
map = ''
|
|
||||||
ctrl+c copy_or_interrupt
|
|
||||||
ctrl+v paste_from_clipboard
|
|
||||||
ctrl+shift+v paste_from_clipboard
|
|
||||||
'';
|
|
||||||
|
|
||||||
shell = "${pkgs.zsh}/bin/zsh";
|
shell = "${pkgs.zsh}/bin/zsh";
|
||||||
};
|
};
|
||||||
|
|
||||||
keybindings = { "ctrl+shift+enter" = "new_window_with_cwd"; };
|
keybindings = {
|
||||||
|
"ctrl+shift+enter" = "new_window_with_cwd";
|
||||||
|
"ctrl+c" = "copy_or_interrupt";
|
||||||
|
"ctrl+v" = "paste_from_clipboard";
|
||||||
|
};
|
||||||
|
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
# --- Catppuccin Mocha (dark) theme ---
|
# --- Catppuccin Mocha (dark) theme ---
|
||||||
|
|||||||
@@ -1,151 +1,15 @@
|
|||||||
{ inputs, config, lib, pkgs, ... }:
|
{ inputs, config, lib, pkgs, ... }:
|
||||||
|
|
||||||
{
|
# TODO: split into multiple files
|
||||||
home.packages = with pkgs; [
|
|
||||||
telegram-desktop
|
|
||||||
vscode
|
|
||||||
spotify
|
|
||||||
brightnessctl
|
|
||||||
];
|
|
||||||
|
|
||||||
|
{
|
||||||
|
home.packages = with pkgs; [ telegram-desktop vscode spotify ];
|
||||||
|
|
||||||
|
# do i really need it?
|
||||||
programs.direnv.enable = true;
|
programs.direnv.enable = true;
|
||||||
programs.direnv.nix-direnv.enable = true;
|
programs.direnv.nix-direnv.enable = true;
|
||||||
programs.direnv.enableZshIntegration = true;
|
programs.direnv.enableZshIntegration = true;
|
||||||
|
|
||||||
imports = [ inputs.zen-browser.homeModules.twilight ];
|
imports = [ inputs.zen-browser.homeModules.twilight ];
|
||||||
programs.zen-browser = {
|
programs.zen-browser = { enable = true; };
|
||||||
enable = true;
|
|
||||||
# any other options under `programs.firefox` are also supported here.
|
|
||||||
# see `man home-configuration.nix`.
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.anyrun.enable = true;
|
|
||||||
programs.anyrun.config = {
|
|
||||||
x = { fraction = 0.5; };
|
|
||||||
y = { absolute = 0; };
|
|
||||||
width = { absolute = 800; };
|
|
||||||
height = { absolute = 1; };
|
|
||||||
|
|
||||||
hideIcons = false;
|
|
||||||
ignoreExclusiveZones = false;
|
|
||||||
layer = "overlay";
|
|
||||||
hidePluginInfo = false;
|
|
||||||
closeOnClick = false;
|
|
||||||
showResultsImmediately = false;
|
|
||||||
maxEntries = null;
|
|
||||||
|
|
||||||
plugins =
|
|
||||||
[ "libapplications.so" "libsymbols.so" "libshell.so" "libtranslate.so" ];
|
|
||||||
|
|
||||||
# keybinds = [
|
|
||||||
# {
|
|
||||||
# key = "Return";
|
|
||||||
# action = "Select";
|
|
||||||
# }
|
|
||||||
# {
|
|
||||||
# key = "Up";
|
|
||||||
# action = "Up";
|
|
||||||
# }
|
|
||||||
# {
|
|
||||||
# key = "Down";
|
|
||||||
# action = "Down";
|
|
||||||
# }
|
|
||||||
# {
|
|
||||||
# key = "ISO_Left_Tab";
|
|
||||||
# action = "Up";
|
|
||||||
# shift = true;
|
|
||||||
# }
|
|
||||||
# {
|
|
||||||
# key = "Tab";
|
|
||||||
# action = "Down";
|
|
||||||
# }
|
|
||||||
# {
|
|
||||||
# key = "Escape";
|
|
||||||
# action = "Close";
|
|
||||||
# }
|
|
||||||
# ];
|
|
||||||
};
|
|
||||||
|
|
||||||
# programs.anyrun.extraConfigFiles."config.ron".text = ''
|
|
||||||
# Config(
|
|
||||||
# // Position/size fields use an enum for the value, it can be either:
|
|
||||||
# // Absolute(n): The absolute value in pixels
|
|
||||||
# // Fraction(n): A fraction of the width or height of the full screen (depends on exclusive zones and the settings related to them) window respectively
|
|
||||||
|
|
||||||
# // The horizontal position, adjusted so that Relative(0.5) always centers the runner
|
|
||||||
# x: Fraction(0.5),
|
|
||||||
|
|
||||||
# // The vertical position, works the same as `x`
|
|
||||||
# y: Absolute(0),
|
|
||||||
|
|
||||||
# // The width of the runner
|
|
||||||
# width: Absolute(800),
|
|
||||||
|
|
||||||
# // The minimum height of the runner, the runner will expand to fit all the entries
|
|
||||||
# // NOTE: If this is set to 0, the window will never shrink after being expanded
|
|
||||||
# height: Absolute(1),
|
|
||||||
|
|
||||||
# // Hide match and plugin info icons
|
|
||||||
# hide_icons: false,
|
|
||||||
|
|
||||||
# // ignore exclusive zones, f.e. Waybar
|
|
||||||
# ignore_exclusive_zones: false,
|
|
||||||
|
|
||||||
# // Layer shell layer: Background, Bottom, Top, Overlay
|
|
||||||
# layer: Overlay,
|
|
||||||
|
|
||||||
# // Hide the plugin info panel
|
|
||||||
# hide_plugin_info: false,
|
|
||||||
|
|
||||||
# // Close window when a click outside the main box is received
|
|
||||||
# close_on_click: false,
|
|
||||||
|
|
||||||
# // Show search results immediately when Anyrun starts
|
|
||||||
# show_results_immediately: false,
|
|
||||||
|
|
||||||
# // Limit amount of entries shown in total
|
|
||||||
# max_entries: None,
|
|
||||||
|
|
||||||
# // List of plugins to be loaded by default, can be specified with a relative path to be loaded from the
|
|
||||||
# // `<anyrun config dir>/plugins` directory or with an absolute path to just load the file the path points to.
|
|
||||||
# //
|
|
||||||
# // The order of plugins here specifies the order in which they appear
|
|
||||||
# // in the results. As in it works as a priority for the plugins.
|
|
||||||
# plugins: [
|
|
||||||
# "libapplications.so",
|
|
||||||
# "libsymbols.so",
|
|
||||||
# "libshell.so",
|
|
||||||
# "libtranslate.so",
|
|
||||||
# ],
|
|
||||||
|
|
||||||
# keybinds: [
|
|
||||||
# Keybind(
|
|
||||||
# key: "Return",
|
|
||||||
# action: Select,
|
|
||||||
# ),
|
|
||||||
# Keybind(
|
|
||||||
# key: "Up",
|
|
||||||
# action: Up,
|
|
||||||
# ),
|
|
||||||
# Keybind(
|
|
||||||
# key: "Down",
|
|
||||||
# action: Down,
|
|
||||||
# ),
|
|
||||||
# Keybind(
|
|
||||||
# key: "ISO_Left_Tab",
|
|
||||||
# action: Up,
|
|
||||||
# shift: true,
|
|
||||||
# ),
|
|
||||||
# Keybind(
|
|
||||||
# key: "Tab",
|
|
||||||
# action: Down,
|
|
||||||
# ),
|
|
||||||
# Keybind(
|
|
||||||
# key: "Escape",
|
|
||||||
# action: Close,
|
|
||||||
# ),
|
|
||||||
# ],
|
|
||||||
# )
|
|
||||||
# '';
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -67,9 +67,9 @@
|
|||||||
amnezia = ''
|
amnezia = ''
|
||||||
(pgrep -x ".AmneziaVPN-ser" > /dev/null 2>&1 || sudo AmneziaVPN-service > /dev/null 2>&1 &) &
|
(pgrep -x ".AmneziaVPN-ser" > /dev/null 2>&1 || sudo AmneziaVPN-service > /dev/null 2>&1 &) &
|
||||||
AmneziaVPN > /dev/null 2>&1 &
|
AmneziaVPN > /dev/null 2>&1 &
|
||||||
''; # i don't know any good ways for it.
|
''; # TODO: start system with service
|
||||||
mkenv = ''
|
# mkenv = ''
|
||||||
echo "use nix" > .envrc && touch default.nix && direnv allow && echo "✓ env created"'';
|
# echo "use nix" > .envrc && touch default.nix && direnv allow && echo "✓ env created"'';
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
+1
-37
@@ -12,43 +12,7 @@
|
|||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
environment.systemPackages = with pkgs; [ kitty amnezia-vpn lenovo-legion ];
|
environment.systemPackages = with pkgs; [ kitty amnezia-vpn lenovo-legion ];
|
||||||
|
|
||||||
# hardware.fancontrol.enable = true;
|
# TODO: Добавить настройку вентиляторов
|
||||||
# hardware.fancontrol.config = ''
|
|
||||||
# INTERVAL=5
|
|
||||||
# FCTEMPS=( /sys/class/hwmon/hwmon9/temp1_input )
|
|
||||||
# FCFANS=( /sys/class/hwmon/hwmon9/pwm1 )
|
|
||||||
# MINTEMP=25
|
|
||||||
# MAXTEMP=90
|
|
||||||
# MINPWM=50
|
|
||||||
# MAXPWM=200
|
|
||||||
# '';
|
|
||||||
# hardware.fancontrol.config = ''
|
|
||||||
# INTERVAL=2
|
|
||||||
|
|
||||||
# FCTEMPS=hwmon9/device/pwm1=/sys/class/hwmon/hwmon0/temp1_input
|
|
||||||
# FCFANS=hwmon9/device/pwm1=/sys/class/hwmon/hwmon9/fan1_input
|
|
||||||
|
|
||||||
# MINTEMP=hwmon9/device/pwm1=25
|
|
||||||
# MAXTEMP=hwmon9/device/pwm1=80
|
|
||||||
|
|
||||||
# MINPWM=hwmon9/device/pwm1=0
|
|
||||||
# MAXPWM=hwmon9/device/pwm1=220
|
|
||||||
|
|
||||||
# MINSTART=hwmon9/device/pwm1=25
|
|
||||||
# MINSTOP=hwmon9/device/pwm1=0
|
|
||||||
# '';
|
|
||||||
|
|
||||||
# services.thinkfan = {
|
|
||||||
# enable = true;
|
|
||||||
# levels = [
|
|
||||||
# [ 0 0 25 ] # level, low temp, high temp
|
|
||||||
# [ 1 20 55 ]
|
|
||||||
# [ 2 50 65 ]
|
|
||||||
# [ 3 60 75 ]
|
|
||||||
# [ 4 70 85 ]
|
|
||||||
# [ 7 80 200 ]
|
|
||||||
# ];
|
|
||||||
# };
|
|
||||||
|
|
||||||
security.sudo.extraRules = [{
|
security.sudo.extraRules = [{
|
||||||
users = [ "ALL" ];
|
users = [ "ALL" ];
|
||||||
|
|||||||
Executable
+15
@@ -0,0 +1,15 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
if [[ $EUID -ne 0 ]]; then
|
||||||
|
echo "This script must be run as root (sudo)." 1>&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Removing all backups in /etc/nixos..."
|
||||||
|
rm -rf /etc/nixos.bak.*
|
||||||
|
|
||||||
|
echo "Removing all backups in $HOME/.config/home-manager..."
|
||||||
|
rm -rf $HOME/.config/home-manager.bak.*
|
||||||
|
|
||||||
|
echo "Done!"
|
||||||
Reference in New Issue
Block a user