{"id":25595384,"url":"https://github.com/dynnian/neodotfiles","last_synced_at":"2026-04-13T03:38:35.999Z","repository":{"id":295104108,"uuid":"985309423","full_name":"dynnian/neodotfiles","owner":"dynnian","description":"My custom desktop in various shapes and forms.","archived":false,"fork":false,"pushed_at":"2025-05-17T17:47:37.000Z","size":173740,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"suckless","last_synced_at":"2025-05-23T17:12:51.523Z","etag":null,"topics":["awesomewm","dmenu-scripts","dotfiles","dwm","dwmblocks","hyprland","hyprland-arch","hyprland-config","linux-desktop","rice","ricing","rofi-scripts","slock","st-terminal","sway","tiling-window-manager"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dynnian.png","metadata":{},"created_at":"2025-05-17T13:48:30.000Z","updated_at":"2025-05-18T01:00:33.000Z","dependencies_parsed_at":null,"dependency_job_id":"460596b9-6665-42c6-bfdc-d6d1c9f97d53","html_url":"https://github.com/dynnian/neodotfiles","commit_stats":null,"previous_names":["dynnian/neodotfiles"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/dynnian/neodotfiles","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dynnian%2Fneodotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dynnian%2Fneodotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dynnian%2Fneodotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dynnian%2Fneodotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dynnian","download_url":"https://codeload.github.com/dynnian/neodotfiles/tar.gz/refs/heads/suckless","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dynnian%2Fneodotfiles/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266135685,"owners_count":23881803,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["awesomewm","dmenu-scripts","dotfiles","dwm","dwmblocks","hyprland","hyprland-arch","hyprland-config","linux-desktop","rice","ricing","rofi-scripts","slock","st-terminal","sway","tiling-window-manager"],"created_at":"2025-02-21T11:20:31.010Z","updated_at":"2026-04-13T03:38:30.984Z","avatar_url":"https://github.com/dynnian.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n    \u003cpicture\u003e\n        \u003csource srcset=\"./assets/logo-dark.png\" media=\"(prefers-color-scheme: dark)\"\u003e\n        \u003csource srcset=\"./assets/logo-light.png\" media=\"(prefers-color-scheme: light)\"\u003e\n        \u003cimg src=\"assets/logo-dark.png\" alt=\"neodotfiles\" width=\"415\"\u003e\n    \u003c/picture\u003e\n    \u003ch4\u003eMy custom suckless based desktop focused on absolute productivity and workflow control.\u003c/h4\u003e\n\u003c/div\u003e\n\n![screenshot](./assets/screenshot.png)\n\n## Key Features\n\n### dwm features\n* **A bunch of extra layouts**\n    - *Default ones:*\n        - master \u0026 stack.\n        - floating.\n        - monocle\n    - *Added ones:*\n        - dwindle.\n        - spiral.\n        - centered master (also known as three column).\n        - centered floating master (master window floating at the center of the screen, stack on the back).\n        - grid.\n* **Keychord based keybindings:** Just like emacs, you can have chained keybindings, which exponentially extends the amount of keybindings you can have.\n* **Scratchpad support:** Convenient scratchpad functionality for storing and retrieving frequently used applications.\n* **Tag based workflow**\n    - Each tag (also called workspaces) is meant to have it's purpose, this is achieved with an extensive set of window rules:\n        - *Tag 1:* Coding\n        - *Tag 2:* Testing\n        - *Tag 3:* Web browsing\n        - *Tag 4:* Chatting\n        - *Tag 5:* Audio tools\n        - *Tag 6:* Video tools\n        - *Tag 7:* Graphic tools\n        - *Tag 8:* Office \u0026 Document tools\n        - *Tag 9:* Gaming\n\n### Other suckless utilities included\n\n * *dmenu:* the best run launcher. This build includes some very useful scripts for things like wifi, bluetooth and wallpaper configuration, drive mounting, etc.\n * *st:* the fastest terminal emulator ever, [siduck's build](https://github.com/siduck/st).\n * *slock:* simple and efficient lock screen with fingerprint reader support.\n * *dwbmlocks:* what enables you to customize dwm's status area in the bar. This build includes some cool \u0026 customizable status scripts.\n\n### Config files\n\nOther configuration files included in this project are available at the config folder. These are:\n\n* `.bash_profile \u0026 .bashrc`: Bash configuration files, the profile is neccesary to start up dwm on tty login.\n* `.config/btop`: [btop](https://github.com/aristocratos/btop) is a system monitoring utility, cooler than htop. Accesible from dwm via a scratchpad.\n* `.config/gtk-2.0` \u0026 `.config/gtk-3.0`: GTK theeming files, I use the Cantarell font, the [Gruvbox-Dark-BL](https://github.com/Fausto-Korpsvart/Gruvbox-GTK-Theme) theme and the [Simp1e-Gruvbox-Dark](https://gitlab.com/cursors/simp1e) cursor theme.\n* `.config/Kvantum`: Qt theeming via Kvantum, Gruvbox theme is included here too.\n* `.config/lvim`: [Lunarvim](https://www.lunarvim.org/) configuration files, this is a neovim distribution and my text editor of choice.\n* `.config/mpv`: Mpv config files, mainly just for vim-like keybindings.\n* `.config/newsboat`: [Newsboat](https://github.com/newsboat/newsboat) is an awesome RSS/Atom feeds reader for the terminal. Also accesible from dwm via a scratchpad. The config file is for vim-like keybindings and also my collection of RSS \u0026 YouTube subscriptions feeds (you can open any video in mpv hitting first comma and then v).\n* `.config/picom`: The only X compositor that actually works, responsible of transparency and some animations.\n* `.config/dunst`: A cool, minimal and fast notification daemon. Best one out there.\n* `.config/qutebrowser`: Sometimes I like using a minimal browser, and qutebrowser is the best one.\n* `.config/X11`: This is where I put the xinitrc file, responsible of starting up dwm properly.\n* `.config/vifm`: [vifm](https://vifm.info/) is the best terminal file manager with everything you will and may need, with vim-like keybindings and image previews (with ueberzug).\n* `.config/zathura`: [zathura](https://git.pwmt.org/pwmt/zathura) is my document viewer of choice, also with vim-like keybindings.\n\n## Dependencies\n\nMake sure to have these dependencies installed in your system, in this case package names are from Void Linux, you'll have to look for the package names in your distribution:\n\n* **Build dependencies**\n\n```\nlibX11-devel\nlibXft-devel\nlibXrender-devel\nlibXinerama-devel\nlibXrandr-devel\nlibXext-devel\nimlib2-devel\nharfbuzz-devel\nfontconfig-devel\ngd-devel\npam-devel\nlibnotify\nxinit\nsetxkbmap\nbrightnessctl\nmake\ngcc\nvala\n```\n\n* **Runtime dependencies** (required for dmenu scripts \u0026 dwm)\n\n```\nfd-find\nfeh\nxdpyinfo\nxdotool\nxclip\nffmpeg\nmaim\nslop\nudisks2\nbluez\nj4-dmenu-desktop\nNetworkManager\npower-profiles-daemon\npolkit-gnome\nunclutter-xfixes\ngnome-keyring\npicom\nueberzug\n```\n\n* **Other dependencies** (scratchpads)\n\n- `bitwarden`: launched with flatpak by default\n- `btop`\n- `pulsemixer`\n- `alsa-utils`\n- `newsboat`\n- `arandr`\n- `mpv`\n- `zathura`\n- `nsxiv`\n- `cmus`\n- `cmus-flac`\n- `qalculate-gtk`: launched with flatpak by default\n- `ytfzf`: [download here](https://github.com/pystardust/ytfzf)\n- `ani-cli`: [download here](https://github.com/pystardust/ani-cli)\n- `flix-cli`: [download here](https://github.com/d4r1us-drk/flix-cli)\n\n### System stuff (just here to keep track on stuff I need to rebuild the system)\n\n* **System dependencies** (stuff required for the main installation)\n\n```\nNetworkManager\ndhcpcd\nwpa_supplicant\ngrub-x86_64-efi\nefibootmgr\nlvm2\ncryptsetup\nvim\nelogind\npolkit\ndbus\nxorg-server\nxf86-input-libinput\nxss-lock\npipewire\nwireplumber\nalsa-pipewire\ngstreamer1\ngstreamermm\ngstreamer-vaapi\ngst-plugins-bad1\ngst-plugins-good1\ngst-plugins-base1\ngst-plugins-ugly1\nbluez\nbluez-alsa\nlibspa-alsa\nlibspa-bluetooth\nmesa\nmesa-vaapi\n```\n\n* **Intel stuff** (I mainly use intel devices)\n\n```\nxf86-video-intel\nmesa-intel-dri\nmesa-vulkan-intel\nintel-media-driver\nlibva-intel-driver\n```\n\n## Installation \u0026 How To Modify\n\nAfter installing them with your package manager of choice, you can do the following to get the source code and start to modify it to your liking.\n\n```bash\n# Clone this repository\n$ git clone https://github.com/d4r1us-drk/neodotfiles.git\n\n# Go into the repository\n$ cd neodotfiles\n\n# Select which project to compile \u0026 install (dwm in this case)\n$ cd source/dwm\n\n# To install\n$ sudo make install \u0026\u0026 make clean\n```\n\nThis repository is not a tutorial on how to modify or configure dwm or any of the included suckless tools, you obviusly don't need to learn C to do this, with this build you can start with an usable base and you wont even need to patch anything. If you want to add a patch though, you will need to do this manually, because most patching utilities like `patch` and `git apply` will fail due to how much of the code base I modified myself.\n\nTo configure my build, the only file you really need to modify is the `config.h` file in each tool, which has everything commented and explained. Of course this being *my* build, it is already configured for my needs.\n\n## dwm patch list\n\nThese are the patches I applied to this dwm build (some of them I modified):\n\n- adjacenttag\n- alpha\n- alwayscenter\n- attachbottom\n- autostart\n- barpadding\n- centeredmaster\n- clientindicators\n- combo\n- cyclelayouts\n- fibonacci\n- focusmaster-return\n- fullscreen\n- gridmode\n- keychord\n- movestack\n- pertag\n- restartsig\n- rmaster\n- scratchpads\n- statuspadding\n- sticky\n- stickyindicator\n- tag-preview\n- tapresize\n- truecenteredtitle\n- warp\n- winicon\n\n## Credits\n\n- dwm and the suckless tools available here are made by the suckless guys at [https://suckless.org](https://suckless.org).\n- dwmblocks is made by torrinfail and available [here](https://github.com/torrinfail/dwmblocks)\n\n## License\n\nThis project is licenced under the MIT License\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdynnian%2Fneodotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdynnian%2Fneodotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdynnian%2Fneodotfiles/lists"}