From d666f30475528ce7f50cc3dd92a1693241083fe8 Mon Sep 17 00:00:00 2001 From: rubiigen Date: Fri, 2 Feb 2024 18:29:45 +0000 Subject: major refactor (treewide amongst general cleaning based on my modified dots (with help from notashelf) - perks 1: it works --- homes/default.nix | 7 +- homes/floppydisk/arrpc.nix | 3 +- homes/floppydisk/default.nix | 278 ++++++++++---------------------------- homes/floppydisk/lock.sh | 2 + homes/floppydisk/neovim-flake.nix | 26 ++-- homes/floppydisk/packages.nix | 124 +++++++++++++++++ 6 files changed, 213 insertions(+), 227 deletions(-) create mode 100644 homes/floppydisk/lock.sh create mode 100644 homes/floppydisk/packages.nix (limited to 'homes') diff --git a/homes/default.nix b/homes/default.nix index 267a3d0..27a7c0b 100644 --- a/homes/default.nix +++ b/homes/default.nix @@ -1,19 +1,18 @@ { inputs, self, - outputs, + config, ... }: { home-manager = { useUserPackages = true; useGlobalPkgs = true; extraSpecialArgs = { - inherit inputs self outputs; + inherit inputs self; }; users = { - # TODO: "base" user that will be used by default is there is no defined - # home directory for the user floppydisk = ./floppydisk; + # more users can go here, the format is only for convenience }; }; } diff --git a/homes/floppydisk/arrpc.nix b/homes/floppydisk/arrpc.nix index 5431d57..16f8be6 100644 --- a/homes/floppydisk/arrpc.nix +++ b/homes/floppydisk/arrpc.nix @@ -1,12 +1,13 @@ { inputs, pkgs, + home, ... }: { imports = [ inputs.arrpc.homeManagerModules.default ]; - + home.packages = [pkgs.webcord-vencord]; # provided by the arrpc-flake home-manager module diff --git a/homes/floppydisk/default.nix b/homes/floppydisk/default.nix index c16ded5..658c64c 100644 --- a/homes/floppydisk/default.nix +++ b/homes/floppydisk/default.nix @@ -1,240 +1,100 @@ -# This is your home-manager configuration file -# Use this to configure your home environment (it replaces ~/.config/nixpkgs/home.nix) { - inputs, pkgs, + lib, + inputs, ... }: { - # You can import other home-manager modules here imports = [ - # If you want to use modules your own flake exports (from modules/home-manager): - # outputs.homeManagerModules.example - - # Or modules exported from other flakes (such as nix-colors): - # inputs.nix-colors.homeManagerModules.default - - # You can also split up your configuration and import pieces of it here: - ./neovim-flake.nix ./arrpc.nix + ./packages.nix # home.packages and similar stuff + ./neovim-flake.nix ]; home = { username = "floppydisk"; homeDirectory = "/home/floppydisk"; - file.".config/hypr/hyprpaper.conf".text = '' - preload = ${/. + ../../misc/wallpapers/oneshot-1.jpg} - wallpaper = ,${/. + ../../misc/wallpapers/oneshot-1.jpg} - ''; - packages = with pkgs; [ - # Utils - handbrake - thunderbird - picard - realvnc-vnc-viewer - rpi-imager - obs-studio - yt-dlp - _1password-gui - _1password - git-credential-1password - firefox-devedition - inputs.arrpc.packages.${pkgs.system}.arrpc - rdesktop - _3llo - gimp - qemu - virt-manager - exactaudiocopy - fsv - lsd - lsdvd - thefuck - zip - unzip - notion-app-enhanced - libresprite - qbittorrent - wine - vifm - cloudflared - ansible - just - pwgen - grafx2 - libreoffice-fresh - wiki-tui - calcurse - - # Fetch - neofetch - yafetch - cpufetch - bunnyfetch - nitch - screenfetch - starfetch - - # DevTools - github-desktop - gh - codeql - vscode - jetbrains.ruby-mine - jetbrains.rider - jetbrains.phpstorm - jetbrains.idea-ultimate - jetbrains.webstorm - lazygit - wakatime - mongodb-compass - mongosh - httpie - ngrok - mycli - squirrel-sql - figma-linux - - # Langs - openscad - nodejs_18 - nodePackages.yarn - nodePackages.ts-node - nodePackages.pnpm - php82 - php82Packages.composer - deno - python310 - python310Packages.pip - python310Packages.discordpy - dotnet-sdk - jdk17 - maven - purescript - lua - flutter - - # Comms - nheko - element-desktop - (discord.override { - withOpenASAR = true; - withVencord = true; - }) - caprine-bin - teamspeak5_client - - # Gaming - rpcs3 - pcsxr - pcsx2 - steam - gzdoom - minecraft - dolphin-emu - prismlauncher - fceux - snes9x - heroic - openrct2 - osu-lazer-bin + file.".config/lockonsleep/config.sh".source = ./lock.sh; + }; - # Media - vlc - libsForQt5.vvave - tidal-hifi - spotify-tui - youtube-tui - mpv + wayland.windowManager.hyprland = { + enable = true; + systemd.enable = true; + settings = import ./hyprland.nix; + }; - # zsh Themes - zsh-powerlevel10k - ]; + programs.waybar = { + enable = true; + settings = import ./waybar.nix; + style = import ./waybar-style.nix; }; - # Add stuff for your user as you see fit: - programs = { - # Enable home-manager - home-manager.enable = true; + services.udiskie.enable = true; - # Enable z-shell - zsh = { - enable = true; - shellAliases = { - ls = "lsd"; - ll = "ls -l"; - la = "ls -la"; - }; - history = { - size = 10000; - path = "$HOME/.config/zsh/history"; - }; - oh-my-zsh = { - enable = true; - plugins = [ - "git" - "thefuck" - ]; - custom = "$HOME/.oh-my-custom"; - theme = "powerlevel10k/powerlevel10k"; - }; - plugins = [ - { - name = "powerlevel10k"; - src = pkgs.zsh-powerlevel10k; - file = "share/zsh-powerlevel10k/powerlevel10k.zsh-theme"; - } - ]; - initExtra = '' - source ~/.p10k.zsh - ''; + programs.zsh = { + enable = true; + shellAliases = { + ls = "lsd"; + ll = "ls -l"; + la = "ls -la"; }; - - # enable git and configure users - git = { - enable = true; - userName = "Frankie B."; - userEmail = "git@diskfloppy.me"; - extraConfig = { - # Sign all commits using ssh key - commit.gpgsign = true; - gpg.format = "ssh"; - user.signingkey = "~/.ssh/id_ed25519.pub"; - init.defaultBranch = "master"; - }; + history = { + size = 10000; + path = "$HOME/.config/zsh/history"; }; - - irssi = { + oh-my-zsh = { enable = true; - networks = { - znc = { - nick = "floppydisk"; - server = { - address = "irc.nick99nack.com"; - port = 8888; - autoConnect = true; - ssl.enable = false; - }; - }; - }; + plugins = [ + "git" + "thefuck" + ]; + custom = "$HOME/.oh-my-custom"; + theme = "powerlevel10k/powerlevel10k"; }; + plugins = [ + { + name = "powerlevel10k"; + src = pkgs.zsh-powerlevel10k; + file = "share/zsh-powerlevel10k/powerlevel10k.zsh-theme"; + } + ]; + initExtra = '' + source ~/.p10k.zsh + ''; }; - wayland.windowManager.hyprland = { + programs.git = { enable = true; - systemdIntegration = true; - package = inputs.hyprland.packages.${pkgs.system}.hyprland; - settings = import ./hyprland.nix; + userName = "Frankie B."; + userEmail = "git@diskfloppy.me"; + extraConfig = { + commit.gpgsign = true; + gpg.format = "ssh"; + user.signingkey = "~/.ssh/id_ed25519.pub"; + init.defaultBranch = "master"; + }; }; - programs.waybar = { + programs.irssi = { enable = true; - settings = import ./waybar.nix; - style = import ./waybar-style.nix; + networks = { + znc = { + nick = "floppydisk"; + server = { + address = "irc.nick99nack.com"; + port = 8888; + autoConnect = true; + ssl.enable = false; + }; + }; + }; }; - # Nicely reload system units when changing configs - systemd.user.startServices = "sd-switch"; + # let HM manage itself when in standalone mode + programs.home-manager.enable = true; + + # Nicely reload system(d) units when changing configs + systemd.user.startServices = lib.mkDefault "sd-switch"; # https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion - home.stateVersion = "22.11"; + home.stateVersion = "24.05"; } diff --git a/homes/floppydisk/lock.sh b/homes/floppydisk/lock.sh new file mode 100644 index 0000000..dc397b0 --- /dev/null +++ b/homes/floppydisk/lock.sh @@ -0,0 +1,2 @@ +exec swayidle -w \ + before-sleep 'gtklock -d -i' diff --git a/homes/floppydisk/neovim-flake.nix b/homes/floppydisk/neovim-flake.nix index 943fd90..f4246d0 100644 --- a/homes/floppydisk/neovim-flake.nix +++ b/homes/floppydisk/neovim-flake.nix @@ -63,7 +63,7 @@ enable = true; fillChar = null; eolChar = null; - showCurrContext = true; + scope.enabled = true; }; cursorline = { enable = true; @@ -235,18 +235,18 @@ comment-nvim.enable = true; }; - vim.presence = { - presence-nvim = { - enable = true; - auto_update = true; - image_text = "The Superior Text Editor"; - client_id = "793271441293967371"; - main_image = "neovim"; - rich_presence = { - editing_text = "Editing %s"; - }; - }; - }; + #vim.presence = { + # presence-nvim = { + # enable = true; + # auto_update = true; + # image_text = "The Superior Text Editor"; + # client_id = "793271441293967371"; + # main_image = "neovim"; + # rich_presence = { + # editing_text = "Editing %s"; + # }; + # }; + #}; }; }; } diff --git a/homes/floppydisk/packages.nix b/homes/floppydisk/packages.nix new file mode 100644 index 0000000..d4c2c85 --- /dev/null +++ b/homes/floppydisk/packages.nix @@ -0,0 +1,124 @@ +{ + pkgs, ...}: { + + home.packages = with pkgs; [ + # utils + handbrake + thunderbird + picard + realvnc-vnc-viewer + rpi-imager + obs-studio + yt-dlp + _1password-gui + _1password + git-credential-1password + firefox-devedition + rdesktop + _3llo + gimp + qemu + virt-manager + exactaudiocopy + fsv + lsd + lsdvd + thefuck + zip + unzip + notion-app-enhanced + libresprite + qbittorrent + wine + vifm + cloudflared + ansible + just + pwgen + grafx2 + libreoffice-fresh + wiki-tui + calcurse + + # fetch + neofetch + yafetch + cpufetch + bunnyfetch + nitch + screenfetch + starfetch + + # devtools + github-desktop + gh + codeql + vscode + jetbrains.ruby-mine + jetbrains.rider + jetbrains.phpstorm + jetbrains.idea-ultimate + jetbrains.webstorm + lazygit + wakatime + mongodb-compass + mongosh + httpie + ngrok + mycli + squirrel-sql + figma-linux + + # langs + openscad + nodejs_18 + nodePackages.yarn + nodePackages.ts-node + nodePackages.pnpm + php82 + php82Packages.composer + deno + python310 + python310Packages.pip + python310Packages.discordpy + dotnet-sdk + jdk17 + maven + purescript + lua + flutter + + # comms + nheko + element-desktop + vesktop + caprine-bin + teamspeak5_client + + # gaming + rpcs3 + pcsxr + pcsx2 + steam + gzdoom + minecraft + dolphin-emu + prismlauncher + fceux + snes9x + heroic + openrct2 + osu-lazer-bin + + # media + vlc + libsForQt5.vvave + tidal-hifi + spotify-tui + youtube-tui + mpv + + # zsh themes + zsh-powerlevel10k + ]; +} -- cgit v1.2.3-54-g00ecf