diff --git a/home-manager/home.nix b/home-manager/home.nix index 25454a2..d425ac2 100755 --- a/home-manager/home.nix +++ b/home-manager/home.nix @@ -2,51 +2,34 @@ { nixpkgs.config.allowUnfree = true; - home.packages = with pkgs; [ - # gnomeExtensions.paperwm - nixfmt-classic - ]; + home.packages = with pkgs; [ nixfmt-classic ]; imports = [ ./modules/zsh/zsh.nix ./modules/kitty.nix ./modules/git.nix + ./modules/programs.nix ]; - # dconf = { - # enable = true; - # settings = { - # "org/gnome/shell" = { - # enabled-extensions = [ - # "paperwm@paperwm.github.com" - # ]; - # }; - # "org/gnome/desktop/interface".show-battery-percentage = true; - # }; - # }; - - home.pointerCursor = - let - getFrom = url: hash: name: { - gtk.enable = true; - x11.enable = true; - name = name; - size = 48; - package = - pkgs.runCommand "moveUp" {} '' - mkdir -p $out/share/icons - ln -s ${pkgs.fetchzip { - url = url; - hash = hash; - }} $out/share/icons/${name} - ''; - }; - in - getFrom - "https://github.com/ful1e5/fuchsia-cursor/releases/download/v2.0.0/Fuchsia-Pop.tar.gz" - "sha256-BvVE9qupMjw7JRqFUj1J0a4ys6kc9fOLBPx2bGaapTk=" - "Fuchsia-Pop"; - + home.pointerCursor = let + getFrom = url: hash: name: { + gtk.enable = true; + x11.enable = true; + name = name; + size = 48; + package = pkgs.runCommand "moveUp" { } '' + mkdir -p $out/share/icons + ln -s ${ + pkgs.fetchzip { + url = url; + hash = hash; + } + } $out/share/icons/${name} + ''; + }; + in getFrom + "https://github.com/ful1e5/fuchsia-cursor/releases/download/v2.0.0/Fuchsia-Pop.tar.gz" + "sha256-BvVE9qupMjw7JRqFUj1J0a4ys6kc9fOLBPx2bGaapTk=" "Fuchsia-Pop"; home.username = "krosh"; home.homeDirectory = "/home/krosh"; diff --git a/home-manager/modules/git.nix b/home-manager/modules/git.nix index 406a9cb..62b0fff 100644 --- a/home-manager/modules/git.nix +++ b/home-manager/modules/git.nix @@ -4,7 +4,9 @@ programs.git = { enable = true; - userName = "Krosh"; - userEmail = "gudovdo@my.msu.ru"; + settings.user = { + name = "Krosh"; + email = "gudovdo@my.msu.ru"; + }; }; } diff --git a/home-manager/modules/hypr/hypr.nix b/home-manager/modules/hypr/hypr.nix new file mode 100644 index 0000000..0a17541 --- /dev/null +++ b/home-manager/modules/hypr/hypr.nix @@ -0,0 +1,30 @@ +{ config, pkgs, ... }: + +{ + + home.packages = with pkgs; [ hyprland ]; + + home.file.".config/hypr/hyprland.conf".text = '' + # Minimal Hyprland config + + # General settings + general { + dpi=96 + } + + # Example monitor line — replace with your output name and resolution + monitor= eDP-1, 1920x1080@60, 0, 0, 1 + + # Basic keybindings (SUPER is the meta/windows key) + bind=SUPER+ENTER, exec, alacritty + bind=SUPER+D, exec, dmenu_run + bind=SUPER+Q, killactive + + # Simple floating example (adjust class/title as needed) + windowrulev2 = float,class: Pavucontrol + + # Add any startup commands here (uncomment and edit) + # exec = seatd,enabled + ''; + +} diff --git a/home-manager/modules/tmux.nix b/home-manager/modules/tmux.nix new file mode 100644 index 0000000..ffcd441 --- /dev/null +++ b/home-manager/modules/tmux.nix @@ -0,0 +1 @@ +{ } diff --git a/nixos/configuration.nix b/nixos/configuration.nix index e2eb459..10f3a89 100755 --- a/nixos/configuration.nix +++ b/nixos/configuration.nix @@ -11,11 +11,7 @@ ]; - fileSystems."/".options = [ - "ssd" - "noatime" - "compress=zstd:1" - ]; + fileSystems."/".options = [ "ssd" "noatime" "compress=zstd:1" ]; # Bootloader. boot.loader.systemd-boot.enable = true; @@ -25,11 +21,31 @@ # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. # Configure network proxy if necessary + networking.nameservers = [ "8.8.8.8" "1.1.1.1" ]; + # networking.proxy.default = + # "http://VVM8MipXHu:rZVMKEwSx9@mandarin-indicolite11678.my-vm.work:45162"; + # networking.proxy.noProxy = "127.0.0.1,localhost,::1"; + + # environment.variables = { + # http_proxy = + # "http://VVM8MipXHu:rZVMKEwSx9@mandarin-indicolite11678.my-vm.work:45162"; + # https_proxy = + # "http://VVM8MipXHu:rZVMKEwSx9@mandarin-indicolite11678.my-vm.work:45162"; + # HTTP_PROXY = + # "http://VVM8MipXHu:rZVMKEwSx9@mandarin-indicolite11678.my-vm.work:45162"; + # HTTPS_PROXY = + # "http://VVM8MipXHu:rZVMKEwSx9@mandarin-indicolite11678.my-vm.work:45162"; + # no_proxy = "127.0.0.1,localhost,::1"; + # NO_PROXY = "127.0.0.1,localhost,::1"; + # }; # networking.proxy.default = "http://user:password@proxy:port/"; # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain"; # Enable networking - networking.networkmanager.enable = true; + networking.networkmanager = { + enable = true; + insertNameservers = [ "1.1.1.1" "8.8.8.8" ]; + }; # Set your time zone. time.timeZone = "Europe/Moscow"; @@ -89,10 +105,7 @@ users.users.krosh = { isNormalUser = true; description = "Krosh"; - extraGroups = [ - "networkmanager" - "wheel" - ]; + extraGroups = [ "networkmanager" "wheel" ]; }; # Install firefox. @@ -104,9 +117,21 @@ # $ nix search wget environment.systemPackages = with pkgs; [ pkgs.kitty - pkgs.hiddify-app + # pkgs.hiddify-app + amnezia-vpn ]; + systemd.services.amnezia-vpn = { + description = "AmneziaVPN Service"; + after = [ "network.target" ]; + wantedBy = [ "multi-user.target" ]; + + serviceConfig = { + ExecStart = "${pkgs.amnezia-vpn}/bin/AmneziaVPN-service"; + Restart = "on-failure"; + }; + }; + # Some programs need SUID wrappers, can be configured further or are # started in user sessions. # programs.mtr.enable = true; @@ -124,7 +149,7 @@ # networking.firewall.allowedTCPPorts = [ ... ]; # networking.firewall.allowedUDPPorts = [ ... ]; # Or disable the firewall altogether. - # networking.firewall.enable = false; + networking.firewall.enable = false; # This value determines the NixOS release from which the default # settings for stateful data, like file locations and database versions @@ -148,15 +173,11 @@ colorscheme blue endif ''; - packages.myVimPackage = with pkgs.vimPlugins; { - start = [ ctrlp ]; - }; + packages.myVimPackage = with pkgs.vimPlugins; { start = [ ctrlp ]; }; }; }; - programs.neovim = { - defaultEditor = true; - }; + programs.neovim = { defaultEditor = true; }; programs.hyprland = { enable = true; @@ -172,12 +193,13 @@ plymouth = { enable = true; theme = "connect"; - themePackages = with pkgs; [ - # By default we would install all themes - (adi1090x-plymouth-themes.override { - selected_themes = [ "connect" ]; - }) - ]; + themePackages = with pkgs; + [ + # By default we would install all themes + (adi1090x-plymouth-themes.override { + selected_themes = [ "connect" ]; + }) + ]; }; # Enable "Silent boot"