Skip to content

CallMeEchoCodes/dotfiles

Repository files navigation

Echo's Dotfiles

🏠 There's no place like ~/

License PRs welcome

🔧 Installing

Dependencies

Required

DISCLAIMER: I made these dotfiles over the course of a few months. I probably forgot something that is required at some point. Please make an issue if that is the case.

Name Description Where/why is it needed?
dossier A lightweight dotfile bootstrapper! Installs dotfiles (and maybe more soon)
Hyprland A highly customizable dynamic tiling Wayland compositor that doesn't sacrifice on its looks. Window Manager/Compositor
Inter Font A typeface carefully crafted & designed for computer screens System Font
eww-tray A standalone widget system that allows you to implement custom widgets (systray fork). Top Bar
socat Multipurpose relay (SOcket CAT) Used in the EWW Workspaces script
rofi A window switcher, Application launcher and dmenu replacement. App launcher
dunst A lightweight replacement for the notification daemons provided by most desktop environments. Notification Daemon
swaybg A wallpaper utility for Wayland compositors. Wallpaper Daemon
pipewire A project that aims to greatly improve handling of audio and video under Linux. Audio (replaces pulseaudio)
pipewire-pulse A relatively small server that converts the PulseAudio native protocol to PipeWire protocol. Fully replace pulseaudio with pipewire
wireplumber Session / policy manager implementation for PipeWire Fix a ton of audio and video stuff

Optional

Name Description Where/why is it needed?
WezTerm A powerful cross-platform terminal emulator and multiplexer Terminal Emulator
XDPH An XDG Desktop Portal backend for Hyprland. Fixes screensharing
fish A smart and user-friendly command line shell for Linux, macOS, and the rest of the family. Shell
fisher A plugin manager for Fish Fish plugins
Starship The minimal, blazing-fast, and infinitely customizable prompt for any shell! Shell prompt
slurp Select a region in a Wayland compositor Screenshot script (1/3)
grim Grab images from a Wayland compositor. Screenshot script (2/3)
hyprpicker A wlroots-compatible Wayland color picker that does not suck. Colorpicker and Screenshot script (3/3)
swaylock A screen locking utility for Wayland compositors. Screen lock
swayidle Idle management daemon for Wayland. Auto screen lock
ncmpcpp A featureful ncurses based MPD client. Music TUI
mopidy An extensible music server written in Python. Music Player
mopidy-local Mopidy extension for playing music from your local music archive. Music from local files
mopidy-spotify Mopidy extension for playing music from the Spotify music streaming service. Music from spotify
mopidy-mpris Frontend for controlling Mopidy through the MPRIS D-Bus interface. Music notification script

Installation

  1. Install all required dependencies
  2. Clone this repo into ~/.dotfiles
git clone https://github.com/CallMeEchoCodes/dotfiles ~/.dotfiles
  1. Delete or move any existing configuration files you might have
  2. Install the dotfiles
cd ~/.dotfiles
dossier install
  1. Edit the settings
    I tried not to hardcode personal stuff but it was kinda required in places. I'll note those here:
  • hyprland/settings.conf contains monitor config and personal settings (explained in comments)
  • eww/scripts/workspaces contains more monitor config
  • fish/config.fish currently contains some stuff that requires my personal sysfetch. I'll move that to personal.fish soon.
  • fontconfig/fonts.conf contains fonts to change
  • rofi/theme.rasi contains another font to change
  • wezterm/wezterm.lua guess what? more fonts.
  • ncmpcpp/music-notify.sh music directory I think thats all of them but I might have missed some and I would recommend just going through everything to tweak it to your preferences. If you find any hardcoded stuff specific to my system make an issue.
  1. Run dbus-run-session Hyprland from a TTY to open Hyprland!

Mappings

MOD1 = SUPER MOD2 = SHIFT

  • MOD1 + 1-9 = Change workspace
  • MOD1 + MOD2 + 1-9 = Move focused window to another workspace
  • MOD1 + Q = Close focused window
  • MOD1 + F = Fullscreen focused window
  • MOD1 + V = Toggle the focused window between floating and not floating
  • MOD1 + Hold LMB + Drag = Move window
  • MOD1 + Hold RMB + Drag = Resize window
  • MOD1 + ENTER = Open WezTerm
  • MOD1 + R = Open rofi
  • MOD1 + MOD2 + M = Exit Hyprland
  • MOD1 + MOD2 + S = Start screenshot (clipping tool)
  • MOD1 + MOD2 + C = Start hyprpicker
  • MOD1 + MOD2 + L = Lock

Screenshots