├── .bashrc ├── .config ├── emacs │ ├── feeds.org │ ├── init.el │ ├── org-themes │ │ └── simple_inline.theme │ └── pics │ │ └── nz4qLQq3_400x400.jpg ├── eww │ ├── eww.scss │ ├── eww.yuck │ └── scripts │ │ ├── currentwindow │ │ ├── getconn │ │ └── workspaceno ├── fastfetch │ └── config.jsonc ├── foot │ └── foot.ini ├── fuzzel │ └── fuzzel.ini ├── hypr │ ├── comix.conf │ ├── hypr-space.png │ ├── hypridle.conf │ ├── hyprland.conf │ ├── hyprlock.conf │ ├── monitors.conf │ ├── scripts │ │ ├── init.sh │ │ └── open.sh │ ├── space.conf │ ├── sway.conf │ └── workspaces.conf ├── lf │ ├── colors │ ├── icons │ ├── lf_sixel │ ├── lfrc │ └── tripe.py ├── mako │ └── config ├── mpv │ ├── mpv.conf │ └── script-opts │ │ └── osc.conf ├── mu4e │ └── mu4e-config.el ├── ncmpcpp │ ├── bindings │ └── config ├── newsboat │ └── config ├── tmux │ └── tmux.conf ├── waybar │ ├── config │ ├── maildir.sh │ ├── spacebar.config │ ├── spacebar.css │ ├── style.css │ ├── swayclone.config │ ├── swayclone.css │ ├── waybar │ │ ├── config │ │ ├── maildir.sh │ │ ├── spacebar.config │ │ ├── spacebar.css │ │ ├── style.css │ │ ├── swayclone.config │ │ ├── swayclone.css │ │ └── workspaceno │ └── workspaceno └── zathura │ └── zathurarc ├── .local ├── s └── wallpaperfy ├── demo.png ├── license.md ├── readme.md └── wallpaper ├── aubrey-ascii-test.png ├── gruved-seconds.png ├── gruvvy-snotty-na-2.png ├── lot3.png ├── lottie-3.png ├── lottie1.png ├── lottie45.png ├── lottie6.png ├── risewallpaper.png ├── seconds_2.png ├── snotgirl_wp.png ├── snotgirl_wp_2.png ├── snotty-abstract.png └── witch.png /.bashrc: -------------------------------------------------------------------------------- 1 | # .bashrc 2 | 3 | # Source global definitions 4 | if [ -f /etc/bashrc ]; then 5 | . /etc/bashrc 6 | fi 7 | 8 | # User specific environment 9 | if ! [[ "$PATH" =~ "$HOME/.local/bin:$HOME/bin:" ]] 10 | then 11 | PATH="$HOME/.local/bin:$HOME/bin:$PATH" 12 | fi 13 | export PATH 14 | 15 | # Uncomment the following line if you don't like systemctl's auto-paging feature: 16 | # export SYSTEMD_PAGER= 17 | 18 | # User specific aliases and functions 19 | # if [ -d ~/.bashrc.d ]; then 20 | # for rc in ~/.bashrc.d/*; do 21 | # if [ -f "$rc" ]; then 22 | # . "$rc" 23 | # fi 24 | # done 25 | #fi 26 | # 27 | # if [ -f "$rc" ]; then 28 | # . "$rc" 29 | # fi 30 | # done 31 | #fi 32 | 33 | # export PS1="\[\033[38;5;213m\]\u\[$(tput sgr0)\] \w \[$(tput sgr0)\]\[\033[38;5;213m\]>\[$(tput sgr0)\] " 34 | # export PS1="\[\033[38;5;75m\]\u\[$(tput sgr0)\]@\h \w \[$(tput sgr0)\]\[\033[38;5;75m\]>\[$(tput sgr0)\] " 35 | # export PS1="\[$(tput bold)\]\[\033[38;5;130m\]\u\[$(tput sgr0)\] \w \[$(tput sgr0)\]\[$(tput bold)\]\[\033[38;5;130m\]>\[$(tput sgr0)\] \[$(tput sgr0)\]" 36 | export PS1="\[$(tput bold)\]\u\[$(tput sgr0)\] \w \[$(tput sgr0)\]\[$(tput bold)\]\[\033[38;5;2m\]>\[$(tput sgr0)\] \[$(tput sgr0)\]" 37 | # BROWN 38 | #export PS1="\[$(tput bold)\]\u\[$(tput sgr0)\] \w \[$(tput sgr0)\]\[$(tput bold)\]\[\033[38;5;130m\]>\[$(tput sgr0)\] \[$(tput sgr0)\]" 39 | # export PS1="\w > " 40 | 41 | # Variables 42 | PLAN9="/home/pk/Documents/Builds/plan9port/" export PLAN9 43 | PATH=$PATH:$PLAN9/bin export PATH 44 | 45 | CARGO="/home/pk/.cargo/bin/" export CARGO 46 | PATH=$PATH:/usr/local/go/bin 47 | PATH=$PATH:usr/local/go/bin 48 | PATH=$PATH:$CARGO export PATH 49 | PATH=$PATH:"/home/pk/go/bin/" 50 | PATH=$PATH:"/home/pk/Documents/Builds/emsdk" 51 | # /home/pk/Documents/Builds/emsdk/node/14.18.2_64bit/bin 52 | PATH=$PATH:"/home/pk/Documents/Builds/emsdk/upstream/emscripten" 53 | 54 | # Zypper features 55 | ZYPP_MULTICURL=0 56 | ZYPP_MEDIANETWORK=1 57 | ZYPP_SINGLE_RPMTRANS=1 58 | 59 | QT_SCALE_FACTOR=1 60 | 61 | # Aliases 62 | alias jams="ncmpcpp" 63 | alias mg="mg -n" 64 | alias z="zypper" 65 | 66 | export GO111MODULE="auto" 67 | export NO_COLOR="true" 68 | export DENO_INSTALL="/home/pk/.deno/" 69 | export PATH="$DENO_INSTALL/bin:$PATH" 70 | 71 | export GRIM_DEFAULT_DIR="/home/pk/Pictures/Screenshots" 72 | 73 | unset rc 74 | . "$HOME/.cargo/env" 75 | 76 | export NVM_DIR="$HOME/.nvm" 77 | [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm 78 | [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion 79 | -------------------------------------------------------------------------------- /.config/emacs/feeds.org: -------------------------------------------------------------------------------- 1 | #+setupfile: ~/.config/emacs/org-themes/simple_inline.theme 2 | #+title: Feeds 3 | # * =feeds.org= 4 | 5 | #+attr_html: :width 450px 6 | [[./pics/nz4qLQq3_400x400.jpg]] 7 | 8 | Elfeed config/summaries of the feeds I'm subscribed to. 9 | 10 | Use =elfeed-org= for this, fucker. Also, just so you know, =org= is a shockingly efficient configuration format. 11 | 12 | ** URL formats that used by platforms for RSS feeds. 13 | Some older platforms (mostly from pre-2012, when RSS was still seen as cool) still have RSS enabled. I'm collecting links for that for convenience. 14 | *** DeviantArt 15 | - https://backend.deviantart.com/rss.xml?type=deviation&q=by%3A{user}+sort%3Atime+meta%3Aall 16 | See https://www.deviantart.com/developers/rss for more information. 17 | *** Reddit 18 | - http://www.reddit.com/r/{subreddit}/.rss 19 | See https://www.reddit.com/wiki/rss/ for more information. 20 | *** Mastodon 21 | - https://mastodon.instance/@{user}.rss 22 | 23 | * Feeds :elfeed: 24 | ** YouTube :youtube: 25 | Do note that I use [[https://yewtu.be][yewtu.be]] for every link here. This is because: 26 | 27 | 1. yewtu.be is more privacy-friendly than YouTube 28 | 2. It has a fucking button for RSS right on every channel. 29 | 30 | *** [[https://yewtu.be/feed/channel/UC9ek8xUVjnmQ-q7f6CTwtxg][AstralSpiff]] 31 | Speedrunner. 32 | *** [[https://yewtu.be/feed/channel/UCOkL7q2SeGZeZuj22njMYEA][Caddicarus]] 33 | Goofy game reviews. 34 | *** [[https://yewtu.be/feed/channel/UCfbnTUxUech4P1XgYUwYuKA][Cold Ones]] 35 | Drunk Australian tomfoolery. 36 | *** [[https://yewtu.be/feed/channel/UCVo63lbKHjC04KqYhwSZ_Pg][Defunctland]] 37 | Like Tom Scott, but with a focus on the entertainment industry. 38 | *** [[https://yewtu.be/feed/channel/UCFeqAfEuKm7lIg2ddQzh61A][Emirichu]] 39 | Videos about living in Japan and takes on media (particularly Anime/Manga). 40 | *** [[https://yewtu.be/feed/channel/UCsKVP_4zQ877TEiH_Ih5yDQ][illymation]] 41 | Videos about the life of an autistic girl. 42 | *** [[https://yewtu.be/feed/channel/UCWyRlMktpKbfefqBQk8U6Nw][Izzzyzzz]] 43 | Post-Y2K Internet Culture Analysis. 44 | *** [[https://yewtu.be/feed/channel/UCGwu0nbY2wSkW8N-cghnLpA][Jaiden Animations]] 45 | Wacky things about life, and video games. 46 | *** [[https://yewtu.be/feed/channel/UC7-E5xhZBZdW-8d7V80mzfg][Jenny Nicholson]] 47 | See above. 48 | *** [[https://yewtu.be/feed/channel/UC7_YxT-KID8kRbqZo7MyscQ][Markiplier]] 49 | *WAS THAT THE BITE OF '87?!* 50 | *** [[https://yewtu.be/feed/channel/UCj74rJ9Lgl3WTngq675wxKg][Noodle]] 51 | Some of the more insightful media criticism on YouTube, delivered by an avatar that looks like a potato. 52 | *** [[https://yewtu.be/feed/channel/UCodbH5mUeF-m_BsNueRDjcw][Overly Sarcastic Productions]] 53 | Analysis of history, literature, and mythology. 54 | *** [[https://yewtu.be/feed/channel/UCM0V8r4kuIWIl6Sy-NHj2lg][Quinton Reviews]] 55 | Some of the longest videos I've seen uploaded to YouTube. 56 | *** [[https://yewtu.be/feed/channel/UCQuZgTeDkLjVdsO6Ahg9Qjw][Red Bard]] 57 | Weebshit historian. 58 | *** [[https://yewtu.be/feed/channel/UCK-GxvzttTnNhq3JPYpXhqg][Sarah Z]] 59 | Videos about fandom, and internet culture. 60 | *** [[https://yewtu.be/feed/channel/UC4rqhyiTs7XyuODcECvuiiQ][Scott The Woz]] 61 | White guy with glasses #1. 62 | *** [[https://yewtu.be/feed/channel/UCBa659QWEk1AI4Tg--mrJ2A][Tom Scott]] 63 | Has been to nearly every weird place you can imagine, and explains things you probably never thought you'd want to learn about. 64 | *** [[https://yewtu.be/feed/channel/UCllm3HivMERwu2x2Sjz5EIg][Vargskelethor Joel]] 65 | The greatest streamer of all-time. 66 | ** Humor :humor: 67 | Wacky nonsense. Expect only me to find these funny. 68 | *** [[https://www.theonion.com/rss][The Onion]] 69 | Fake news, but funny. 70 | *** [[https://xkcd.com/rss.xml][xkcd]] 71 | "Oh, XCKD, I love your silly science comics that I don't understand..." 72 | *** [[http://feeds.feedburner.com/satwcomic][Scandinavia and the World]] 73 | Like countryballs, but less gay. 74 | ** Tech :tech: 75 | *** [[http://9front.org/releases/index.rss][9front]] 76 | Community-maintained fork of /Plan 9 From Bell Labs./ 77 | *** [[https://deno.com/feed][Deno]] 78 | The only TypeScript/JS runtime that matters. 79 | *** [[https://buttondown.email/denonews/rss][Deno News]] 80 | See above. 81 | *** [[https://www.kernel.org/feeds/kdist.xml][Linux Kernel Updates]] 82 | Updates on the Linux kernel. 83 | *** [[https://lwn.net/headlines/rss][lwn.net]] 84 | News on open-source software. 85 | *** [[https://news.opensuse.org/feed.xml][OpenSUSE News]] 86 | I use this OS, therefore, I must follow on its development. 87 | ** Blogs :blog: 88 | *** [[https://www.oliverexplains.com/feed][Oliver Explains]] 89 | A man named Oliver explains things. 90 | *** [[https://www.transformativeworks.org/feed/][OTW]] 91 | The organization behind the Archive Of Our Own (AO3). 92 | *** [[https://www.ralphehanson.com/feed/][Ralph E. Hanson]] 93 | Blog about mass media that I was introduced to during a college course. Pretty insightful. 94 | *** [[https://hachyderm.io/@robpike.rss][Rob Pike]] :mastodon:tech: 95 | This guy fucks. 96 | *** Tech Based :tech: 97 | **** [[https://www.boringcactus.com/feed.xml][BoringCactus]] 98 | Weird tech stuff. 99 | **** [[https://xeiaso.net/blog.rss][Xe Iaso's Blog]] 100 | Pretty interesting insights on software development. 101 | **** [[https://magnus.therning.org/feed.xml][Magnus]] 102 | Emacs stuff. 103 | **** [[https://feeds.feedburner.com/datahorde/SsYz][Data Horde]] 104 | Blog about internet archiving, and bulk-downloading. 105 | **** [[https://drewdevault.com/blog/index.xml][Drew DeVault]] 106 | Asshole/Wayland enthusiast. 107 | **** [[https://landley.net/rss.xml][Rob Landley]] 108 | Toybox maintainer, and minimal Linux enthusiast. 109 | **** [[https://jcs.org/rss][jcs]] 110 | OpenBSD developer and classic Mac nerd. 111 | **** [[https://maia.crimew.gay/feed.xml][maia arson crimew]] 112 | Social-Justice focused hacker. 113 | *** Tumblr :tumblr: 114 | **** [[https://jelloapocalypse.tumblr.com/rss][JelloApocalypse]] 115 | Wacky guy, created Epithet Erased. 116 | **** [[https://ask.plasterbrain.com/rss][Plasterbrain Tumblr]] 117 | Cool Musician. 118 | **** [[https://thespongemagic.tumblr.com/rss][SpongeMagic]] 119 | Furry blogger/wacky girl. 120 | **** Art :art: 121 | ***** [[https://ac120.tumblr.com/rss][AC120]] 122 | Neato. 123 | ***** [[https://memen18-m5r3.tumblr.com/rss][pirran p]] 124 | Neat style. 125 | ***** [[https://wazzaldorps-comic-hole.tumblr.com/rss][Wazzaldorp]] 126 | Drawer of cute girls, and OneyPlays. 127 | **** [[https://legendofnerd.tumblr.com/rss][LegendofNerd]] 128 | Cute 129 | ** Podcasts :podcasts: 130 | *** [[https://feeds.megaphone.fm/landofthegiants][Land Of The Giants]] :tech: 131 | Tech-focused podcast. 132 | *** [[https://feeds.soundcloud.com/users/soundcloud:users:492135420/sounds.rss][QAnon Anonymous]] 133 | A podcast about conspiracy theorists. 134 | ** News :news: 135 | # *** [[https://news.google.com/rss/search?q=when:24h+allinurl:apnews.com&hl=en-US&gl=US&ceid=US:en][Associated Press]] 136 | # What more do I need to say? 137 | # *** [[http://feeds.bbci.co.uk/news/rss.xml][BBC News]] 138 | # Bri'ish 139 | *** [[https://www.erininthemorning.com/feed][Erin In The Morning]] 140 | Focus on the movement for transgender rights. 141 | *** [[https://daily.jstor.org/feed/][JSTOR Daily]] 142 | Academic analysis of topics. 143 | *** [[https://kenklippenstein.substack.com/feed][Ken Klippenstein]] 144 | Ongoing news relating to American politics. 145 | # *** [[https://feeds.npr.org/1003/rss.xml][NPR]] 146 | # For American stuff. 147 | *** [[https://torrentfreak.com/feed/][TorrentFreak]] 148 | News about the downloading/piracy scene. 149 | *** [[https://www.vox.com/rss/index.xml][Vox]] 150 | Pretty lib, but not a bad read. 151 | ** Art :art: 152 | +Most of these totally aren't fetish artists. Look them up, they're really good I swear.+ 153 | *** DeviantArt :deviantart: 154 | **** [[https://backend.deviantart.com/rss.xml?type=deviation&q=by%3AKobi-Tfs+sort%3Atime+meta%3Aall][kobi-tfs]] 155 | I don't even know, man. 156 | **** [[https://backend.deviantart.com/rss.xml?type=deviation&q=by%3Amentalcrash+sort%3Atime+meta%3Aall][mentalcrash]] 157 | Transformation art. 158 | **** [[https://backend.deviantart.com/rss.xml?type=deviation&q=by%3Apirran-p+sort%3Atime+meta%3Aall][pirran-p]] 159 | Same pirran as on tumblr. 160 | *** Twitter :twitter: 161 | I'll probably see if I can add any of these via. =rss-bridge= or whatever. 162 | ** Reddit :reddit: 163 | *** [[https://www.reddit.com/r/ChurchOfMinaAshido/.rss][r/ChurchOfMinaAshido]] 164 | Subreddit about my favorite MHA character. Yes, it's weird. I don't care. 165 | ** General Cool Shit :cool: 166 | *** [[https://www.nasa.gov/feeds/iotd-feed/][NASA Image of the Day]] 167 | Photos by NASA. 168 | -------------------------------------------------------------------------------- /.config/emacs/init.el: -------------------------------------------------------------------------------- 1 | (menu-bar-mode -1) 2 | (tool-bar-mode -1) 3 | (scroll-bar-mode -1) 4 | (setq auto-save-default nil) 5 | (setq make-backup-files nil) 6 | (cursor-face-highlight-mode 0) 7 | 8 | ;; Theming bullshit 9 | (add-to-list 'custom-theme-load-path "~/.emacs.d/themes/") 10 | (load-theme 'gruvbox-light-medium t) 11 | (set-face-attribute 'default nil 12 | :family "Cascadia Code PL, Light" 13 | :height 105 14 | :weight 'normal 15 | :width 'normal) 16 | 17 | ;; Packages 18 | (setq package-archives 19 | '(("gnu" . "http://elpa.gnu.org/packages/") 20 | ("marmalade" . "http://marmalade-repo.org/packages/") 21 | ("melpa" . "https://melpa.org/packages/") 22 | ("nongnu" . "https://elpa.nongnu.org/nongnu/"))) 23 | 24 | 25 | (require 'rainbow-mode) 26 | (require 'multiple-cursors) 27 | (global-auto-revert-mode) 28 | (put 'dired-find-alternate-file 'disabled nil) 29 | (add-hook 'prog-mode-hook 'display-line-numbers-mode) 30 | (add-hook 'text-mode-hook 'display-line-numbers-mode) 31 | (global-font-lock-mode -1) ;; I am not too interested in syntax highlighting in most cases. 32 | 33 | (setq epa-pinentry-mode 'loopback) 34 | 35 | (setq erc-prompt "> ") 36 | (setq org-src-preserve-indentation t) 37 | 38 | (use-package olivetti) 39 | 40 | (defun my/literate-mode () 41 | "For non-programming stuff." 42 | (olivetti-mode) 43 | (display-line-numbers-mode -1) 44 | (olivetti-set-width 100) 45 | (flyspell-mode) 46 | (global-set-key (kbd "C-c v") 'org-download-clipboard) 47 | (global-font-lock-mode nil)) 48 | 49 | (add-hook 'org-mode-hook 'my/literate-mode) 50 | (add-hook 'fountain-mode-hook 'my/literate-mode) 51 | 52 | (require 'org-auto-tangle) 53 | (require 'org-download) 54 | (add-hook 'org-mode-hook 'org-auto-tangle-mode) 55 | 56 | ;; Bullshit for mermaid 57 | (setq exec-path (append exec-path '("/home/pk/.yarn/bin"))) 58 | (setq ob-mermaid-cli-path "/home/pk/.config/yarn/global/node_modules/@mermaid-js/mermaid-cli/src/cli.js") 59 | (put 'upcase-region 'disabled nil) 60 | (put 'downcase-region 'disabled nil) 61 | 62 | (add-hook 'dired-load-hook 63 | (lambda () (local-set-key (kbd "C-c C-l") 'dired-launch-command))) 64 | 65 | ;; Binds 66 | (global-set-key (kbd "C-x w") 'count-words) 67 | 68 | (setq-default elfeed-search-filter "+unread") 69 | 70 | (load-file "~/.config/mu4e/mu4e-config.el") 71 | 72 | ;; Update mu4e every half hour (Don't use this anymore) 73 | ;; (setq mu4e-update-interval (* 1 30 60)) 74 | 75 | (elfeed-org) 76 | (setq rmh-elfeed-org-files (list "~/.config/emacs/feeds.org")) 77 | 78 | ;; Update feeds half hour 79 | (run-at-time nil (* 1 30 60) #'elfeed-update) 80 | 81 | ;; Org to Markdown 82 | ;; (require 'ox-md) 83 | 84 | ;; (setq shr-max-image-proportion 0.50) 85 | ;; (setq org-image-actual-width (truncate (* (window-pixel-width) 0.6))) 86 | (setq-default org-download-image-dir "~/Pictures/org-download/") 87 | 88 | ;; (setq epa-pinentry-mode 'loopback) 89 | ;; (use-package pinentry 90 | ;; :defer nil 91 | ;; :config (pinentry-start)) 92 | 93 | ;; Custom variables 94 | ;; This is big so I'm keeping it at the bottom. 95 | 96 | (custom-set-variables 97 | ;; custom-set-variables was added by Custom. 98 | ;; If you edit it by hand, you could mess it up, so be careful. 99 | ;; Your init file should contain only one such instance. 100 | ;; If there is more than one, they won't work right. 101 | '(custom-safe-themes 102 | '("a5270d86fac30303c5910be7403467662d7601b821af2ff0c4eb181153ebfc0a" "98ef36d4487bf5e816f89b1b1240d45755ec382c7029302f36ca6626faf44bbd" "b73a23e836b3122637563ad37ae8c7533121c2ac2c8f7c87b381dd7322714cd0" "37768a79b479684b0756dec7c0fc7652082910c37d8863c35b702db3f16000f8" "d14f3df28603e9517eb8fb7518b662d653b25b26e83bd8e129acea042b774298" "7661b762556018a44a29477b84757994d8386d6edee909409fabe0631952dad9" "83e0376b5df8d6a3fbdfffb9fb0e8cf41a11799d9471293a810deb7586c131e6" "6b5c518d1c250a8ce17463b7e435e9e20faa84f3f7defba8b579d4f5925f60c1" "4eb6fa2ee436e943b168a0cd8eab11afc0752aebb5d974bba2b2ddc8910fca8f" "6bdcff29f32f85a2d99f48377d6bfa362768e86189656f63adbf715ac5c1340b" "78c4238956c3000f977300c8a079a3a8a8d4d9fee2e68bad91123b58a4aa8588" "4c56af497ddf0e30f65a7232a8ee21b3d62a8c332c6b268c81e9ea99b11da0d3" "c6da29e5267938b087cab199e0848114cefc425745fc42879a9067491c216d2d" "9b59e147dbbde5e638ea1cde5ec0a358d5f269d27bd2b893a0947c4a867e14c1" default)) 103 | '(delete-selection-mode nil) 104 | '(elfeed-feeds 105 | '(("https://www.nasa.gov/feeds/iotd-feed/" cool) 106 | ("https://www.reddit.com/r/ChurchOfMinaAshido/.rss" reddit) 107 | ("https://backend.deviantart.com/rss.xml?type=deviation&q=by%3Apirran-p+sort%3Atime+meta%3Aall" art deviantart) 108 | ("https://backend.deviantart.com/rss.xml?type=deviation&q=by%3Amentalcrash+sort%3Atime+meta%3Aall" art deviantart) 109 | ("https://backend.deviantart.com/rss.xml?type=deviation&q=by%3AKobi-Tfs+sort%3Atime+meta%3Aall" art deviantart) 110 | ("https://www.vox.com/rss/index.xml" news) 111 | ("https://torrentfreak.com/feed/" news) 112 | ("https://kenklippenstein.substack.com/feed" news) 113 | ("https://daily.jstor.org/feed/" news) 114 | ("https://www.erininthemorning.com/feed" news) 115 | ("https://feeds.soundcloud.com/users/soundcloud:users:492135420/sounds.rss" podcasts) 116 | ("https://feeds.megaphone.fm/landofthegiants" podcasts tech) 117 | ("https://legendofnerd.tumblr.com/rss" blog tumblr) 118 | ("https://wazzaldorps-comic-hole.tumblr.com/rss" blog tumblr art) 119 | ("https://memen18-m5r3.tumblr.com/rss" blog tumblr art) 120 | ("https://ac120.tumblr.com/rss" blog tumblr art) 121 | ("https://thespongemagic.tumblr.com/rss" blog tumblr) 122 | ("https://ask.plasterbrain.com/rss" blog tumblr) 123 | ("https://jelloapocalypse.tumblr.com/rss" blog tumblr) 124 | ("https://maia.crimew.gay/feed.xml" blog tech) 125 | ("https://jcs.org/rss" blog tech) 126 | ("https://landley.net/rss.xml" blog tech) 127 | ("https://drewdevault.com/blog/index.xml" blog tech) 128 | ("https://feeds.feedburner.com/datahorde/SsYz" blog tech) 129 | ("https://magnus.therning.org/feed.xml" blog tech) 130 | ("https://xeiaso.net/blog.rss" blog tech) 131 | ("https://www.boringcactus.com/feed.xml" blog tech) 132 | ("https://hachyderm.io/@robpike.rss" blog mastodon tech) 133 | ("https://www.ralphehanson.com/feed/" blog) 134 | ("https://www.transformativeworks.org/feed/" blog) 135 | ("https://www.oliverexplains.com/feed" blog) 136 | ("https://news.opensuse.org/feed.xml" tech) 137 | ("https://lwn.net/headlines/rss" tech) 138 | ("https://www.kernel.org/feeds/kdist.xml" tech) 139 | ("https://buttondown.email/denonews/rss" tech) 140 | ("https://deno.com/feed" tech) 141 | ("http://9front.org/releases/index.rss" tech) 142 | ("https://xkcd.com/rss.xml" humor) 143 | ("https://www.theonion.com/rss" humor) 144 | ("https://yewtu.be/feed/channel/UCllm3HivMERwu2x2Sjz5EIg" youtube) 145 | ("https://yewtu.be/feed/channel/UCBa659QWEk1AI4Tg--mrJ2A" youtube) 146 | ("https://yewtu.be/feed/channel/UC4rqhyiTs7XyuODcECvuiiQ" youtube) 147 | ("https://yewtu.be/feed/channel/UCK-GxvzttTnNhq3JPYpXhqg" youtube) 148 | ("https://yewtu.be/feed/channel/UCQuZgTeDkLjVdsO6Ahg9Qjw" youtube) 149 | ("https://yewtu.be/feed/channel/UCM0V8r4kuIWIl6Sy-NHj2lg" youtube) 150 | ("https://yewtu.be/feed/channel/UCodbH5mUeF-m_BsNueRDjcw" youtube) 151 | ("https://yewtu.be/feed/channel/UCj74rJ9Lgl3WTngq675wxKg" youtube) 152 | ("https://yewtu.be/feed/channel/UC7_YxT-KID8kRbqZo7MyscQ" youtube) 153 | ("https://yewtu.be/feed/channel/UC7-E5xhZBZdW-8d7V80mzfg" youtube) 154 | ("https://yewtu.be/feed/channel/UCGwu0nbY2wSkW8N-cghnLpA" youtube) 155 | ("https://yewtu.be/feed/channel/UCWyRlMktpKbfefqBQk8U6Nw" youtube) 156 | ("https://yewtu.be/feed/channel/UCsKVP_4zQ877TEiH_Ih5yDQ" youtube) 157 | ("https://yewtu.be/feed/channel/UCFeqAfEuKm7lIg2ddQzh61A" youtube) 158 | ("https://yewtu.be/feed/channel/UCVo63lbKHjC04KqYhwSZ_Pg" youtube) 159 | ("https://yewtu.be/feed/channel/UCfbnTUxUech4P1XgYUwYuKA" youtube) 160 | ("https://yewtu.be/feed/channel/UCOkL7q2SeGZeZuj22njMYEA" youtube) 161 | ("https://yewtu.be/feed/channel/UC9ek8xUVjnmQ-q7f6CTwtxg" youtube))) 162 | '(elfeed-search-date-format '("%x" 10 :left)) 163 | '(fountain-mode-hook '(visual-line-mode olivetti-mode) t) 164 | '(ielm-prompt "> ") 165 | '(inhibit-startup-screen t) 166 | '(mu4e-headers-fields 167 | '((:human-date . 10) 168 | (:subject . 80) 169 | (:from . 40) 170 | (:flags . 5))) 171 | '(mu4e-headers-visible-flags '(draft new passed replied attach encrypted signed)) 172 | '(mu4e-modeline-mode nil) 173 | '(mu4e-use-fancy-chars t) 174 | '(package-selected-packages 175 | '(password-mode python-mode pinentry notmuch lua-mode org-contrib simple-mpc dired-launch bluetooth elfeed-web org-download cargo elfeed-org eat bongo transmission mentor ytdl osm mpv elfeed emms mermaid-mode ob-mermaid org-modern org-auto-tangle org-roam pass olivetti ement quelpa-use-package one-themes editorconfig term+ stupid-indent-mode fountain-mode vterm-toggle web-mode yaml-mode react-snippets ranger crdt go-mode multiple-cursors gruvbox-theme rustic typescript-mode lsp-mode pdf-tools magit magitt markdown-mode restclient vue-mode mbsync rainbow-mode)) 176 | '(warning-suppress-log-types 177 | '((comp) 178 | (comp) 179 | (comp) 180 | (comp) 181 | (comp) 182 | (comp) 183 | (comp) 184 | (comp) 185 | (comp))) 186 | '(warning-suppress-types 187 | '((comp) 188 | (comp) 189 | (comp) 190 | (comp) 191 | (comp) 192 | (comp) 193 | (comp) 194 | (comp) 195 | (comp)))) 196 | (custom-set-faces 197 | ;; custom-set-faces was added by Custom. 198 | ;; If you edit it by hand, you could mess it up, so be careful. 199 | ;; Your init file should contain only one such instance. 200 | ;; If there is more than one, they won't work right. 201 | '(custom-variable-tag ((t (:foreground "nil" :weight bold)))) 202 | '(dired-header ((t nil))) 203 | '(elfeed-search-date-face ((t (:inherit font-lock-builtin-face :foreground "nil" :underline nil)))) 204 | '(elfeed-search-feed-face ((t (:inherit font-lock-variable-name-face :foreground "nil")))) 205 | '(elfeed-search-filter-face ((t (:inherit font-lock-comment-face)))) 206 | '(elfeed-search-tag-face ((t (:inherit font-lock-keyword-face :foreground "nil")))) 207 | '(elfeed-search-title-face ((t (:foreground "nil")))) 208 | '(elfeed-search-unread-count-face ((t (:weight bold)))) 209 | '(elfeed-search-unread-title-face ((t (:foreground "#282828" :weight bold)))) 210 | '(emms-browser-album-face ((t nil))) 211 | '(emms-browser-artist-face ((t (:foreground "nil")))) 212 | '(emms-browser-performer-face ((t nil))) 213 | '(emms-browser-track-face ((t nil))) 214 | '(emms-playlist-selected-face ((t (:background "#ebdbb2" :foreground "nil")))) 215 | '(emms-playlist-track-face ((t (:foreground "nil")))) 216 | '(erc-action-face ((t (:inherit erc-bold-face)))) 217 | '(erc-current-nick-face ((t (:foreground "nil" :weight bold)))) 218 | '(erc-default-face ((t (:foreground "nil")))) 219 | '(erc-input-face ((t (:foreground "nil" :weight normal)))) 220 | '(erc-my-nick-face ((t (:foreground "nil" :weight bold)))) 221 | '(erc-notice-face ((t (:foreground "#a89984")))) 222 | '(erc-prompt-face ((t (:foreground "nil" :weight heavy)))) 223 | '(erc-timestamp-face ((t (:foreground "nil")))) 224 | '(font-lock-constant-face ((t (:foreground "nil")))) 225 | '(font-lock-variable-name-face ((t nil))) 226 | '(gnus-button ((t nil))) 227 | '(gnus-cite-1 ((t (:foreground "nil")))) 228 | '(hl-line ((t (:background "#ebdbb2")))) 229 | '(italic ((t (:slant italic)))) 230 | '(link ((t (:foreground "nil" :underline t)))) 231 | '(magit-section-heading ((t (:extend t :foreground "nil" :weight bold)))) 232 | '(mentor-download-message ((t (:foreground "nil")))) 233 | '(mentor-download-name ((t (:foreground "nil")))) 234 | '(mentor-download-progress ((t (:foreground "nil")))) 235 | '(mentor-download-size ((t (:foreground "nil")))) 236 | '(mentor-download-speed-down ((t (:foreground "nil")))) 237 | '(mentor-download-speed-up ((t (:foreground "nil")))) 238 | '(mentor-download-state ((t (:foreground "nil")))) 239 | '(mentor-highlight-face ((t (:weight bold)))) 240 | '(mentor-tracker-name ((t (:foreground "nil")))) 241 | '(message-header-name ((t (:inherit font-lock-keyword-face :foreground "nil")))) 242 | '(message-header-other ((t (:inherit font-lock-variable-name-face :foreground "nil")))) 243 | '(message-header-subject ((t (:foreground "nil" :weight bold)))) 244 | '(message-header-to ((t (:inherit font-lock-variable-name-face :foreground "nil")))) 245 | '(mu4e-draft-face ((t nil))) 246 | '(mu4e-forwarded-face ((t nil))) 247 | '(mu4e-header-highlight-face ((t (:inherit hl-line :extend t)))) 248 | '(mu4e-header-key-face ((t (:foreground "nil" :weight bold)))) 249 | '(mu4e-header-title-face ((t nil))) 250 | '(mu4e-highlight-face ((t (:foreground "nil")))) 251 | '(mu4e-replied-face ((t nil))) 252 | '(mu4e-title-face ((t (:weight bold)))) 253 | '(mu4e-unread-face ((t (:foreground "nil" :weight bold)))) 254 | '(pass-mode-directory-face ((t nil))) 255 | '(pass-mode-header-face ((t nil))) 256 | '(rcirc-prompt ((t (:foreground "black")))) 257 | '(shr-link ((t (:inherit link :foreground "nil")))) 258 | '(shr-text ((t nil))) 259 | '(simple-mpc-current-track-face ((t (:weight bold)))) 260 | '(simple-mpc-main-headers ((t nil))) 261 | '(simple-mpc-main-name ((t (:weight bold)))) 262 | '(term-color-black ((t (:background "black" :foreground "black")))) 263 | '(term-color-cyan ((t (:background "cyan" :foreground "cyan")))) 264 | '(term-color-green ((t (:background "green" :foreground "green")))) 265 | '(term-color-red ((t (:background "red" :foreground "red")))) 266 | '(term-color-yellow ((t (:background "yellow" :foreground "yellow")))) 267 | '(woman-bold ((t (:inherit bold :foreground "nil")))) 268 | '(woman-italic ((t (:inherit italic :foreground "nil")))) 269 | '(woman-unknown ((t (:weight bold))))) 270 | -------------------------------------------------------------------------------- /.config/emacs/org-themes/simple_inline.theme: -------------------------------------------------------------------------------- 1 | # Turn off default internal styles 2 | #+OPTIONS: html-style:nil html5-fancy:t 3 | 4 | # Exporting to HTML5 5 | #+HTML_DOCTYPE: html5 6 | #+HTML_HEAD: 7 | #+HTML_HEAD: 8 | 9 | 10 | #+HTML_HEAD: -------------------------------------------------------------------------------- /.config/emacs/pics/nz4qLQq3_400x400.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prettykool/dots/eb1ae89577580a8e14b961850db4598bcd2dfe5d/.config/emacs/pics/nz4qLQq3_400x400.jpg -------------------------------------------------------------------------------- /.config/eww/eww.scss: -------------------------------------------------------------------------------- 1 | * { 2 | all: unset; //Unsets everything so you can style everything from scratch 3 | } 4 | 5 | $background: #FBF1C7; 6 | $foreground: #282828; 7 | $gray: #ebddb2; 8 | 9 | //Global Styles 10 | .bar { 11 | background-color: $background; 12 | color: $foreground; 13 | border-radius: 15px; 14 | font-family: Cascadia Mono; 15 | border: 3px solid $foreground; 16 | padding: 5px; 17 | } 18 | 19 | .workspaces { 20 | padding-left: 20px 21 | } 22 | 23 | .sidestuff { 24 | padding-right: 20px 25 | } 26 | 27 | // Styles on classes (see eww.yuck for more information) 28 | 29 | .sidestuff slider { 30 | all: unset; 31 | color: #ffd5cd; 32 | } 33 | 34 | .metric scale trough highlight { 35 | all: unset; 36 | background-color: #D35D6E; 37 | color: #000000; 38 | border-radius: 10px; 39 | } 40 | .metric scale trough { 41 | all: unset; 42 | background-color: #6f6f6f; 43 | border-radius: 50px; 44 | min-height: 3px; 45 | min-width: 50px; 46 | margin-left: 10px; 47 | margin-right: 20px; 48 | } 49 | .metric scale trough highlight { 50 | all: unset; 51 | background-color: #000000; 52 | color: $gray; 53 | border-radius: 10px; 54 | } 55 | .metric scale trough { 56 | all: unset; 57 | background-color: #6f6f6f; 58 | border-radius: 50px; 59 | min-height: 3px; 60 | min-width: 50px; 61 | margin-left: 10px; 62 | margin-right: 20px; 63 | } 64 | .label-ram { 65 | font-size: large; 66 | } 67 | 68 | .workspaces button { 69 | padding-left: 3px; 70 | padding-right: 3px; 71 | } 72 | 73 | .workspaces button:hover { 74 | color: $background; 75 | background-color: #000000; 76 | } 77 | 78 | tooltip.background { 79 | background-color: $background; 80 | font-size: 18; 81 | color: #000000; 82 | border-radius: 9px; 83 | font-family: Cascadia Mono; 84 | border: 3px solid $foreground; 85 | } 86 | 87 | tooltip label { 88 | margin: 2px; 89 | } 90 | -------------------------------------------------------------------------------- /.config/eww/eww.yuck: -------------------------------------------------------------------------------- 1 | (defwidget bar [] 2 | (centerbox :orientation "h" 3 | (workspaces) 4 | (music) 5 | (sidestuff))) 6 | 7 | (defpoll window :interval "0.5s" :initial "Unknown" 8 | `bash ~/.config/eww/scripts/currentwindow`) 9 | 10 | (defpoll no :interval "0.1s" :initial "Unknown" 11 | `bash ~/.config/eww/scripts/workspaceno`) 12 | 13 | (defpoll connection :interval "1s" :initial "Not connected" 14 | 'bash ~/.config/eww/scripts/getconn') 15 | 16 | (defwidget sidestuff [] 17 | (box :class "sidestuff" :orientation "h" :space-evenly false :halign "end" 18 | "${connection} ${weather} " 19 | (metric :label "🔊" 20 | :value volume 21 | :onchange "amixer sset Master {}%" 22 | :tooltip volume) 23 | (metric :label "🔋" 24 | :value {EWW_BATTERY.BAT0.capacity} 25 | :onchange "" 26 | :tooltip {EWW_BATTERY.BAT0.capacity}) 27 | (metric :label "🧠" 28 | :value {EWW_RAM.used_mem_perc} 29 | :onchange "" 30 | :tooltip {EWW_RAM.used_mem_perc}) 31 | time)) 32 | 33 | (defpoll weather :interval "10s" 34 | "curl wttr.in/?format='%c+%t' | sed 's/\ \ \ / /'") 35 | 36 | (defwidget workspaces [] 37 | (box :class "workspaces" 38 | :orientation "h" 39 | :space-evenly true 40 | :halign "start" 41 | :spacing 10 42 | "${no}: ${window}" 43 | )) 44 | 45 | (defwidget music [] 46 | (box :class "music" 47 | :orientation "h" 48 | :space-evenly false 49 | :halign "center" 50 | {music != "" ? "🎵${music}" : ""})) 51 | 52 | (deflisten music :initial "" "") 53 | 54 | (defwidget metric [label value onchange tooltip] 55 | (box :orientation "h" 56 | :class "metric" 57 | :space-evenly false 58 | (box :class "label" label) 59 | (scale :min 0 60 | :max 101 61 | :active {onchange != ""} 62 | :value value 63 | :onchange onchange 64 | :tooltip tooltip))) 65 | 66 | 67 | (defpoll volume :interval "1s" 68 | `amixer | grep 'Left:' | awk -F'[][]' '{ print $2 }' | tr -d '%' | head -1`) 69 | 70 | (defpoll time :interval "5s" 71 | "date '+%a %b %d %H:%M'") 72 | 73 | (defwindow bar 74 | :monitor 0 75 | :windowtype "dock" 76 | :geometry (geometry 77 | :y "20px" 78 | :width "98%" 79 | :height "40px" 80 | :anchor "top center" 81 | ) 82 | :exclusive true 83 | :stacking "fg" 84 | (bar)) 85 | -------------------------------------------------------------------------------- /.config/eww/scripts/currentwindow: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | hyprctl activewindow | perl -ne 'm/title: (.*)/ && print "$1\n"' | cut -c 1-95 3 | -------------------------------------------------------------------------------- /.config/eww/scripts/getconn: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | nmcli device wifi list | grep "^*" | awk '{ print $3 " " $9}' 3 | -------------------------------------------------------------------------------- /.config/eww/scripts/workspaceno: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | TOTAL=$(hyprctl workspaces | grep workspace | sort -n -k 3n | wc -l) 3 | CURRENT=$(hyprctl activewindow | perl -ne 'm/workspace: (.*) \(.*\)/ && print "$1\n"') 4 | 5 | echo "$CURRENT/10" 6 | -------------------------------------------------------------------------------- /.config/fastfetch/config.jsonc: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json", 3 | "logo": "suse_small", 4 | "modules": [ 5 | "title", 6 | "separator", 7 | "os", 8 | "shell", 9 | "de", 10 | "wm", 11 | "wmtheme", 12 | "terminal", 13 | "terminalfont", 14 | ] 15 | } 16 | -------------------------------------------------------------------------------- /.config/foot/foot.ini: -------------------------------------------------------------------------------- 1 | # -*- conf -*- 2 | 3 | # shell=$SHELL (if set, otherwise user's default shell from /etc/passwd) 4 | term=foot #(or xterm-256color if built with -Dterminfo=disabled) 5 | # login-shell=no 6 | 7 | app-id=foot 8 | title=foot 9 | locked-title=no 10 | pad=10x10 11 | font=Cascadia Code:size=12.5 12 | # font=Ac437 IBM VGA 8x16:size=14.5 13 | dpi-aware=no 14 | 15 | [bell] 16 | 17 | [scrollback] 18 | lines=10000 19 | # multiplier=3.0 20 | indicator-position= none 21 | 22 | [url] 23 | # launch=xdg-open ${url} 24 | # label-letters=sadfjklewcmpgh 25 | # osc8-underline=url-mode 26 | # protocols=http, https, ftp, ftps, file, gemini, gopher 27 | # uri-characters=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.,~:;/?#@!$&%*+="' 28 | 29 | [cursor] 30 | # style=block 31 | # color=111111 dcdccc 32 | blink=yes 33 | beam-thickness=6px 34 | # underline-thickness= 35 | 36 | [mouse] 37 | # hide-when-typing=no 38 | # alternate-scroll-mode=yes 39 | 40 | [colors] 41 | background=fbf1c7 42 | foreground=3c3836 43 | regular0=fbf1c7 44 | regular1=cc241d 45 | regular2=98971a 46 | regular3=d79921 47 | regular4=458588 48 | regular5=b16286 49 | regular6=689d6a 50 | regular7=7c6f64 51 | bright0=928374 52 | bright1=9d0006 53 | bright2=79740e 54 | bright3=b57614 55 | bright4=076678 56 | bright5=8f3f71 57 | bright6=427b58 58 | bright7=3c3836 59 | # # selection-foreground=282c34 60 | # # selection-background=979eab 61 | 62 | ## dimmed colors (see foot.ini(5) man page) 63 | # dim0= 64 | # ... 65 | # dim7= 66 | 67 | ## The remaining 256-color palette 68 | # 16 = <256-color palette #16> 69 | # ... 70 | # 255 = <256-color palette #255> 71 | 72 | ## Misc colors 73 | # selection-foreground= 74 | # selection-background= 75 | # jump-labels= 76 | # urls= 77 | # scrollback-indicator= 78 | 79 | [csd] 80 | # preferred=server 81 | # size=26 82 | # font= 83 | # color= 84 | # border-width=0 85 | # border-color= 86 | # button-width=26 87 | # button-color= 88 | # button-minimize-color= 89 | # button-maximize-color= 90 | # button-close-color= 91 | 92 | [key-bindings] 93 | # scrollback-up-page=Shift+Page_Up 94 | # scrollback-up-half-page=none 95 | # scrollback-up-line=none 96 | # scrollback-down-page=Shift+Page_Down 97 | # scrollback-down-half-page=none 98 | # scrollback-down-line=none 99 | # clipboard-copy=Control+Shift+c 100 | # clipboard-paste=Control+Shift+v 101 | # primary-paste=Shift+Insert 102 | # search-start=Control+Shift+r 103 | # font-increase=Control+plus Control+equal Control+KP_Add 104 | # font-decrease=Control+minus Control+KP_Subtract 105 | # font-reset=Control+0 Control+KP_0 106 | # spawn-terminal=Control+Shift+n 107 | # minimize=none 108 | # maximize=none 109 | # fullscreen=none 110 | # pipe-visible=[sh -c "xurls | fuzzel | xargs -r firefox"] none 111 | # pipe-scrollback=[sh -c "xurls | fuzzel | xargs -r firefox"] none 112 | # pipe-selected=[xargs -r firefox] none 113 | # show-urls-launch=Control+Shift+u 114 | # show-urls-copy=none 115 | # noop=none 116 | 117 | [search-bindings] 118 | # cancel=Control+g Control+c Escape 119 | # commit=Return 120 | # find-prev=Control+r 121 | # find-next=Control+s 122 | # cursor-left=Left Control+b 123 | # cursor-left-word=Control+Left Mod1+b 124 | # cursor-right=Right Control+f 125 | # cursor-right-word=Control+Right Mod1+f 126 | # cursor-home=Home Control+a 127 | # cursor-end=End Control+e 128 | # delete-prev=BackSpace 129 | # delete-prev-word=Mod1+BackSpace Control+BackSpace 130 | # delete-next=Delete 131 | # delete-next-word=Mod1+d Control+Delete 132 | # extend-to-word-boundary=Control+w 133 | # extend-to-next-whitespace=Control+Shift+w 134 | # clipboard-paste=Control+v Control+y 135 | # primary-paste=Shift+Insert 136 | 137 | [url-bindings] 138 | # cancel=Control+g Control+c Control+d Escape 139 | # toggle-url-visible=t 140 | 141 | [mouse-bindings] 142 | # primary-paste=BTN_MIDDLE 143 | # select-begin=BTN_LEFT 144 | # select-begin-block=Control+BTN_LEFT 145 | # select-extend=BTN_RIGHT 146 | # select-extend-character-wise=Control+BTN_RIGHT 147 | # select-word=BTN_LEFT-2 148 | # select-word-whitespace=Control+BTN_LEFT-2 149 | # select-row=BTN_LEFT-3 -------------------------------------------------------------------------------- /.config/fuzzel/fuzzel.ini: -------------------------------------------------------------------------------- 1 | # This is basically a carbon copy of the GruvBox light 2 | # theme that Rofi has, but for Fuzzel. 3 | terminal="foot" 4 | prompt="⬤ " 5 | font="Cascadia Code:size=9" 6 | dpi-aware=no 7 | font="Cascadia Code:weight=light:size=12" 8 | width=65 9 | layer="overlay" 10 | 11 | [colors] 12 | background="FBF1C7FF" 13 | text="282828FF" 14 | selection="#d9cc90FF" 15 | selection-text="282828FF" 16 | match="e06c75FF" 17 | 18 | [border] 19 | width=3 20 | -------------------------------------------------------------------------------- /.config/hypr/comix.conf: -------------------------------------------------------------------------------- 1 | misc { 2 | disable_hyprland_logo = true 3 | disable_splash_rendering = true 4 | } 5 | 6 | general { 7 | gaps_in = 30 # 30 8 | gaps_out = 35 # 30 9 | border_size = 3 10 | col.active_border = rgba(000000FF) 11 | col.inactive_border = rgba(000000FF) 12 | layout = dwindle 13 | } 14 | 15 | decoration { 16 | rounding=10 17 | 18 | active_opacity = 1 19 | inactive_opacity = 1 20 | 21 | shadow { 22 | enabled = true 23 | range= 1 24 | offset = 10.5 10.5 # 10 10 25 | render_power = 1 26 | color = rgba(000000FF) 27 | } 28 | } 29 | 30 | animations { 31 | enabled = yes 32 | 33 | bezier = myBezier, 0.05, 0.9, 0.1, 1.05 34 | bezier = easier, 0.34, 1.56, 0.64, 1 35 | bezier = easiunt, 0.36, 0, 0.2, -0.56 36 | 37 | animation = windows, 1, 3.5, easier 38 | animation = windowsOut, 1, 7, default, popin 39 | animation = border, 1, 10, default 40 | animation = fade, 1, 7, default 41 | animation = workspaces, 1, 4, myBezier # easier 42 | } 43 | 44 | windowrulev2=bordercolor rgb(FF0000),pinned:1 -------------------------------------------------------------------------------- /.config/hypr/hypr-space.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prettykool/dots/eb1ae89577580a8e14b961850db4598bcd2dfe5d/.config/hypr/hypr-space.png -------------------------------------------------------------------------------- /.config/hypr/hypridle.conf: -------------------------------------------------------------------------------- 1 | general { 2 | lock_cmd = notify-send "lock!" # dbus/sysd lock command (loginctl lock-session) 3 | unlock_cmd = notify-send "unlock!" # same as above, but unlock 4 | before_sleep_cmd = notify-send "Zzz" # command ran before sleep 5 | after_sleep_cmd = notify-send "Awake!" # command ran after sleep 6 | ignore_dbus_inhibit = false # whether to ignore dbus-sent idle-inhibit requests (used by e.g. firefox or steam) 7 | ignore_systemd_inhibit = false # whether to ignore systemd-inhibit --what=idle inhibitors 8 | } 9 | 10 | listener { 11 | timeout = 120 # in seconds 12 | on-timeout = notify-send "You are idle!" # command to run when timeout has passed 13 | on-resume = notify-send "Welcome back!" # command to run when activity is detected after timeout has fired. 14 | } -------------------------------------------------------------------------------- /.config/hypr/hyprland.conf: -------------------------------------------------------------------------------- 1 | $menu = fuzzel # dmenu_path | wmenu -l 10 | xargs hyprctl dispatch exec 2 | $term = foot 3 | 4 | # See https://wiki.hyprland.org/Configuring/Monitors/ 5 | monitor=,preferred,auto,1 6 | 7 | source = ~/.config/hypr/monitors.conf 8 | 9 | $gnome-schema=org.gnome.desktop.interface 10 | 11 | exec-once=gsettings set $gnome-schema gtk-theme oomox-Gruvish 12 | 13 | exec-once = sh ~/.config/hypr/scripts/init.sh 14 | exec-once = waybar 15 | exec-once = swww-daemon 16 | exec-once = emacs --daemon 17 | exec-once = xprop -root -f _XWAYLAND_GLOBAL_OUTPUT_SCALE 32c -set _XWAYLAND_GLOBAL_OUTPUT_SCALE 1 18 | 19 | env = HYPRCURSOR_THEME,rose-pine-hyprcursor 20 | 21 | source = ~/.config/hypr/comix.conf 22 | 23 | input { 24 | kb_layout = us 25 | kb_variant = 26 | kb_model = 27 | kb_options = 28 | kb_rules = 29 | 30 | follow_mouse = 1 31 | 32 | touchpad { 33 | natural_scroll = no 34 | } 35 | 36 | sensitivity = 0 # -1.0 - 1.0, 0 means no modification. 37 | } 38 | 39 | dwindle { 40 | # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more 41 | pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below 42 | preserve_split = yes # you probably want this 43 | } 44 | 45 | master { 46 | # this section deliberately left blank. 47 | } 48 | 49 | decoration { 50 | rounding=10 51 | 52 | active_opacity = 1 53 | inactive_opacity = 1 54 | 55 | # drop_shadow = true 56 | # shadow_range= 1 57 | # shadow_offset = 10.5 10.5 # 10 10 58 | # shadow_render_power = 1 59 | 60 | # col.shadow = rgba(000000FF) 61 | } 62 | 63 | gestures { 64 | # See https://wiki.hyprland.org/Configuring/Variables/ for more 65 | workspace_swipe = on 66 | } 67 | 68 | # Example per-device config 69 | # See https://wiki.hyprland.org/Configuring/Keywords/#executing for more 70 | # device:epic mouse V1 { 71 | # sensitivity = -0.5 72 | # } 73 | 74 | $mainMod = SUPER 75 | 76 | #* Launch Applications 77 | bind = $mainMod, Return, exec, $term #: Terminal 78 | bind = SUPER_SHIFT, F, exec, thunar #: Thunar 79 | bind = $mainMod, X, exec, $menu #: Menu 80 | bind = SUPER_SHIFT, P, exec, pass-fuzzel #: Password Manager 81 | bind = $mainMod, M, exec, emacsclient --create-frame #: Emacs client 82 | bind = SUPER_SHIFT, M, exec, emacs #: Emacs 83 | bind = $mainMod, C, exec, chromium #: Chromium 84 | bind = $mainMod, L, exec, swaylock -c 000000 --font-size 0 --indicator-caps-lock --indicator-thickness 50 --indicator-radius 100 #: Lock 85 | bind = SUPER_SHIFT, o, exec, bash ~/.config/hypr/scripts/open.sh #: Find destination 86 | #\* 87 | 88 | #* Window Manipulation 89 | bind = $mainMod,F,fullscreen 90 | bind = $mainMod, K, killactive, 91 | bind = SUPER_SHIFT, E, exit, 92 | bind = SUPER_SHIFT, Space, togglefloating, 93 | bind = $mainMod, P, pseudo, # dwindle 94 | bind = $mainMod, J, togglesplit, # dwindle 95 | bind = $mainMod, s, pin, 96 | 97 | #* Move focus with mainMod + arrow keys 98 | bind = $mainMod, left, movefocus, l 99 | bind = $mainMod, right, movefocus, r 100 | bind = $mainMod, up, movefocus, u 101 | bind = $mainMod, down, movefocus, d 102 | 103 | bind = $mainMod, 1, workspace, 1 104 | bind = $mainMod, 2, workspace, 2 105 | bind = $mainMod, 3, workspace, 3 106 | bind = $mainMod, 4, workspace, 4 107 | bind = $mainMod, 5, workspace, 5 108 | bind = $mainMod, 6, workspace, 6 109 | bind = $mainMod, 7, workspace, 7 110 | bind = $mainMod, 8, workspace, 8 111 | bind = $mainMod, 9, workspace, 9 112 | bind = $mainMod, 0, workspace, 10 113 | # bind = $mainMod, *, workspace, 11 114 | 115 | # Move active window to a workspace with mainMod + SHIFT + [0-9] 116 | bind = $mainMod SHIFT, 1, movetoworkspace, 1 117 | bind = $mainMod SHIFT, 2, movetoworkspace, 2 118 | bind = $mainMod SHIFT, 3, movetoworkspace, 3 119 | bind = $mainMod SHIFT, 4, movetoworkspace, 4 120 | bind = $mainMod SHIFT, 5, movetoworkspace, 5 121 | bind = $mainMod SHIFT, 6, movetoworkspace, 6 122 | bind = $mainMod SHIFT, 7, movetoworkspace, 7 123 | bind = $mainMod SHIFT, 8, movetoworkspace, 8 124 | bind = $mainMod SHIFT, 9, movetoworkspace, 9 125 | bind = $mainMod SHIFT, 0, movetoworkspace, 10 126 | # bind = $mainMod, -, movetoworkspace, 11 127 | 128 | # Misc 129 | bind = ,XF86AudioRaiseVolume,exec,amixer sset Master 5%+ 130 | bind = ,XF86AudioLowerVolume,exec,amixer sset Master 5%- 131 | bind = ,XF86AudioMute,exec,amixer sset Master 0% 132 | bind = ,Print,exec,grim -g "$(slurp -d)" - | wl-copy && notify-send "Screenshot Saved" 133 | bind = SHIFT,Print,exec,grim && notify-send "Screenshot Saved" 134 | bind = ,XF86MonBrightnessDown,exec,brightnessctl set "5%-" 135 | bind = ,XF86MonBrightnessUp,exec,brightnessctl set "+5%" 136 | 137 | 138 | # Scroll through existing workspaces with mainMod + scroll 139 | bind = $mainMod, mouse_down, workspace, e+1 140 | bind = $mainMod, mouse_up, workspace, e-1 141 | 142 | # Move/resize windows with mainMod + LMB/RMB and dragging 143 | bindm = $mainMod, mouse:272, movewindow 144 | bindm = $mainMod, mouse:273, resizewindow 145 | 146 | # Some rules 147 | windowrulev2 = float,title:(mpv), 148 | windowrulev2 = float,title:(imv), 149 | -------------------------------------------------------------------------------- /.config/hypr/hyprlock.conf: -------------------------------------------------------------------------------- 1 | background { 2 | monitor = 3 | color = rgba(FBF1C7FF) 4 | 5 | # all these options are taken from hyprland, see https://wiki.hyprland.org/Configuring/Variables/#blur for explanations 6 | blur_passes = 0 # 0 disables blurring 7 | blur_size = 7 8 | noise = 0.0117 9 | contrast = 0.8916 10 | brightness = 0.8172 11 | vibrancy = 0.1696 12 | vibrancy_darkness = 0.0 13 | } 14 | 15 | image { 16 | monitor = 17 | path = /home/pk/Pictures/SPOILER_Veronica_Dress_up_summer_v3.png 18 | size = 250 # lesser side if not 1:1 ratio 19 | rounding = 10 # negative values mean circle 20 | border_size = 3 21 | border_color = rgba(000000FF) 22 | reload_time = -1 # seconds between reloading, 0 to reload with SIGUSR2 23 | reload_cmd = # command to get new path. if empty, old path will be used. don't run "follow" commands like tail -F 24 | 25 | position = 0, 20 26 | halign = center 27 | valign = center 28 | } 29 | 30 | input-field { 31 | monitor = 32 | size = 200, 50 33 | outline_thickness = 3 34 | dots_size = 0.33 # Scale of input-field height, 0.2 - 0.8 35 | dots_spacing = 0.15 # Scale of dots' absolute size, 0.0 - 1.0 36 | dots_center = false 37 | dots_rounding = -1 # -1 default circle, -2 follow input-field rounding 38 | outer_color = rgb(151515) 39 | inner_color = rgb(200, 200, 200) 40 | font_color = rgb(10, 10, 10) 41 | fade_on_empty = true 42 | fade_timeout = 1000 # Milliseconds before fade_on_empty is triggered. 43 | placeholder_text = Input Password... # Text rendered in the input box when it's empty. 44 | hide_input = false 45 | rounding = 10 # -1 means complete rounding (circle/oval) 46 | check_color = rgb(204, 136, 34) 47 | fail_color = rgb(204, 34, 34) # if authentication failed, changes outer_color and fail message color 48 | fail_text = $FAIL ($ATTEMPTS) # can be set to empty 49 | fail_transition = 300 # transition time in ms between normal outer_color and fail_color 50 | capslock_color = -1 51 | numlock_color = -1 52 | bothlock_color = -1 # when both locks are active. -1 means don't change outer color (same for above) 53 | invert_numlock = false # change color if numlock is off 54 | 55 | shadow_passes = 0 56 | shadow_size = 3 57 | 58 | position = 0, -200 59 | halign = center 60 | valign = center 61 | } -------------------------------------------------------------------------------- /.config/hypr/monitors.conf: -------------------------------------------------------------------------------- 1 | # Generated by nwg-displays on 2024-12-26 at 21:07:40. Do not edit manually. 2 | 3 | monitor=eDP-1,1920x1080@60.0,3668x1630,1.0 4 | monitor=HDMI-A-1,1920x1080@60.0,3668x550,1.0 5 | -------------------------------------------------------------------------------- /.config/hypr/scripts/init.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # Used to activate some daemons, and get everything else set up, basically. 4 | swww init 5 | foot --server 6 | -------------------------------------------------------------------------------- /.config/hypr/scripts/open.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | DEST="$(find "/home/pk/" "/mnt" -maxdepth 4 -type d -not -path '*/.*' | fuzzel -dp "Enter Destination: " --log-level=none ‐-lines=1)" 3 | if [ ${#DEST} -ge 1 ]; then 4 | # emacsclient --create-frame "$DEST" 5 | thunar "$DEST" 6 | fi 7 | -------------------------------------------------------------------------------- /.config/hypr/space.conf: -------------------------------------------------------------------------------- 1 | misc { 2 | disable_hyprland_logo = true 3 | disable_splash_rendering = true 4 | } 5 | 6 | general { 7 | gaps_in = 30 # 30 8 | gaps_out = 35 # 30 9 | border_size = 6 10 | col.active_border = rgba(000000FF) 11 | col.inactive_border = rgba(000000FF) 12 | layout = dwindle 13 | } 14 | 15 | decoration { 16 | rounding = 10 17 | 18 | active_opacity = 1 19 | inactive_opacity = 1 20 | 21 | drop_shadow = true 22 | shadow_range= 1 23 | shadow_offset = -10 -10 # 10 10 24 | shadow_render_power = 1 25 | col.shadow = rgba(000000FF) 26 | } 27 | 28 | animations { 29 | enabled = yes 30 | 31 | bezier = myBezier, 0.05, 0.9, 0.1, 1.05 32 | bezier = easier, 0.34, 1.56, 0.64, 1 33 | bezier = easiunt, 0.36, 0, 0.2, -0.56 34 | 35 | animation = windows, 1, 3.5, easier 36 | animation = windowsOut, 1, 7, default, popin 37 | animation = border, 1, 10, default 38 | animation = fade, 1, 7, default 39 | animation = workspaces, 1, 4, myBezier # easier 40 | } 41 | -------------------------------------------------------------------------------- /.config/hypr/sway.conf: -------------------------------------------------------------------------------- 1 | misc { 2 | disable_hyprland_logo = true 3 | disable_splash_rendering = true 4 | } 5 | 6 | general { 7 | gaps_in = 5 # 30 8 | gaps_out = 10 # 30 9 | border_size = 2 10 | col.active_border = rgba(285577FF) 11 | col.inactive_border = rgba(323232FF) 12 | layout = dwindle 13 | } 14 | 15 | decoration { 16 | blur = false 17 | drop_shadow = false 18 | } 19 | 20 | animations { 21 | enabled = false 22 | } 23 | -------------------------------------------------------------------------------- /.config/hypr/workspaces.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prettykool/dots/eb1ae89577580a8e14b961850db4598bcd2dfe5d/.config/hypr/workspaces.conf -------------------------------------------------------------------------------- /.config/lf/colors: -------------------------------------------------------------------------------- 1 | # vim:ft=dircolors 2 | # (This is not a dircolors file but it helps to highlight colors and comments) 3 | 4 | # default values from dircolors 5 | # (entries with a leading # are not implemented in lf) 6 | # #no 00 # NORMAL 7 | # fi 00 # FILE 8 | # #rs 0 # RESET 9 | # di 01;34 # DIR 10 | # ln 01;36 # LINK 11 | # #mh 00 # MULTIHARDLINK 12 | # pi 40;33 # FIFO 13 | # so 01;35 # SOCK 14 | # #do 01;35 # DOOR 15 | # bd 40;33;01 # BLK 16 | # cd 40;33;01 # CHR 17 | # or 40;31;01 # ORPHAN 18 | # #mi 00 # MISSING 19 | # su 37;41 # SETUID 20 | # sg 30;43 # SETGID 21 | # #ca 30;41 # CAPABILITY 22 | # tw 30;42 # STICKY_OTHER_WRITABLE 23 | # ow 34;42 # OTHER_WRITABLE 24 | # st 37;44 # STICKY 25 | # ex 01;32 # EXEC 26 | 27 | # default values from lf (with matching order) 28 | # ln 01;36 # LINK 29 | # or 31;01 # ORPHAN 30 | # tw 01;34 # STICKY_OTHER_WRITABLE 31 | # ow 01;34 # OTHER_WRITABLE 32 | # st 01;34 # STICKY 33 | # di 01;34 # DIR 34 | # pi 33 # FIFO 35 | # so 01;35 # SOCK 36 | # bd 33;01 # BLK 37 | # cd 33;01 # CHR 38 | # su 01;32 # SETUID 39 | # sg 01;32 # SETGID 40 | # ex 01;32 # EXEC 41 | # fi 00 # FILE 42 | 43 | # file types (with matching order) 44 | ln 00 # LINK 45 | or 00 # ORPHAN 46 | tw 00 # STICKY_OTHER_WRITABLE 47 | ow 00 # OTHER_WRITABLE 48 | st 00 # STICKY 49 | di 00 # DIR 50 | pi 00 # FIFO 51 | so 00 # SOCK 52 | bd 00 # BLK 53 | cd 00 # CHR 54 | su 00 # SETUID 55 | sg 00 # SETGID 56 | ex 00 # EXEC 57 | fi 00 # FILE -------------------------------------------------------------------------------- /.config/lf/icons: -------------------------------------------------------------------------------- 1 | # vim:ft=conf 2 | 3 | # These examples require Nerd Fonts or a compatible font to be used. 4 | # See https://www.nerdfonts.com for more information. 5 | 6 | # default values from lf (with matching order) 7 | # ln l # LINK 8 | # or l # ORPHAN 9 | # tw t # STICKY_OTHER_WRITABLE 10 | # ow d # OTHER_WRITABLE 11 | # st t # STICKY 12 | # di d # DIR 13 | # pi p # FIFO 14 | # so s # SOCK 15 | # bd b # BLK 16 | # cd c # CHR 17 | # su u # SETUID 18 | # sg g # SETGID 19 | # ex x # EXEC 20 | # fi - # FILE 21 | 22 | # file types (with matching order) 23 | # ln  # LINK 24 | # or  # ORPHAN 25 | # tw t # STICKY_OTHER_WRITABLE 26 | # ow  # OTHER_WRITABLE 27 | # st t # STICKY 28 | # di  # DIR 29 | # pi p # FIFO 30 | # so s # SOCK 31 | # bd b # BLK 32 | # cd c # CHR 33 | # su u # SETUID 34 | # sg g # SETGID 35 | # ex  # EXEC 36 | # fi  # FILE 37 | 38 | di  39 | fi  40 | tw ? 41 | ow  42 | ln ⛓ 43 | or X 44 | ex $ 45 | 46 | 47 | # file extensions (vim-devicons) 48 | *.styl  49 | *.sass  50 | *.scss  51 | *.htm  52 | *.html  53 | *.slim  54 | *.haml  55 | *.ejs  56 | *.css  57 | *.less  58 | *.md  59 | *.mdx  60 | *.markdown  61 | *.rmd  62 | *.json  63 | *.webmanifest  64 | *.js  65 | *.mjs  66 | *.jsx  67 | *.rb  68 | *.gemspec  69 | *.rake  70 | *.php  71 | *.py  72 | *.pyc  73 | *.pyo  74 | *.pyd  75 | *.coffee  76 | *.mustache  77 | *.hbs  78 | *.conf  79 | *.ini  80 | *.yml  81 | *.yaml  82 | *.toml  83 | *.bat  84 | *.mk  85 | *.jpg  86 | *.jpeg  87 | *.bmp  88 | *.png  89 | *.webp  90 | *.gif  91 | *.ico  92 | *.twig  93 | *.cpp  94 | *.c++  95 | *.cxx  96 | *.cc  97 | *.cp  98 | *.c  99 | *.cs  100 | *.h  101 | *.hh  102 | *.hpp  103 | *.hxx  104 | *.hs  105 | *.lhs  106 | *.nix  107 | *.lua  108 | *.java  109 | *.sh  110 | *.fish  111 | *.bash  112 | *.zsh  113 | *.ksh  114 | *.csh  115 | *.awk  116 | *.ps1  117 | *.ml  118 | *.mli  119 | *.diff  120 | *.db  121 | *.sql  122 | *.dump  123 | *.clj  124 | *.cljc  125 | *.cljs  126 | *.edn  127 | *.scala  128 | *.go  129 | *.dart  130 | *.xul  131 | *.sln  132 | *.suo  133 | *.pl  134 | *.pm  135 | *.t  136 | *.rss  137 | '*.f#'  138 | *.fsscript  139 | *.fsx  140 | *.fs  141 | *.fsi  142 | *.rs  143 | *.rlib  144 | *.d  145 | *.erl  146 | *.hrl  147 | *.ex  148 | *.exs  149 | *.eex  150 | *.leex  151 | *.heex  152 | *.vim  153 | *.ai  154 | *.psd  155 | *.psb  156 | *.ts  157 | *.tsx  158 | *.jl  159 | *.pp  160 | *.vue  161 | *.elm  162 | *.swift  163 | *.xcplayground  164 | *.tex  165 | *.r  166 | *.rproj  167 | *.sol  168 | *.pem  169 | 170 | # archives or compressed (extensions from dircolors defaults) 171 | *.tar  172 | *.tgz  173 | *.arc  174 | *.arj  175 | *.taz  176 | *.lha  177 | *.lz4  178 | *.lzh  179 | *.lzma  180 | *.tlz  181 | *.txz  182 | *.tzo  183 | *.t7z  184 | *.zip  185 | *.z  186 | *.dz  187 | *.gz  188 | *.lrz  189 | *.lz  190 | *.lzo  191 | *.xz  192 | *.zst  193 | *.tzst  194 | *.bz2  195 | *.bz  196 | *.tbz  197 | *.tbz2  198 | *.tz  199 | *.deb  200 | *.rpm  201 | *.jar  202 | *.war  203 | *.ear  204 | *.sar  205 | *.rar  206 | *.alz  207 | *.ace  208 | *.zoo  209 | *.cpio  210 | *.7z  211 | *.rz  212 | *.cab  213 | *.wim  214 | *.swm  215 | *.dwm  216 | *.esd  217 | 218 | # image formats (extensions from dircolors defaults) 219 | *.jpg  220 | *.jpeg  221 | *.mjpg  222 | *.mjpeg  223 | *.gif  224 | *.bmp  225 | *.pbm  226 | *.pgm  227 | *.ppm  228 | *.tga  229 | *.xbm  230 | *.xpm  231 | *.tif  232 | *.tiff  233 | *.png  234 | *.svg  235 | *.svgz  236 | *.mng  237 | *.pcx  238 | *.mov  239 | *.mpg  240 | *.mpeg  241 | *.m2v  242 | *.mkv  243 | *.webm  244 | *.ogm  245 | *.mp4  246 | *.m4v  247 | *.mp4v  248 | *.vob  249 | *.qt  250 | *.nuv  251 | *.wmv  252 | *.asf  253 | *.rm  254 | *.rmvb  255 | *.flc  256 | *.avi  257 | *.fli  258 | *.flv  259 | *.gl  260 | *.dl  261 | *.xcf  262 | *.xwd  263 | *.yuv  264 | *.cgm  265 | *.emf  266 | *.ogv  267 | *.ogx  268 | 269 | # audio formats (extensions from dircolors defaults) 270 | *.aac  271 | *.au  272 | *.flac  273 | *.m4a  274 | *.mid  275 | *.midi  276 | *.mka  277 | *.mp3  278 | *.mpc  279 | *.ogg  280 | *.ra  281 | *.wav  282 | *.oga  283 | *.opus  284 | *.spx  285 | *.xspf  286 | 287 | # other formats 288 | *.pdf  289 | -------------------------------------------------------------------------------- /.config/lf/lf_sixel: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | preview() { 3 | chafa "$@" -f sixel -s "$(($2-2))x$3" | sed 's/#/\n#/g' 4 | } 5 | 6 | thumbnail="/tmp/thumbnail.png" 7 | 8 | file="$1"; shift 9 | case "$file" in 10 | *.tar*) tar tf "$file" ;; 11 | *.zip) unzip -l "$file" ;; 12 | *.rar) unrar l "$file" ;; 13 | *.7z) 7z l "$file" ;; 14 | *.avi|*.gif|*.mp4|*.mkv|*.webm) 15 | cp /usr/share/icons/HighContrast/256x256/categories/applications-multimedia.png "$thumbnail" 16 | ffmpegthumbnailer -i "$file" -s 0 -q 5 -o "$thumbnail" 17 | preview "$thumbnail" "$@" 18 | ~/.config/lf/tripe.py "$f" 19 | ;; 20 | # mediainfo 21 | *.mp3|*.flac|*.opus) 22 | ffmpegthumbnailer -i "$file" -s 0 -q 5 -o "$thumbnail" 23 | preview "$thumbnail" "$@" 24 | ~/.config/lf/tripe.py "$f" 25 | ;; 26 | *.pdf) 27 | gs -o "$thumbnail" -sDEVICE=png48 -dLastPage=1 "$file" >/dev/null 28 | preview "$thumbnail" "$@" 29 | ./tripe.py "$f" 30 | ;; 31 | *.jpg|*.jpeg|*.png|*.bmp|*.webp) 32 | preview "$file" "$@" 33 | ~/.config/lf/tripe.py "$f" 34 | ;; 35 | *.svg) 36 | convert "$file" "$thumbnail" 37 | preview "$thumbnail" "$@" 38 | ;; 39 | *) cat "$file" ;; 40 | esac 41 | return 127 # nonzero retcode required for lf previews to reload 42 | -------------------------------------------------------------------------------- /.config/lf/lfrc: -------------------------------------------------------------------------------- 1 | # interpreter for shell commands 2 | set shell sh 3 | 4 | # set '-eu' options for shell commands 5 | # These options are used to have safer shell commands. Option '-e' is used to 6 | # exit on error and option '-u' is used to give error for unset variables. 7 | # Option '-f' disables pathname expansion which can be useful when $f, $fs, and 8 | # $fx variables contain names with '*' or '?' characters. However, this option 9 | # is used selectively within individual commands as it can be limiting at 10 | # times. 11 | set shellopts '-eu' 12 | set icons 13 | 14 | # set internal fiel Draftd separator (IFS) to "\n" for shell commands 15 | # This is useful to automatically split file names in $fs and $fx properly 16 | # since default file separator used in these variables (i.e. 'filesep' option) 17 | # is newline. You need to consider the values of these options and create your 18 | # commands accordingly. 19 | set ifs "\n" 20 | 21 | # leave some space at the top and the bottom of the screen 22 | set scrolloff 10 23 | 24 | # Use the `dim` attribute instead of underline for the cursor in the preview pane 25 | set cursorpreviewfmt "\033[0;7m" 26 | 27 | # use enter for shell commands 28 | map $xdg-open $f 29 | 30 | # set promptfmt "\e033[32;1m%u@%h\e033[0m:\e033[34;1m%d\e033[0m\e033[1m%f\e033[0m" 31 | set promptfmt "%d%f" 32 | set drawbox true 33 | set mouse true 34 | 35 | # show the result of execution of previous commands 36 | map ` !true 37 | 38 | # execute current file (must be executable) 39 | map x $$f 40 | map X !$f 41 | 42 | # dedicated keys for file opener actions 43 | map o &mimeopen $f 44 | map O $mimeopen --ask $f 45 | 46 | # define a custom 'open' command 47 | # This command is called when current file is not a directory. You may want to 48 | # use either file extensions and/or mime types here. Below uses an editor for 49 | # text files and a file opener for the rest. 50 | cmd open &{{ 51 | case $(file --mime-type -Lb $f) in 52 | text/*) lf -remote "send $id \$$EDITOR \$fx";; 53 | *) for f in $fx; do $OPENER $f > /dev/null 2> /dev/null & done;; 54 | esac 55 | }} 56 | 57 | # mkdir command. See wiki if you want it to select created dir 58 | map a :push %mkdir 59 | 60 | # define a custom 'rename' command without prompt for overwrite 61 | # cmd rename %[ -e $1 ] && printf "file exists" || mv $f $1 62 | # map r push :rename 63 | 64 | # make sure trash folder exists 65 | # %mkdir -p ~/.trash 66 | 67 | # move current file or selected files to trash folder 68 | # (also see 'man mv' for backup/overwrite options) 69 | cmd trash %set -f; mv $fx ~/.trash 70 | 71 | # define a custom 'delete' command 72 | cmd delete ${{ 73 | set -f 74 | printf "$fx\n" 75 | printf "delete?[y/n]" 76 | read ans 77 | [ "$ans" = "y" ] && rm -rf $fx 78 | }} 79 | 80 | # use '' key for either 'trash' or 'delete' command 81 | # map trash 82 | map x delete 83 | 84 | # extract the current file with the right command 85 | # (xkcd link: https://xkcd.com/1168/) 86 | cmd extract ${{ 87 | set -f 88 | case $f in 89 | *.tar.bz|*.tar.bz2|*.tbz|*.tbz2) tar xjvf $f;; 90 | *.tar.gz|*.tgz) tar xzvf $f;; 91 | *.tar.xz|*.txz) tar xJvf $f;; 92 | *.zip) unzip $f;; 93 | *.rar) unrar x $f;; 94 | *.7z) 7z x $f;; 95 | esac 96 | }} 97 | 98 | # compress current file or selected files with tar and gunzip 99 | cmd tar ${{ 100 | set -f 101 | mkdir $1 102 | cp -r $fx $1 103 | tar czf $1.tar.gz $1 104 | rm -rf $1 105 | }} 106 | 107 | # compress current file or selected files with zip 108 | cmd zip ${{ 109 | set -f 110 | mkdir $1 111 | cp -r $fx $1 112 | zip -r $1.zip $1 113 | rm -rf $1 114 | }} 115 | 116 | set previewer ~/.config/lf/lf_sixel 117 | 118 | map D $dragon $f 119 | map h set hidden! # Sorry Vim users -------------------------------------------------------------------------------- /.config/lf/tripe.py: -------------------------------------------------------------------------------- 1 | #!/bin/env python3 2 | 3 | # Standard library imports 4 | import os 5 | import sys 6 | import mimetypes 7 | import time 8 | import math 9 | 10 | from datetime import datetime 11 | 12 | # Third party imports 13 | import ffmpeg 14 | 15 | from PyPDF2 import PdfReader 16 | from termcolor import cprint 17 | from tinytag import TinyTag 18 | 19 | # Dirty function to output the time in a nice way 20 | def timefmt(x): 21 | internalt = time.gmtime(math.floor(x)) 22 | returnt = "" 23 | 24 | if (internalt.tm_hour > 0): 25 | if (internalt.tm_hour > 1): 26 | returnt += "%s hours " % str(internalt.tm_hour) 27 | else: 28 | returnt += "%s hour " % str(internalt.tm_hour) 29 | 30 | if (internalt.tm_hour == 1): 31 | returnt += "%s min " % str(internalt.tm_min) 32 | else: 33 | returnt += "%s mins " % str(internalt.tm_min) 34 | 35 | if (internalt.tm_sec == 1): 36 | returnt += "%s sec" % str(internalt.tm_sec) 37 | else: 38 | returnt += "%s secs" % str(internalt.tm_sec) 39 | 40 | return returnt 41 | 42 | def main(): 43 | if len(sys.argv) == 1: 44 | print ("Error: No file provided") 45 | return 1 46 | 47 | file = sys.argv[1] 48 | 49 | if not os.path.exists(file): 50 | print ("Error: File does not exist") 51 | return 2 52 | 53 | ftype = mimetypes.guess_type(file)[0] 54 | 55 | if ftype.endswith("pdf"): 56 | t = PdfReader(file) 57 | print(len(t.pages), "Pages") 58 | 59 | if ftype.startswith("audio"): 60 | tag = TinyTag.get(file) 61 | 62 | if tag.artist and tag.title and tag.year and tag.album and tag.track: 63 | print(tag.artist, "-", tag.title, "(%s)" % tag.year) 64 | print("Track", tag.track, "from", tag.album) 65 | 66 | elif tag.artist and tag.title and tag.year: 67 | print(tag.artist, "-", tag.title, "(%s)" % tag.year) 68 | 69 | else: 70 | print(os.path.basename(file)) 71 | 72 | prettyTime = timefmt(tag.duration) # Dear god 73 | 74 | print(prettyTime) 75 | 76 | if ftype.startswith("video") or ftype.startswith("image"): 77 | t = ffmpeg.probe(file) 78 | t = [s for s in t["streams"] if s["codec_type"] == "video"] 79 | t = t[0] 80 | 81 | print(os.path.basename(file)) 82 | 83 | if ftype.startswith("video"): 84 | print(timefmt(float(t["duration"]))) 85 | 86 | print("%sx%spx" % (t["width"], t["height"])) 87 | 88 | creationdate = datetime.fromtimestamp(os.path.getctime(file)) 89 | 90 | print("Created on", creationdate) 91 | return 0 92 | 93 | main() 94 | -------------------------------------------------------------------------------- /.config/mako/config: -------------------------------------------------------------------------------- 1 | background-color=#fbf1c7 2 | text-color=#000000 3 | border-color=#000000 4 | border-size=3 5 | border-radius=5 6 | default-timeout=4000 -------------------------------------------------------------------------------- /.config/mpv/mpv.conf: -------------------------------------------------------------------------------- 1 | cache=yes 2 | cache-secs=9000 3 | screenshot-template="%F%wH%wM%wS" 4 | 5 | -------------------------------------------------------------------------------- /.config/mpv/script-opts/osc.conf: -------------------------------------------------------------------------------- 1 | layout=bottombar 2 | seekbarstyle=knob 3 | deadzonesize=0 4 | minmousemove=10 5 | -------------------------------------------------------------------------------- /.config/mu4e/mu4e-config.el: -------------------------------------------------------------------------------- 1 | ;;; mu4e-config.el -- Configuration Options for mu4e -*- lexical-binding: t -*- 2 | 3 | ;;; Commentary: 4 | ;; This is a template configuration for mu4e, the basic stuff. This can be 5 | ;; called from the init.el by running 6 | ;; 7 | ;; (load-file "~/.config/mu4e/mu4e-config.el") 8 | ;; 9 | ;; My knowledge of Lisp isn't great. I have been using Emacs for a few months 10 | ;; and this is my first project including Lisp. So please bear with me. I 11 | ;; would be happy to receive PRs. 12 | 13 | ;;; Code: 14 | (require 'mu4e) 15 | 16 | (setq mu4e-get-mail-command "mbsync -a" 17 | mail-user-agent 'mu4e-user-agent 18 | message-send-mail-function 'message-send-mail-with-sendmail 19 | sendmail-program (executable-find "msmtp")) 20 | 21 | 22 | ;; Make mu4e-contexts an empty list. 23 | (setq mu4e-contexts nil) 24 | 25 | ;; Load user accounts. 26 | (dolist (file (directory-files 27 | (expand-file-name "mu4e/accounts" (or (getenv "XDG_CONFIG_HOME") "~/.config")) t "\.el$" nil)) 28 | (load file)) 29 | 30 | (provide 'mu4e-config) 31 | ;;; mu4e-config.el ends here 32 | -------------------------------------------------------------------------------- /.config/ncmpcpp/bindings: -------------------------------------------------------------------------------- 1 | def_key " " 2 | pause 3 | -------------------------------------------------------------------------------- /.config/ncmpcpp/config: -------------------------------------------------------------------------------- 1 | ## 2 | # Files 3 | mpd_music_dir = "~/Music" 4 | lyrics_directory = ~/.ncmpcpp/lyrics 5 | ncmpcpp_directory = ~/.ncmpcpp 6 | mpd_host = "localhost" 7 | mpd_port = "6600" 8 | mpd_connection_timeout = "5" 9 | mpd_crossfade_time = "5" 10 | 11 | browser_display_mode = classic 12 | visualizer_in_stereo = "yes" 13 | visualizer_output_name = "mpd" 14 | visualizer_type = "spectrum" # (spectrum/wave) 15 | visualizer_look = "██" 16 | 17 | header_visibility = no 18 | display_volume_level = yes 19 | 20 | colors_enabled = no 21 | statusbar_color = white 22 | 23 | playlist_display_mode = "classic" # (classic/columns) 24 | 25 | main_window_color = white 26 | player_state_color = red 27 | current_item_prefix = $(red)$r 28 | song_list_format = "{%a: %b: %t}|{%a: %t}|{%f} {$R %l}" 29 | 30 | now_playing_prefix = "$b$(yellow)[+] " 31 | now_playing_suffix = "$/b$(end)" 32 | 33 | selected_item_prefix = "$b>>> " 34 | selected_item_suffix = "$/b" 35 | 36 | titles_visibility = yes 37 | progressbar_look = "██ " 38 | progressbar_elapsed_color = "blue" 39 | song_status_format = "{{%a{ %b{ (%y)}} - }{%t}}|{%f}" 40 | -------------------------------------------------------------------------------- /.config/newsboat/config: -------------------------------------------------------------------------------- 1 | # Very cool color scheme 2 | color listnormal default default 3 | color listnormal_unread default default 4 | color listfocus default default reverse bold 5 | color listfocus_unread default default reverse bold 6 | color info default default reverse 7 | color background default default 8 | color article default default 9 | color end-of-text-marker default default 10 | color listnormal_unread default default bold 11 | 12 | # show-title-bar no 13 | show-keymap-hint no 14 | swap-title-and-hints yes 15 | 16 | # String formatting 17 | articlelist-title-format "(%u/%t) %T %> %N %V" 18 | articlelist-format "%?T?|%-17T| ?%t %> %D" 19 | 20 | datetime-format "%D, %R" 21 | 22 | feedlist-title-format "%u/%t%?F? matching filter '%F'&?%?T? - tag '%T'&? %> %N %V" 23 | feedlist-format "%t %> %u" 24 | 25 | itemview-title-format "'%T' %> %N %V" 26 | 27 | # Macros 28 | macro i set browser 'feh'; 29 | macro v set browser 'mpv'; 30 | macro b set browser 'chromium-freeworld'; 31 | macro d set browser 'yt-dlp' # Download videos 32 | 33 | # Keybindings 34 | bind-key RIGHT open 35 | bind-key TAB next 36 | bind-key ^LEFT prev 37 | bind-key LEFT quit 38 | bind-key h help 39 | bind-key q hard-quit 40 | 41 | # Settings I like to use 42 | auto-reload yes 43 | reload-time 120 44 | -------------------------------------------------------------------------------- /.config/tmux/tmux.conf: -------------------------------------------------------------------------------- 1 | # Mouse 2 | set -g mouse on 3 | 4 | set -g allow-rename off 5 | 6 | # Full colors 7 | set -g default-terminal "screen-256color" 8 | 9 | # Black and white scheme 10 | set -g status-bg brightwhite 11 | set -g status-fg default 12 | 13 | # Set bar to top 14 | set -g status-position top 15 | -------------------------------------------------------------------------------- /.config/waybar/config: -------------------------------------------------------------------------------- 1 | 2 | { 3 | "layer":"bottom", 4 | "modules-left":[ 5 | "hyprland/workspaces", 6 | "hyprland/window" 7 | ], 8 | "modules-right":[ 9 | "network", 10 | "backlight", 11 | "pulseaudio", 12 | "memory", 13 | "battery", 14 | "custom/clock" 15 | ], 16 | "hyprland/workspaces":{ 17 | "format":"{name}/10:", 18 | "active-only": true, 19 | }, 20 | "hyprland/window": { 21 | "format": "{} ", 22 | }, 23 | "network":{ 24 | "format":"{ifname}", 25 | "format-wifi":" {essid}", 26 | "format-ethernet":"{ipaddr}/{cidr}", 27 | "format-disconnected":"", 28 | "tooltip-format":" {ifname} via {gwaddr}", 29 | "tooltip-format-wifi":" {essid}", 30 | "tooltip-format-ethernet":" {ifname}", 31 | "tooltip-format-disconnected":"Disconnected", 32 | "max-length":50 33 | }, 34 | "backlight":{ 35 | "format":" {percent}%" 36 | }, 37 | "pulseaudio":{ 38 | "format":"{icon} {volume}%", 39 | "format-bluetooth":"{icon} {volume}%", 40 | "format-muted":"", 41 | "format-icons":{ 42 | "default":[ 43 | "", 44 | "" 45 | ] 46 | }, 47 | "scroll-step":1, 48 | "on-click":"pavucontrol", 49 | "ignored-sinks":[ 50 | "Easy Effects Sink" 51 | ] 52 | }, 53 | "battery":{ 54 | "interval":60, 55 | "states":{ 56 | "warning":30, 57 | "critical":15 58 | 59 | }, 60 | "format":"{icon} {capacity}%", 61 | "format-charging": "{icon} {capacity}% ", 62 | "format-plugged": "{icon} {capacity}% ", 63 | "format-icons":[ 64 | "", 65 | "", 66 | "", 67 | "", 68 | "" 69 | ], 70 | "max-length":25 71 | }, 72 | "memory":{ 73 | "interval":30, 74 | "format":"  {}% ", 75 | "max-length":10 76 | }, 77 | "cpu":{ 78 | "interval":10, 79 | "format":" {}%", 80 | "max-length":10 81 | }, 82 | "clock":{ 83 | "format":"| {:L%a %b %d %H:%M}", 84 | "format-alt":"| {:L%a %b %d %I:%M %p}" 85 | }, 86 | "custom/clock": { 87 | "format": "| {}", 88 | "interval": 1, 89 | "exec": "date +'%a %b %d %I:%M %p'", 90 | }, 91 | } 92 | -------------------------------------------------------------------------------- /.config/waybar/maildir.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | UNREAD=$(mu find 'g:u' | wc -l) 3 | echo  $UNREAD 4 | -------------------------------------------------------------------------------- /.config/waybar/spacebar.config: -------------------------------------------------------------------------------- 1 | { 2 | "position": "bottom", 3 | "spacing": 4, // Gaps between modules (4px) 4 | "modules-left": ["hyprland/workspaces", "wlr/taskbar"], 5 | "modules-right": ["clock", "tray"], 6 | "tray": { 7 | "spacing": 10 8 | }, 9 | "clock": { 10 | "format": "{:%Y-%m-%d %I:%M:%S %p}" 11 | }, 12 | "wlr/taskbar": { 13 | "format": "{icon}", 14 | "icon-size": 14, 15 | "icon-theme": "Numix-Circle", 16 | "tooltip-format": "{title}", 17 | "on-click": "activate", 18 | "on-click-middle": "close", 19 | "ignore-list": [ 20 | "Alacritty" 21 | ], 22 | "app_ids-mapping": { 23 | "firefoxdeveloperedition": "firefox-developer-edition" 24 | }, 25 | "rewrite": { 26 | "Firefox Web Browser": "Firefox", 27 | "Foot Server": "Terminal" 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /.config/waybar/spacebar.css: -------------------------------------------------------------------------------- 1 | * { 2 | border: none; 3 | border-radius: 15px; 4 | font-family: "Cascadia Mono"; 5 | font-size: 15px; 6 | min-height: 10px; 7 | } 8 | 9 | window#waybar { 10 | background: transparent; 11 | } 12 | 13 | .modules-left, 14 | .modules-right { 15 | padding: 5px; 16 | padding-right: 20px; 17 | padding-left: 20px; 18 | 19 | background: #ffffff; 20 | color: #000000; 21 | 22 | border: 6px solid transparent; 23 | 24 | margin-top: 30px; 25 | margin-bottom: 15px; 26 | margin-left: 30px; 27 | margin-right: 30px; 28 | 29 | border: 3px solid black; 30 | box-shadow: -10.5px -10.5px rgba(0, 0, 0, 170); 31 | } 32 | 33 | #network, 34 | #backlight, 35 | #pulseaudio, 36 | #memory, 37 | #battery, 38 | #clock, 39 | #cpu { 40 | padding: 0 8px; 41 | } 42 | -------------------------------------------------------------------------------- /.config/waybar/style.css: -------------------------------------------------------------------------------- 1 | * { 2 | border: none; 3 | border-radius: 15px; 4 | font-family: "Cascadia Mono"; 5 | font-size: 15px; 6 | min-height: 10px; 7 | color: #000000; 8 | } 9 | 10 | window#waybar { 11 | background: transparent; 12 | } 13 | 14 | .modules-left, 15 | .modules-right { 16 | padding: 10px; 17 | padding-right: 20px; 18 | padding-left: 20px; 19 | 20 | background: #fbf1c7; 21 | color: #000000; 22 | 23 | border: 2px solid transparent; 24 | 25 | margin-top: 30px; 26 | margin-bottom: 15px; 27 | margin-left: 30px; 28 | margin-right: 30px; 29 | 30 | border: 3px solid black; 31 | box-shadow: 10.5px 10.5px rgb(0, 0, 0); 32 | } 33 | 34 | #network, 35 | #backlight, 36 | #pulseaudio, 37 | #memory, 38 | #battery, 39 | #clock, 40 | #cpu { 41 | padding: 0 8px; 42 | } 43 | -------------------------------------------------------------------------------- /.config/waybar/swayclone.config: -------------------------------------------------------------------------------- 1 | { 2 | "position": "bottom", 3 | "spacing": 4, // Gaps between modules (4px) 4 | "modules-left": ["hyprland/workspaces", "wlr/taskbar"], 5 | "modules-right": ["clock", "tray"], 6 | "tray": { 7 | "spacing": 10 8 | }, 9 | "clock": { 10 | "format": "{:%Y-%m-%d %I:%M:%S %p}" 11 | }, 12 | "wlr/taskbar": { 13 | "format": "{icon}", 14 | "icon-size": 14, 15 | "icon-theme": "Numix-Circle", 16 | "tooltip-format": "{title}", 17 | "on-click": "activate", 18 | "on-click-middle": "close", 19 | "ignore-list": [ 20 | "Alacritty" 21 | ], 22 | "app_ids-mapping": { 23 | "firefoxdeveloperedition": "firefox-developer-edition" 24 | }, 25 | "rewrite": { 26 | "Firefox Web Browser": "Firefox", 27 | "Foot Server": "Terminal" 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /.config/waybar/swayclone.css: -------------------------------------------------------------------------------- 1 | * { 2 | font-family: monospace; 3 | font-size: 13px; 4 | } 5 | 6 | window#waybar { 7 | background-color: #323232; 8 | color: #ffffff; 9 | } 10 | 11 | button { 12 | box-shadow: inset 0 -3px transparent; 13 | border: none; 14 | border-radius: 0; 15 | margin: 0; 16 | padding: 0; 17 | } 18 | 19 | #workspaces button { 20 | background-color: transparent; 21 | color: #ffffff; 22 | } 23 | 24 | #workspaces button.active { 25 | background-color: #285577; 26 | border: 1px solid #4c7899 27 | } 28 | -------------------------------------------------------------------------------- /.config/waybar/waybar/config: -------------------------------------------------------------------------------- 1 | 2 | { 3 | "layer":"bottom", 4 | "modules-left":[ 5 | "custom/wsno", 6 | "hyprland/window" 7 | ], 8 | "modules-right":[ 9 | "custom/mu", 10 | "network", 11 | "backlight", 12 | "pulseaudio", 13 | "memory", 14 | "battery", 15 | "clock" 16 | ], 17 | "custom/wsno":{ 18 | "exec":"~/.config/eww/scripts/workspaceno", 19 | "restart-interval":1 20 | }, 21 | "custom/mu":{ 22 | "format":"{} ", 23 | "exec":"~/.config/waybar/maildir.sh", 24 | "on-click": "emacsclient --create-frame --eval '(mu4e-search \"g:u\")'", 25 | "restart-interval":1, 26 | }, 27 | "hyprland/window": { 28 | "format": ": {} ", 29 | }, 30 | "network":{ 31 | "format":"{ifname}", 32 | "format-wifi":" {essid}", 33 | "format-ethernet":"{ipaddr}/{cidr}", 34 | "format-disconnected":"", 35 | "tooltip-format":" {ifname} via {gwaddr}", 36 | "tooltip-format-wifi":" {essid}", 37 | "tooltip-format-ethernet":" {ifname}", 38 | "tooltip-format-disconnected":"Disconnected", 39 | "max-length":50 40 | }, 41 | "backlight":{ 42 | "format":" {percent}%" 43 | }, 44 | "pulseaudio":{ 45 | "format":"{icon} {volume}%", 46 | "format-bluetooth":"{icon} {volume}%", 47 | "format-muted":"", 48 | "format-icons":{ 49 | "default":[ 50 | "", 51 | "" 52 | ] 53 | }, 54 | "scroll-step":1, 55 | "on-click":"pavucontrol", 56 | "ignored-sinks":[ 57 | "Easy Effects Sink" 58 | ] 59 | }, 60 | "battery":{ 61 | "interval":60, 62 | "states":{ 63 | "warning":30, 64 | "critical":15 65 | 66 | }, 67 | "format":"{icon} {capacity}%", 68 | "format-charging": "{icon} {capacity}% ", 69 | "format-plugged": "{icon} {capacity}% ", 70 | "format-icons":[ 71 | "", 72 | "", 73 | "", 74 | "", 75 | "" 76 | ], 77 | "max-length":25 78 | }, 79 | "memory":{ 80 | "interval":30, 81 | "format":"  {}% ", 82 | "max-length":10 83 | }, 84 | "cpu":{ 85 | "interval":10, 86 | "format":" {}%", 87 | "max-length":10 88 | }, 89 | "clock":{ 90 | "format":"| {:%a %b %d %H:%M}", 91 | "format-alt":"| {:%a %b %d %I:%M %p}" 92 | } 93 | } -------------------------------------------------------------------------------- /.config/waybar/waybar/maildir.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | UNREAD=$(mu find 'g:u' | wc -l) 3 | echo  $UNREAD 4 | -------------------------------------------------------------------------------- /.config/waybar/waybar/spacebar.config: -------------------------------------------------------------------------------- 1 | { 2 | "position": "bottom", 3 | "spacing": 4, // Gaps between modules (4px) 4 | "modules-left": ["hyprland/workspaces", "wlr/taskbar"], 5 | "modules-right": ["clock", "tray"], 6 | "tray": { 7 | "spacing": 10 8 | }, 9 | "clock": { 10 | "format": "{:%Y-%m-%d %I:%M:%S %p}" 11 | }, 12 | "wlr/taskbar": { 13 | "format": "{icon}", 14 | "icon-size": 14, 15 | "icon-theme": "Numix-Circle", 16 | "tooltip-format": "{title}", 17 | "on-click": "activate", 18 | "on-click-middle": "close", 19 | "ignore-list": [ 20 | "Alacritty" 21 | ], 22 | "app_ids-mapping": { 23 | "firefoxdeveloperedition": "firefox-developer-edition" 24 | }, 25 | "rewrite": { 26 | "Firefox Web Browser": "Firefox", 27 | "Foot Server": "Terminal" 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /.config/waybar/waybar/spacebar.css: -------------------------------------------------------------------------------- 1 | * { 2 | border: none; 3 | border-radius: 15px; 4 | font-family: "Cascadia Mono"; 5 | font-size: 15px; 6 | min-height: 10px; 7 | } 8 | 9 | window#waybar { 10 | background: transparent; 11 | } 12 | 13 | .modules-left, 14 | .modules-right { 15 | padding: 5px; 16 | padding-right: 20px; 17 | padding-left: 20px; 18 | 19 | background: #ffffff; 20 | color: #000000; 21 | 22 | border: 6px solid transparent; 23 | 24 | margin-top: 30px; 25 | margin-bottom: 15px; 26 | margin-left: 30px; 27 | margin-right: 30px; 28 | 29 | border: 3px solid black; 30 | box-shadow: -10.5px -10.5px rgba(0, 0, 0, 170); 31 | } 32 | 33 | #network, 34 | #backlight, 35 | #pulseaudio, 36 | #memory, 37 | #battery, 38 | #clock, 39 | #cpu { 40 | padding: 0 8px; 41 | } 42 | -------------------------------------------------------------------------------- /.config/waybar/waybar/style.css: -------------------------------------------------------------------------------- 1 | * { 2 | border: none; 3 | border-radius: 15px; 4 | font-family: "Cascadia Mono"; 5 | font-size: 15px; 6 | min-height: 10px; 7 | } 8 | 9 | window#waybar { 10 | background: transparent; 11 | } 12 | 13 | .modules-left, 14 | .modules-right { 15 | padding: 10px; 16 | padding-right: 20px; 17 | padding-left: 20px; 18 | 19 | background: #fbf1c7; 20 | color: #000000; 21 | 22 | border: 2px solid transparent; 23 | 24 | margin-top: 30px; 25 | margin-bottom: 15px; 26 | margin-left: 30px; 27 | margin-right: 30px; 28 | 29 | border: 3px solid black; 30 | box-shadow: 10.5px 10.5px rgb(0, 0, 0); 31 | } 32 | 33 | #network, 34 | #backlight, 35 | #pulseaudio, 36 | #memory, 37 | #battery, 38 | #clock, 39 | #cpu { 40 | padding: 0 8px; 41 | } 42 | -------------------------------------------------------------------------------- /.config/waybar/waybar/swayclone.config: -------------------------------------------------------------------------------- 1 | { 2 | "position": "bottom", 3 | "spacing": 4, // Gaps between modules (4px) 4 | "modules-left": ["hyprland/workspaces", "wlr/taskbar"], 5 | "modules-right": ["clock", "tray"], 6 | "tray": { 7 | "spacing": 10 8 | }, 9 | "clock": { 10 | "format": "{:%Y-%m-%d %I:%M:%S %p}" 11 | }, 12 | "wlr/taskbar": { 13 | "format": "{icon}", 14 | "icon-size": 14, 15 | "icon-theme": "Numix-Circle", 16 | "tooltip-format": "{title}", 17 | "on-click": "activate", 18 | "on-click-middle": "close", 19 | "ignore-list": [ 20 | "Alacritty" 21 | ], 22 | "app_ids-mapping": { 23 | "firefoxdeveloperedition": "firefox-developer-edition" 24 | }, 25 | "rewrite": { 26 | "Firefox Web Browser": "Firefox", 27 | "Foot Server": "Terminal" 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /.config/waybar/waybar/swayclone.css: -------------------------------------------------------------------------------- 1 | * { 2 | font-family: monospace; 3 | font-size: 13px; 4 | } 5 | 6 | window#waybar { 7 | background-color: #323232; 8 | color: #ffffff; 9 | } 10 | 11 | button { 12 | box-shadow: inset 0 -3px transparent; 13 | border: none; 14 | border-radius: 0; 15 | margin: 0; 16 | padding: 0; 17 | } 18 | 19 | #workspaces button { 20 | background-color: transparent; 21 | color: #ffffff; 22 | } 23 | 24 | #workspaces button.active { 25 | background-color: #285577; 26 | border: 1px solid #4c7899 27 | } 28 | -------------------------------------------------------------------------------- /.config/waybar/waybar/workspaceno: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | TOTAL=$(hyprctl workspaces | grep workspace | sort -n -k 3n | wc -l) 3 | CURRENT=$(hyprctl activewindow | perl -ne 'm/workspace: (.*) \(.*\)/ && print "$1\n"') 4 | 5 | echo "$CURRENT/10" 6 | -------------------------------------------------------------------------------- /.config/waybar/workspaceno: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | TOTAL=$(hyprctl workspaces | grep workspace | sort -n -k 3n | wc -l) 3 | CURRENT=$(hyprctl activewindow | perl -ne 'm/workspace: (.*) \(.*\)/ && print "$1\n"') 4 | 5 | echo "$CURRENT/10" 6 | -------------------------------------------------------------------------------- /.config/zathura/zathurarc: -------------------------------------------------------------------------------- 1 | set selection-clipboard clipboard 2 | 3 | set recolor false 4 | set recolor-keephue true 5 | 6 | set statusbar-h-padding 12 7 | 8 | set statusbar-bg "#fbf1c7" 9 | set statusbar-fg "#000000" 10 | 11 | set inputbar-fg "#fbf1c7" 12 | set inputbar-bg "#7c6f64" 13 | 14 | set font "Cascadia Code Regular 12" 15 | -------------------------------------------------------------------------------- /.local/s: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | grim -g "$(slurp)" - | wl-copy 3 | -------------------------------------------------------------------------------- /.local/wallpaperfy: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | echo $1 3 | convert $1 -gravity North -crop 16:9 /tmp/out.png 4 | swww img /tmp/out.png 5 | -------------------------------------------------------------------------------- /demo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prettykool/dots/eb1ae89577580a8e14b961850db4598bcd2dfe5d/demo.png -------------------------------------------------------------------------------- /license.md: -------------------------------------------------------------------------------- 1 | Copyright (C) 2022, by prettykool 2 | 3 | Permission to use, copy, modify, and/or distribute this software for any 4 | purpose with or without fee is hereby granted. 5 | 6 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 7 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 8 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 9 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 10 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 11 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 12 | OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 13 | -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- 1 | ![Desktop](./demo.png "Desktop sample.") 2 | # dotfiles. 3 | These are dotfiles that people like (allegedly). 4 | 5 | ## Features: 6 | - Gruvbox light terminal color scheme. 7 | - Black & white color scheme for most applications. 8 | - 10/10 wallpapers from: 9 | - [Snotgirl #4](https://imagecomics.com/comics/releases/snotgirl-4), illustrated by [Leslie Hung](https://www.instagram.com/dairyfree/?hl=en). 10 | - [Seconds](https://en.wikipedia.org/wiki/Seconds_(comics)), by [Bryan Lee O'Malley](https://en.wikipedia.org/wiki/Bryan_Lee_O'Malley). 11 | - [Snotgirl #3](https://www.amazon.com/Snotgirl-3-Bryan-OMalley-ebook/dp/B01HOVPQ6A), illustrated by Leslie Hung. 12 | - Two (2) scripts. Use with caution. 13 | 14 | ## License 15 | 0BSD. Do what the FUCK you want (Wait, wrong license) 16 | -------------------------------------------------------------------------------- /wallpaper/aubrey-ascii-test.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prettykool/dots/eb1ae89577580a8e14b961850db4598bcd2dfe5d/wallpaper/aubrey-ascii-test.png -------------------------------------------------------------------------------- /wallpaper/gruved-seconds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prettykool/dots/eb1ae89577580a8e14b961850db4598bcd2dfe5d/wallpaper/gruved-seconds.png -------------------------------------------------------------------------------- /wallpaper/gruvvy-snotty-na-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prettykool/dots/eb1ae89577580a8e14b961850db4598bcd2dfe5d/wallpaper/gruvvy-snotty-na-2.png -------------------------------------------------------------------------------- /wallpaper/lot3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prettykool/dots/eb1ae89577580a8e14b961850db4598bcd2dfe5d/wallpaper/lot3.png -------------------------------------------------------------------------------- /wallpaper/lottie-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prettykool/dots/eb1ae89577580a8e14b961850db4598bcd2dfe5d/wallpaper/lottie-3.png -------------------------------------------------------------------------------- /wallpaper/lottie1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prettykool/dots/eb1ae89577580a8e14b961850db4598bcd2dfe5d/wallpaper/lottie1.png -------------------------------------------------------------------------------- /wallpaper/lottie45.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prettykool/dots/eb1ae89577580a8e14b961850db4598bcd2dfe5d/wallpaper/lottie45.png -------------------------------------------------------------------------------- /wallpaper/lottie6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prettykool/dots/eb1ae89577580a8e14b961850db4598bcd2dfe5d/wallpaper/lottie6.png -------------------------------------------------------------------------------- /wallpaper/risewallpaper.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prettykool/dots/eb1ae89577580a8e14b961850db4598bcd2dfe5d/wallpaper/risewallpaper.png -------------------------------------------------------------------------------- /wallpaper/seconds_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prettykool/dots/eb1ae89577580a8e14b961850db4598bcd2dfe5d/wallpaper/seconds_2.png -------------------------------------------------------------------------------- /wallpaper/snotgirl_wp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prettykool/dots/eb1ae89577580a8e14b961850db4598bcd2dfe5d/wallpaper/snotgirl_wp.png -------------------------------------------------------------------------------- /wallpaper/snotgirl_wp_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prettykool/dots/eb1ae89577580a8e14b961850db4598bcd2dfe5d/wallpaper/snotgirl_wp_2.png -------------------------------------------------------------------------------- /wallpaper/snotty-abstract.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prettykool/dots/eb1ae89577580a8e14b961850db4598bcd2dfe5d/wallpaper/snotty-abstract.png -------------------------------------------------------------------------------- /wallpaper/witch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/prettykool/dots/eb1ae89577580a8e14b961850db4598bcd2dfe5d/wallpaper/witch.png --------------------------------------------------------------------------------