dotfiles

My PC Dotfiles & Website
commit 3f84ffa66d33f888fd1d1c6e79b48696a1cb3358
parent 95f47d212b861f507bb8dbff3df2f2eef7f2d11f
Author: maydayv7 <maydayv7@gmail.com>
Date:   Sat, 11 Jan 2025 12:16:57 +0530

feat: Updates

+ Update Wine Packages
+ Update `valkyrie` kernel
+ Update Site
+ Add Bulk Renamer for Nemo

Diffstat:

MREADME.md | 4+++-
Mdevices/valkyrie/default.nix | 2+-
Mfiles/gnome/settings/default.nix | 2+-
Mfiles/pantheon/dconf.nix | 2+-
Mmodules/apps/wine.nix | 18+++++++++---------
Mmodules/gui/desktop/hyprland/apps/files.nix | 48++++++++++++++++++++++++++++++++++++------------
Mpackages/wine/7zip.nix | 6+++---
Apackages/wine/notepad++.nix | 77+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Msite/content/about.md | 13++++---------
Msite/content/now.md | 5+++--
10 files changed, 138 insertions(+), 39 deletions(-)

diff --git a/README.md b/README.md @@ -520,6 +520,8 @@ You can navigate to the `README`s present in the various directories to know mor - Transition to UWSM - Use `nixpkgs` version - Use [`nemo`](https://community.linuxmint.com/software/view/nemo) File Manager + - Add KDE Connect Support +- Update Wine Packages ### v24.5 @@ -805,7 +807,7 @@ You can navigate to the `README`s present in the various directories to know mor </details> -> Last Updated: **December** 2024 +> Last Updated: **January** 2025 If you like this project, consider leaving a [star](https://github.com/maydayv7/dotfiles) diff --git a/devices/valkyrie/default.nix b/devices/valkyrie/default.nix @@ -7,7 +7,7 @@ timezone = "Asia/Kolkata"; locale = "IN"; - kernel = "xanmod"; + kernel = "xanmod_stable"; kernelModules = ["nvme" "thunderbolt"]; imports = [./drivers.nix]; diff --git a/files/gnome/settings/default.nix b/files/gnome/settings/default.nix @@ -10,7 +10,7 @@ in { imports = util.map.modules.list ./.; ## Dconf Keys ## - # Generated via gvolpe/dconf2nix + # Generated via nix-community/dconf2nix # Use 'dconf watch /' to record changes dconf.settings = { # Keyboard Shortcuts diff --git a/files/pantheon/dconf.nix b/files/pantheon/dconf.nix @@ -8,7 +8,7 @@ with lib.hm.gvariant; let fonts = sys.fonts.fontconfig.defaultFonts; in { ## Dconf Keys ## - # Generated via gvolpe/dconf2nix + # Generated via nix-community/dconf2nix # Use 'dconf watch /' to record changes dconf.settings = { # Desktop diff --git a/modules/apps/wine.nix b/modules/apps/wine.nix @@ -43,15 +43,15 @@ in { mkwindowsapp-tools playonlinux ] - ++ optionals cfg.utilities ([notepad-plus-plus] - # Wrapped Packages - ++ (attrValues (util.map.modules ../../packages/wine - (name: - callPackage name { - inherit lib pkgs; - wine = cfg.package; - build = inputs.windows.lib."${pkgs.system}"; - }))))) + # Wrapped Packages + ++ optionals cfg.utilities + (attrValues (util.map.modules ../../packages/wine + (name: + callPackage name { + inherit lib pkgs; + wine = cfg.package; + build = inputs.windows.lib."${pkgs.system}"; + })))) ); }; } diff --git a/modules/gui/desktop/hyprland/apps/files.nix b/modules/gui/desktop/hyprland/apps/files.nix @@ -1,16 +1,24 @@ { config, + lib, util, pkgs, files, ... }: let + inherit (lib) hm getExe getExe'; inherit (config.gui.launcher) terminal; nemo = pkgs.nemo-with-extensions; in { ## File Manager Configuration services.dbus.packages = [nemo]; - environment.systemPackages = [nemo] ++ (with pkgs; [cinnamon-desktop file-roller]); + environment.systemPackages = + [nemo] + ++ (with pkgs; [ + cinnamon-desktop + bulky + file-roller + ]); user = { persist.directories = [".config/nemo" ".local/share/nemo"]; @@ -19,12 +27,12 @@ in { directory = ["nemo.desktop"]; }; + # Settings dconf.settings = { "org/gtk/gtk4/settings/file-chooser".sort-directories-first = true; "org/nemo/search".search-reverse-sort = false; "org/nemo/desktop".show-desktop-icons = false; "org/nemo/plugins".disabled-actions = ["change-background.nemo_action"]; - "org/nemo/icon-view".captions = [ "size" "date_modified" @@ -42,16 +50,32 @@ in { }; }; - home.file.".local/share/nemo/actions/terminal.nemo_action".text = '' - [Nemo Action] - Name=Open in Terminal - Comment=Opens ${terminal} in the selected folder - Exec=${terminal} --working-directory=%F - Icon-Name=${terminal} - Selection=any - Extensions=dir; - EscapeSpaces=true - ''; + home = { + # Bulk Renamer + activation.nemo-rename = hm.dag.entryAfter ["writeBoundary"] '' + if [[ -v DBUS_SESSION_BUS_ADDRESS ]] + then + export DCONF_DBUS_RUN_SESSION="" + else + export DCONF_DBUS_RUN_SESSION="${getExe' pkgs.dbus "dbus-run-session"} --dbus-daemon=${getExe' pkgs.dbus "dbus-daemon"}" + fi + + run $DCONF_DBUS_RUN_SESSION ${getExe pkgs.dconf} write /org/nemo/preferences/bulk-rename-tool "b'bulky'" + unset DCONF_DBUS_RUN_SESSION + ''; + + # Open in Terminal + file.".local/share/nemo/actions/terminal.nemo_action".text = '' + [Nemo Action] + Name=Open in Terminal + Comment=Opens ${terminal} in the selected folder + Exec=${terminal} --working-directory=%F + Icon-Name=${terminal} + Selection=any + Extensions=dir; + EscapeSpaces=true + ''; + }; }; }; } diff --git a/packages/wine/7zip.nix b/packages/wine/7zip.nix @@ -20,17 +20,17 @@ in dontUnpack = true; wineArch = "win32"; - enableInstallNotification = false; fileMap = {}; + enableInstallNotification = false; nativeBuildInputs = [copyDesktopItems copyDesktopIcons]; winAppInstall = '' - wine start /unix ${src} /S + $WINE start /unix ${src} /S wineserver -w ''; winAppRun = '' - wine start /unix "$WINEPREFIX/drive_c/Program Files/7-Zip/7zFM.exe" "$ARGS" + $WINE start /unix "$WINEPREFIX/drive_c/Program Files/7-Zip/7zFM.exe" "$ARGS" ''; installPhase = '' diff --git a/packages/wine/notepad++.nix b/packages/wine/notepad++.nix @@ -0,0 +1,77 @@ +{ + lib, + build, + pkgs, + wine, + ... +}: let + inherit (builtins) concatLists map; + inherit (pkgs) copyDesktopItems fetchurl makeDesktopItem; + inherit (build) copyDesktopIcons makeDesktopIcon mkWindowsAppNoCC; +in + mkWindowsAppNoCC rec { + inherit wine; + pname = "notepad-plus-plus"; + version = "8.7.3"; + src = fetchurl { + url = "https://github.com/notepad-plus-plus/notepad-plus-plus/releases/download/v${version}/npp.${version}.Installer.exe"; + sha256 = "0qb8x7fy2840wvc0ypmqk0zn806va3zrpdz6cdzrqwcyn76j3ymf"; + }; + + dontUnpack = true; + wineArch = "win32"; + fileMap = {"$HOME/.config/Notepad++" = "drive_c/users/$USER/AppData/Roaming/Notepad++";}; + enableMonoBootPrompt = false; + nativeBuildInputs = [copyDesktopItems copyDesktopIcons]; + + winAppInstall = '' + $WINE start /unix ${src} /S + wineserver -w + rm -f "$WINEPREFIX/drive_c/Program Files/Notepad++/uninstall.exe" + rm -fR "$WINEPREFIX/drive_c/Program Files/Notepad++/updater" + ''; + + winAppRun = '' + $WINE start /unix "$WINEPREFIX/drive_c/Program Files/Notepad++/notepad++.exe" "$ARGS" + ''; + + installPhase = '' + runHook preInstall + ln -s $out/bin/.launcher $out/bin/${pname} + runHook postInstall + ''; + + desktopItems = let + textTypes = map (s: "text/" + s) ["plain" "html" "rust" "vbscript" "x-cmake" "x-changelog" "x-cobol" "x-common-lisp" "x-csharp" "x-c++src" "x-csrc" "x-erlang" "x-fortran" "x-haskell" "x-java" "x-log" "x-makefile" "x-objcsrc" "x-python" "x-readme" "x-scheme" "x-install"]; + appTypes = map (s: "application/" + s) ["json" "x-msi" "xml" "x-perl"]; + mimeTypes = concatLists [textTypes appTypes]; + in [ + (makeDesktopItem { + inherit mimeTypes; + name = "Notepad++"; + exec = pname; + icon = pname; + desktopName = "Notepad++"; + genericName = "Text Editor"; + categories = ["Utility" "TextEditor"]; + }) + ]; + + desktopIcon = makeDesktopIcon { + name = pname; + icoIndex = 2; + src = fetchurl { + url = "https://notepad-plus-plus.org/favicon.ico"; + sha256 = "1av2m6m665ccfngnzqnbsnv2aky907p2c6ggvfxrwbp70szgj9vi"; + }; + }; + + meta = with lib; { + mainProgram = pname; + homepage = "https://notepad-plus-plus.org/"; + description = "A text and source code editor"; + license = licenses.gpl3Plus; + maintainers = ["maydayv7"]; + platforms = ["x86_64-linux" "i686-linux"]; + }; + } diff --git a/site/content/about.md b/site/content/about.md @@ -7,20 +7,15 @@ skip-meta = true # Who am I? -I am **Vishrut Gurrala**, a 18 year old student in Bengaluru, India +I am **Vishrut Gurrala** (19M), studying Computer Science at IIT Guwahati -Tech Enthusiast (_read:_ live and breath technology) and avid reader +Tech enthusiast (_read:_ fanatic) and avid reader -# Digital Presence +## Digital Presence Ways to follow or get in contact with me -## Email - -<maydayv7@gmail.com> - -## Social Media - +- Mail: <maydayv7@gmail.com> - Github: @[maydayv7 ](https://github.com/maydayv7) - Reddit: @[maydayv7 ](https://reddit.com/u/maydayv7) - Discord: @MayDayV7#8064 diff --git a/site/content/now.md b/site/content/now.md @@ -5,9 +5,10 @@ description = "What I'm currently up to!" This page is inspired by [NowNowNow](https://nownownow.com) -Freshman at uni, still getting adjusted +Freshman at uni, never gonna get used to it - Trying (failing) to study +- Trying (failing) to code - Watching {{ url(path="anime", text="Anime", trail_slash=false) }} -> Last Updated: **October** 2024 +> Last Updated: **January** 2025