My Linux environment
Go to file
Érico Rolim 1cf3f25554 Update license for 2020. 2020-07-17 01:04:04 -03:00
alacritty/.config/alacritty Remove unecessary alacritty configs, after update. 2020-04-09 11:23:17 -03:00
ate/.local Add ate terminal as submodule 2020-05-10 23:19:29 -03:00
doom-emacs/.config/doom doom: update config. 2020-07-07 19:03:03 -03:00
emacs/.config/emacs Store emacs config in .config instead of ~. 2020-01-20 01:58:45 -03:00
embedded Update GDB init. 2020-07-17 01:02:52 -03:00
fish/.config Add scripts for chrooting into a glibc boot env. 2020-07-07 18:51:31 -03:00
media Update utilities. 2020-07-07 19:03:26 -03:00
nvim/.config/nvim Update Sway stuff, add Neovide client. 2020-03-14 19:34:47 -03:00
sourcecode Update utilities. 2020-07-07 19:03:26 -03:00
term-utils Clean up scripts and use sh instead of bash 2020-06-04 01:10:31 -03:00
utils/.local/bin Update utilities. 2020-07-07 19:03:26 -03:00
void Add scripts for chrooting into a glibc boot env. 2020-07-07 18:51:31 -03:00
wayland Wayfire customization. 2020-07-17 01:01:58 -03:00
.gitignore General maintenance of repo and removal of non-used functions. 2019-10-08 22:11:45 -03:00
.gitmodules Add small projects as submodules, revamp install.sh 2020-06-22 02:08:46 -03:00
.stowrc Name changes to files for using --dotfiles option in stow, and small changes to tmux. 2019-09-07 23:34:00 -03:00
LICENSE Update license for 2020. 2020-07-17 01:04:04 -03:00
README.md README: update information about sourcecode/ 2020-06-04 02:02:27 -03:00

README.md

ericonr's dotfiles

forthebadge

Uses GNU stow for managing symlinks! The default .stowrc file is setup for my home directory, and for adopting files (overwrite existing files, bringing them into the repo).

In order to link all files, use

$ stow */

otherwise, for specific folders, use

$ stow folder

It's also recommended to create the ~/.local/bin and ~/.local/share directories before stowing the repository.

Sway + Waybar

This setup, which can be found inside wayland, requires the following dependencies:

  • Basic setup:
    • sway: the Wayland compositor and tiling window manager.
    • Xwayland: X server inside Wayland, for backwards compatibility.
    • waybar: customizable status bar.
    • wofi: a pretty good menu system, for wayland (replaces the self built launcher).
    • mako: a notification daemon
    • jq: CLI JSON parser, necessary for keyboard layout implementation.
    • redshift: magic tool for avoiding eye burning. Needs to be the version patched for Sway/Wayland use.
  • Default applications:
    • fish: the default shell.
    • starship: the cross-shell prompt for astronauts.
    • alacritty: the default terminal emulator (because it's pretty, fast, and it has the dimensions option).
      • tmux: the Meta+T shortcut launches tmux for multiple terminals in the same screen.
    • emacs: the no longer default text editor (unfortunately, it has to run through Xwayland).
    • neovim: the default CLI text editor.
    • fzf: a wonderful fuzzy searcher, required by the self-built launcher.
    • ranger: a VIM-like TUI file manager.
  • Applications needed for media keys:
    • pulseaudio: the default audio daemon; provides pactl, which is used for controlling the volume.
    • brightnessctl: the default brightness controller; it's used for setting the backlight.
    • playerctl: player control from media keys.
    • grim: screenshots on wayland.
      • slurp: select a geometry on a wayland screen.
  • Media applications:
    • spotify-tui: a Spotify TUI.
    • mpv: great player for everything.
      • mpv-mpris: MPV plugin to allow it to be controlled from playerctl.
      • youtube-dl: allows MPV to stream YouTube videos.
  • Applications needed for AppPauser keys:
    • AppPauser: is used for making pausing the execution of any application that's started by it possible.
  • Theming:

Obs.: This configuration requires some executables that can be obtained from the sourcecode/ directory.

Wallpaper

wallpaper

The wallpaper is from one of the finalists of the Plasma 5.18 Wallpaper Contest! Congratulations to all of them :D

I specially loved kevintee's colors, so I'm using their wallpaper, which is available here as a convenience, but still under their license. You can find other versions of it at their repo.

sourcecode/

To install the executables inside this directory, it is necessary to run

./install.sh

inside it.

Programs here use Go and C.

neovim plugins

Neovim now uses git submodules to store some plugins:

If you want to use these plugins, you can download them using:

git clone --recursive https://github.com/ericonr/dotfiles.git

Embedded development

This setup for embedded development, especially on the arm-none-eabi platform, can be found on embedded/. It requires the following dependencies:

  • arm-none-eabi-gcc/gdb/newlib: the arm-none-eabi compiler, debugger and libc.
  • openocd: the debugger/programmer software used in most cases.
  • STM32CubeProg: the programmer for cases when OpenOCD doesn't work.
  • STM32CubeMX: the tool used for generating STM32 projects.
  • esp-idf: the Espressif IoT Development Framework. Still requires the download of an actual ESP32 compiler.
  • ugdb: the best GDB interface! Helps a lot in usability.
  • can-utils: Utilities for debugging and using the CAN bus on Linux.