Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ttybitnik/dotfiles
My UN*X scripts and configuration files.
https://github.com/ttybitnik/dotfiles
dotfiles linux unix
Last synced: 6 days ago
JSON representation
My UN*X scripts and configuration files.
- Host: GitHub
- URL: https://github.com/ttybitnik/dotfiles
- Owner: ttybitnik
- License: gpl-3.0
- Created: 2023-03-21T13:37:06.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-09-17T02:30:03.000Z (about 2 months ago)
- Last Synced: 2024-09-17T05:56:59.146Z (about 2 months ago)
- Topics: dotfiles, linux, unix
- Language: Shell
- Homepage:
- Size: 12.8 MB
- Stars: 9
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.org
- License: COPYING
Awesome Lists containing this project
README
#+TITLE: ttybitnik/dotfiles
#+AUTHOR: Vinícius Moraes
#+EMAIL: [email protected]
#+OPTIONS: num:nil#+html:
This repository contains my personal collection of scripts and configuration files.
The description is structured around the custom environments I run, including a *FreeBSD* headless laptop (=tty= environment), a *Fedora* desktop with Sway (=wayland= environment), and a *Debian* desktop with Dwm (=xorg= environment). It is worth noting that the TTY tools are employed across all environments.
** Requirements
- GNU Make
- GNU Stow*** Suggestions
| General | GNU Emacs ([[https://github.com/ttybitnik/emacs.d][my config]]), GNU Image Manipulation Program, Inkscape, Ffmpeg, Pandoc, Imv, Fzf, Ytfzf, Yt-dlp, Shotcut, Mpv, Thunar |
| TTY Environment | GNU Emacs (ditto), GNU Midnight Commander, GNU Lynx, GNU Parallel, GNU Privacy Guard, GNU Stow, GNU Make, ClamAV, Tmux, Git, Htop, Powertop, Hyperfine, Tree, Nmcli, Yq, Pulsemixer, Spotify-tui |
| Wayland Environment | Foot, Sway, Swaylock, Waybar, Rofi, Dunst, Kanshi, Gammastep, Wl-clipboard |
| Xorg Environment | Urxvt, Suckless tools ([[https://github.com/ttybitnik/suckless][my builds]]), Redshift, Nitrogen, Sxhkd, Xclip, Xsettingsd |** Usage
Before using my dotfiles, change the personal environment values in =./tty/.bash_profile= accordingly.
*** Symbolic links
To automate the process of creating symbolic links from the repository files to their respective locations, use one of the following commands in the /dotfiles' root directory/ =.=:
#+begin_quote
ℹ️ The TTY environment is automatically installed when choosing any of the graphical environment options.
#+end_quote**** TTY environment
#+begin_src shell
make tty
#+end_src**** Wayland environment
#+begin_src shell
make wayland
#+end_src**** Xorg environment
#+begin_src shell
make xorg
#+end_src*** Switcher
To switch between light and dark modes globally, just run =switcher=. This custom script sends SIGHUP signals to the respective programs, making it easy to adapt to changes in ambient light without having to manually adjust each program's settings.
*** Omni
To automate system updates, run =omni=. This script checks for the availability of various package managers and executes the corresponding update commands. It ensures that every manager present in the enviroment update its packages.
*** Hermes
To display a MOTD with a log of last logins and a custom fortune, run =hermes=. This script is designed to be executed automatically in every interactive login shell through =hermes.service= and =.bash_profile=. For more details, check the script comments.
*** Euterpe
To streamline the music experience, just run =euterpe=. This script leverages tmux to attach to a session with windows related to managing system sound and media.
** Configurations
- TTY environment
- Bash
- Readline
- Git
- Tmux
- Curl
- GNU Lynx
- GNU Midnight Commander
- Kmonad
- Systemd
- Xdg
- Wayland environment
- Foot
- Sway
- Waybar
- Swaylock
- Rofi
- Dunst
- GTK
- Xorg environment
- Urxvt
- Sxhkd
- Xresources
- XsettingsdThe configuration files are located in the following repository paths: =./${environment}/.config/=, =./${environment}/.local/share/=.
** Scripts
- switcher: /global dark/light mode switcher/
- omni: /universal update automation/
- hermes: /custom motd/
- euterpe: /audio and music management/
- ttylog: /logging for commands/
- ttybkp: /backup naming standard/
- ttyeod: /end of day wrapper/
- ttygpg: /encryption automation/
- ttymnt: /luks devices management/
- ttypas: /env and secrets security/
- ttyimg: /image privacy and filtering/
- ttysha: /file enumeration prevention/
- 0x0st: /share ephemeral files and snippets/
- autostart: /sway/dwm autostart/
- vpn_bar: /vpn status and city/
- net_bar: /network status/
- ram_bar: /ram usage/
- cpu_bar: /cpu usage/
- battery_bar: /battery status/
- volume_bar: /volume status/
- volume_up: /raise volume/
- volume_down: /lower volume/
- media_bar: /media status/
- clock_bar: /date and time/
- weather: /weather status/
- qbit: /qbittorrent secure launcher/
- power_menu: /logout screen options/
- cronbib: /calibre to bibtex cron job/
- crondrive: /bisync drives cron job/
- crongit: /commit local repos cron job/The scripts are located in the following repository path: =./tty/.local/bin/=.
** License
This project is licensed under the GNU General Public License v3.0 (GPL-3.0), *unless an exception is made explicit in context*. The GPL is a copyleft license that guarantees freedom to use, modify, and distribute software. It ensures that users have control over the software they use and promotes collaboration and sharing of knowledge. By requiring that derivative works also be licensed under the GPL, the freedoms it provides are extended to future generations of users and developers.
See the =COPYING= file for more information.
The source code for this project is available at .