Phundrak’s dotfiles
-Table of Contents
--
-
- 1. Presentation -
- 2. Screenshots -
- 3. Features - - -
- 4. Dependencies -
- 5. Installation -
- 6. Licence -
1 Presentation
--This is my collection of dotfiles for my daily GNU/Linux environment, tweaked -to my liking. If you wish to get the same setup as mine, follow the -instructions below. -
- --As you can see, I personally use fish as my shell of choice, and Emacs 27.0.90 -(custom build) using Spacemacs (still with Emacs keybinding in Insert mode but -with Evil in Normal mode) as my main text editor. -
- --When it comes to my graphical UI, I do not have any desktop environment. -Instead, I have two tiling window managers. The historical first on my -configuration is i3-gaps, an i3 fork by Airblader with which I use two bars -generated by Polybar. My other TWM, and the one I use most often, is -AwesomeWM. Both TWMs use pywal to define their color scheme, as well as rofi’s -color scheme. -
- --Finally, you can find my configuration for my Ergodox keyboard here. It is -optimized for usage with the Bépo layout set as a software layout, and for -shortcuts from i3. -
-2 Screenshots
--
-Figure 2: Desktop with Neofetch in the terminal
--
-Figure 3: Desktop with Emacs opened
--
-Figure 4: Desktop with Rofi
-3 Features
--
-
- Emacs configuration perfectly tailored for my own use -
- Beautiful and comfy i3 and polybar configuration -
- And enough information below to get basically the same distro install as I -have on my main computer and my travel laptop. -
-Most of the org files you will find in this repos are the actual source code
-of much of my config files. For instance, the bootstrap found in
-installation.org exports almost all of its code snippets to
-.config/yadm/bootstrap thanks to M-x org-babel-tangle
from within Emacs.
-Below I will also present and comment some of my short config files which do
-not deserve to have a full org file dedicated to them.
-
3.1 Tiling Window Managers
-3.1.1 AwesomeWM
--AwesomeWM is the TWM I use the most on my computer between itself and i3. My -configuration for it is documented in detail in its corresponding document, -which you can find here. -
-3.1.2 i3 configuration
--The i3 configuration is detailed in its corresponding README which you can -find here. -
-3.2 Graphical tweaks
-3.2.1 GTK Settings
-3.2.1.1 GTK2
--Regarding GTK2, I have only one configuration file: the filechooser’s -configuration file. -
-[Filechooser Settings]
-
--The first option alows me to open the file chooser in the current working -directory: -
-StartupMode=cwd
-
-
-Next, setting the location mode to path-bar
will show the path as buttons
-that can be clicked rather than the full path.
-
LocationMode=path-bar
-
--With this configuration, by default we won’t see hidden files. -
-ShowHidden=true
-
--And we'll also see the size of the visible files. -
-ShowSizeColumn=true
-
--Now, let’s choose the geometry of our file picker. These two first lines -set where the file picker appears: -
-GeometryX=566 -GeometryY=202 --
-And these two describe the size of the window: -
-GeometryWidth=800 -GeometryHeight=400 --
-With these two lines, we set how our files are sorted: by name, and in the -ascending order. -
-SortColumn=name -SortOrder=ascending --
-Our default view mode is a list of files: -
-ViewMode=list-view
-
-
-And finally, setting our icon view scale to -1
sets the icon view to the
-max size.
-
IconViewScale=-1
-
-3.2.1.2 GTK3
--The following file helps me choosing the aspect of various GTK+ 3 software, -including their theme and icons. First, let’s declare the header: -
-[Settings]
-
--Now, let’s hint to GTK that I prefer dark themes. This can have an -influence also on some websites that can detect this preference and -therefore set their own theme to dark by themselves. -
-gtk-application-prefer-dark-theme = true
-
--Next, the icon theme is the Flat Remix Dark icon theme: -
-gtk-icon-theme-name = Flat-Remix-Dark
-
--Now, the general theme for GTK3 is Arc Dark. -
-gtk-theme-name = Arc-Dark
-
-gtk-can-change-accels = 1
-
-gtk-xft-antialias=1 -gtk-xft-hinting=1 -gtk-xft-hintstyle=hintslight -# gtk-xft-rgba=rgb --
-Since window decorations are handled by my WMs, I will leave this variable -empty. -
-gtk-decoration-layout=
-
-3.2.2 Picom
--Picom is a standalone compositor for Xorg, and the successor to Compton, -itself successor to xcompmgr-dana, itself a fork of xcompmgr. You can find -my Picom configuration here. -
-3.2.3 Xresources
-
-My Xresources file is very short. Indeed, it only contains two lines which
-are dedicated to my st
terminal to set its font and shell. The font is set
-as follows.
-
st.font: Source Code Pro for Powerline:style=book
-
--And I will set my shell like this: -
-st.shell: /usr/bin/fish --
-I can also set the transparency of st (my terminal emulator) like so: -
-st.alpha: 0.9 --
-I used to have lines dedicated to UXTerm and URxvt, but I cast them out of -my system. -
-3.3 Text and source code editing
-3.3.1 Emacs configuration
--Emacs is my main text editor, which I use for almost everything. Because, -you know… -
--- --Emacs is a great operating system, it just lacks a good text editor. -
-
-You can find my Emacs config, based on Spacemacs, in my .spacemacs file, and -my user configuration in my spacemacs.org file. -
-3.3.2 Nano
--Although it is a very simple piece of software, nano does offer some -customization. Mine can be found in my nano.org file. -
-3.3.3 Rustfmt
--You can find my Rustfmt configuration here. -
-3.4 Custom scripts in PATH
--I have written some scripts that help me daily accomplish some simple tasks, -like mounting and unmounting a drive or Android device, an emoji picker, a -utility to set up my Wacom tablet, and so on. You can find them stored in -.local/bin along with their detailed explanation in the README placed in the -same folder —which is actually their source code once the org-mode file gets -tangled. -
-3.5 Fish configuration with useful abbreviations
--You can also find in my Fish shell configuration in my fish.org file, which -contains my usual abbreviations. -
-3.6 And some minor configuration files
-3.6.1 Email signature
--This file gets inserted automatically at the end of my emails. -
-Lucien “Phundrak” Cartier-Tilet -https://phundrak.com (Français) -https://en.phundrak.com (English) - -Sent from a Free and Open-Source Linux operating system with GNU/Emacs --
3.6.2 Global gitignore
--Sometimes, there are some lines that always reappear in gitignores. So, -instead of always adding them, let git now that some elements are to be -ignored by default, hence the ~/.gitignore_global file. First, we don’t want -nano’s backup files. -
-~* --
-And object files and output binaries generated by gcc
and the likes aren’t
-welcome either.
-
*.out -*.o --
3.7 Tmux configuration
--You can find my tmux configuration in tmux.org. It depends on the submodule -.tmux by Gregory Pakosz. -
-4 Dependencies
--Of course, some dependencies are needed for my dotfiles to work well. Here is -a non-exhaustive list of software needed by these configuration files: -
--
-
- GNU/Emacs >= 26.2
-
-
-
- Spacemacs (develop branch) -
- My conlanging layer -
- Venmos’ w3m layer -
- - The Fish shell, using fisher -
- Luke Smith’s fork of st -
- Resloved’s i3-gaps-rounded fork of Airblader’s i3-gaps, itself a fork of i3 -
- Compton, more specificaly Tryone’s fork -
- pywal -
- dmenu -
- j4-dmenu-desktop -
- Rofi -
- minted -
- Rust (stable and nightly) -
- LaTeX and XeTeX (
texlive
packages on Arch Linux)
- - tmux, based on this repo’s configuration by Grégory Pakosz. -
- And a bunch of other stuff, see below -
-And some other stuff scattered around in my dotfiles. -
- --BTW, I use Arch. -
-5 Installation
--For an installation walkthrough of my Arch Linux installation, check out my -installation.org file where I walk you through the first manual steps and -through the bootstrap you can execute to automatically take care of a lot of -elements. -
-6 Licence
--All of my dotfiles (and my dotfiles only) are available under the GNU GPLv3 -Licence. Please consult LICENCE.md for more information. In short: you -are free to access, edit and redistribute all of my dotfiles under the same -licence and as allowed by the licence, and if you fuck up something, it’s your -own responsibility. -
-