{"id":17012340,"url":"https://github.com/callmeechocodes/dotfiles","last_synced_at":"2025-04-12T08:40:50.125Z","repository":{"id":220422496,"uuid":"739351236","full_name":"CallMeEchoCodes/dotfiles","owner":"CallMeEchoCodes","description":"🚚 There's no place like ~/","archived":false,"fork":false,"pushed_at":"2024-02-18T21:57:10.000Z","size":376,"stargazers_count":9,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-26T03:41:47.758Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CallMeEchoCodes.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2024-01-05T11:02:47.000Z","updated_at":"2025-02-18T18:32:13.000Z","dependencies_parsed_at":"2024-02-18T22:46:47.036Z","dependency_job_id":null,"html_url":"https://github.com/CallMeEchoCodes/dotfiles","commit_stats":null,"previous_names":["callmeechocodes/dotfiles"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CallMeEchoCodes%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CallMeEchoCodes%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CallMeEchoCodes%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CallMeEchoCodes%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CallMeEchoCodes","download_url":"https://codeload.github.com/CallMeEchoCodes/dotfiles/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248543039,"owners_count":21121827,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-14T06:10:24.489Z","updated_at":"2025-04-12T08:40:50.107Z","avatar_url":"https://github.com/CallMeEchoCodes.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Echo's Dotfiles\n\u003e 🏠 There's no place like ~/\n\n[![License](https://img.shields.io/github/license/CallMeEchoCodes/dotfiles)](https://github.com/CallMeEchoCodes/dotfiles/blob/master/LICENSE)\n[![PRs welcome](https://img.shields.io/badge/PRs-welcome-ff69b4.svg)](https://github.com/CallMeEchoCodes/dotfiles/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22)\n\n## 🔧 Installing\n### Dependencies\n### Required\n**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.\n| Name                                                                   | Description                                                                                   | Where/why is it needed?                |\n| ---------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | -------------------------------------- |\n| [dossier](https://github.com/CallMeEchoCodes/dossier)                  | A lightweight dotfile bootstrapper!                                                           | Installs dotfiles (and maybe more soon)|\n| [Hyprland](https://github.com/hyprwm/Hyprland)                         | A highly customizable dynamic tiling Wayland compositor that doesn't sacrifice on its looks.  | Window Manager/Compositor              |\n| [Inter Font](https://github.com/rsms/inter)                            | A typeface carefully crafted \u0026 designed for computer screens                                  | System Font                            |\n| [eww-tray](https://github.com/ralismark/eww/tree/tray-3)               | A standalone widget system that allows you to implement custom widgets (systray fork).        | Top Bar                                |\n| [socat](http://www.dest-unreach.org/socat)                             | Multipurpose relay (SOcket CAT)                                                               | Used in the EWW Workspaces script      |\n| [rofi](https://github.com/davatorium/rofi)                             | A window switcher, Application launcher and dmenu replacement.                                | App launcher                           |\n| [dunst](https://dunst-project.org)                                     | A lightweight replacement for the notification daemons provided by most desktop environments. | Notification Daemon                    |\n| [swaybg](https://github.com/swaywm/swaybg)                             | A wallpaper utility for Wayland compositors.                                                  | Wallpaper Daemon                       |\n| [pipewire](https://pipewire.org)                                       | A project that aims to greatly improve handling of audio and video under Linux.               | Audio (replaces pulseaudio)            |\n| [pipewire-pulse](https://pipewire.org)                                 | A relatively small server that converts the PulseAudio native protocol to PipeWire protocol.  | Fully replace pulseaudio with pipewire |\n| [wireplumber](https://gitlab.freedesktop.org/pipewire/wireplumber)     | Session / policy manager implementation for PipeWire                                          | Fix a ton of audio and video stuff     |\n\n### Optional\n| Name                                                                   | Description                                                                                   | Where/why is it needed?                |\n| ---------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | -------------------------------------- |\n| [WezTerm](https://wezfurlong.org/wezterm/)                             | A powerful cross-platform terminal emulator and multiplexer                                   | Terminal Emulator                      |\n| [XDPH](https://github.com/hyprwm/xdg-desktop-portal-hyprland)          | An XDG Desktop Portal backend for Hyprland.                                                   | Fixes screensharing                    |\n| [fish](https://fishshell.com/)                                         | A smart and user-friendly command line shell for Linux, macOS, and the rest of the family.    | Shell                                  |\n| [fisher](https://github.com/jorgebucaran/fisher)                       | A plugin manager for Fish                                                                     | Fish plugins                           |\n| [Starship](https://starship.rs)                                        | The minimal, blazing-fast, and infinitely customizable prompt for any shell!                  | Shell prompt                           |\n| [slurp](https://github.com/emersion/slurp)                             | Select a region in a Wayland compositor                                                       | Screenshot script (1/3)                |\n| [grim](https://sr.ht/~emersion/grim/)                                  | Grab images from a Wayland compositor.                                                        | Screenshot script (2/3)                |\n| [hyprpicker](https://github.com/hyprwm/hyprpicker)                     | A wlroots-compatible Wayland color picker that does not suck.                                 | Colorpicker and Screenshot script (3/3)|\n| [swaylock](https://github.com/swaywm/swaylock)                         | A screen locking utility for Wayland compositors.                                             | Screen lock                            |\n| [swayidle](https://github.com/swaywm/swayidle)                         | Idle management daemon for Wayland.                                                           | Auto screen lock                       |\n| [ncmpcpp](https://github.com/ncmpcpp/ncmpcpp)                          | A featureful ncurses based MPD client.                                                        | Music TUI                              |\n| [mopidy](https://mopidy.com/)                                          | An extensible music server written in Python.                                                 | Music Player                           |\n| [mopidy-local](https://mopidy.com/ext/local/)                          | Mopidy extension for playing music from your local music archive.                             | Music from local files                 |\n| [mopidy-spotify](https://mopidy.com/ext/spotify/)                      | Mopidy extension for playing music from the Spotify music streaming service.                  | Music from spotify                     |\n| [mopidy-mpris](https://mopidy.com/ext/mpris/)                          | Frontend for controlling Mopidy through the MPRIS D-Bus interface.                            | Music notification script              |\n\n### Installation\n1. Install all required dependencies\n2. Clone this repo into `~/.dotfiles`\n```bash\ngit clone https://github.com/CallMeEchoCodes/dotfiles ~/.dotfiles\n```\n3. Delete or move any existing configuration files you might have\n4. Install the dotfiles\n```bash\ncd ~/.dotfiles\ndossier install\n```\n5. Edit the settings \u003cbr/\u003e\nI tried not to hardcode personal stuff but it was kinda required in places. I'll note those here:\n* `hyprland/settings.conf` contains monitor config and personal settings (explained in comments)\n* `eww/scripts/workspaces` contains more monitor config\n* `fish/config.fish` currently contains some stuff that requires my personal sysfetch. I'll move that to `personal.fish` soon.\n* `fontconfig/fonts.conf` contains fonts to change\n* `rofi/theme.rasi` contains another font to change\n* `wezterm/wezterm.lua` guess what? more fonts.\n* `ncmpcpp/music-notify.sh` music directory\nI 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.\n6. Run `dbus-run-session Hyprland` from a TTY to open Hyprland!\n\n## Mappings\n`MOD1` = SUPER\n`MOD2` = SHIFT\n\n* `MOD1` + `1-9` = Change workspace\n* `MOD1` + `MOD2` + `1-9` = Move focused window to another workspace\n* `MOD1` + `Q` = Close focused window\n* `MOD1` + `F` = Fullscreen focused window\n* `MOD1` + `V` = Toggle the focused window between floating and not floating\n* `MOD1` + `Hold LMB` + `Drag` = Move window\n* `MOD1` + `Hold RMB` + `Drag` = Resize window\n* `MOD1` + `ENTER` = Open WezTerm\n* `MOD1` + `R` = Open rofi\n* `MOD1` + `MOD2` + `M` = Exit Hyprland\n* `MOD1` + `MOD2` + `S` = Start screenshot (clipping tool)\n* `MOD1` + `MOD2` + `C` = Start hyprpicker\n* `MOD1` + `MOD2` + `L` = Lock\n\n## Screenshots\n\u003cimg src=\"https://raw.githubusercontent.com/CallMeEchoCodes/dotfiles/main/assets/singlewindow.png\" /\u003e\n\u003cimg src=\"https://raw.githubusercontent.com/CallMeEchoCodes/dotfiles/main/assets/multiwindow.png\" /\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcallmeechocodes%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcallmeechocodes%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcallmeechocodes%2Fdotfiles/lists"}