/dotfiles

My dotfiles for Fedora GNU/Linux centered on Doom Emacs.

Primary LanguageShell

System Install Steps

Scripts

Install configs

stow -D * -t ~
stow * -t ~

Installing Doom Emacs

Only manually download this! Download Sauce Code Pro Github page

git clone --depth 1 https://github.com/hlissner/doom-emacs ~/.emacs.d
~/.emacs.d/bin/doom install
ln -s .config/dotfiles/doom_emacs/.doom.d/ ~/
~/.emacs.d/bin/doom sync

Compiling Some Packages

vterm

Just SPC o t and press y

epdinfo

pdf-tools-install

Emacs Daemon

In .bashrc

alias emacs="emacsclient -c"
alias emacst="emacsclient -t"

systemd emacs.service

[Unit]
Description=Emacs text editor
Documentation=info:emacs man:emacs(1) https://gnu.org/software/emacs/

[Service]
Type=forking
ExecStart=/usr/bin/emacs --daemon
ExecStop=/usr/bin/emacsclient --eval "(kill-emacs)"
Environment=SSH_AUTH_SOCK=%t/keyring/ssh
Restart=on-failure

[Install]
WantedBy=default.target

Also assign a keybinding for emacsclient -c

zsh setup

Install zsh

sudo dnf install zsh

Change zsh to default shell

chsh -s /bin/zsh

Install oh-my-zsh

https://ohmyz.sh/#install

sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

Install Font for powerlevel10k

https://github.com/romkatv/powerlevel10k#manual-font-installation Preferences -> Selected profile -> Text > Text Appereance -> Custom Font : Select MesloLGS NF Regular.

Zsh Packages

Install needed dnf packages for zsh packages

sudo dnf install fzf zsh-autosuggestions zsh-syntax-highlighting

Install powerlevel10k prompt

https://github.com/romkatv/powerlevel10k#oh-my-zsh

git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k

Install zsh-autosuggestions

https://github.com/zsh-users/zsh-autosuggestions/blob/master/INSTALL.md#oh-my-zsh

git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

Literate Configs

Flameshot

As a convention, I used lower cased letters for the bindings I’ve changed.

General

[General]
checkForUpdates=false
copyPathAfterSave=true
disabledTrayIcon=false
drawThickness=2
filenamePattern=%F-%H
savePath=~/Pictures
savePathFixed=false
startupLaunch=true

Look

contrastOpacity=127
showHelp=false
showSidePanelButton=false
showStartupLaunchMessage=false
buttons=@Variant(\0\0\0\x7f\0\0\0\vQList<int>\0\0\0\0\x14\0\0\0\0\0\0\0\x1\0\0\0\x2\0\0\0\x3\0\0\0\x4\0\0\0\x5\0\0\0\x6\0\0\0\x12\0\0\0\xf\0\0\0\a\0\0\0\b\0\0\0\t\0\0\0\x10\0\0\0\n\0\0\0\v\0\0\0\f\0\0\0\r\0\0\0\xe\0\0\0\x11\0\0\0\x13)
Theme
uiColor=#009685
contrastUiColor=#80faff
drawColor=#220080

Bindings

Default bindings

Order is from flameshot config.

[Shortcuts]
Choose from bar
TYPE_DRAWER=D
TYPE_ARROW=A
TYPE_SELECTION=S
TYPE_RECTANGLE=R
TYPE_CIRCLE=C
TYPE_TEXT=T
TYPE_PIXELATE=B
CUA

C-RET is for finishing text entering.

TYPE_UNDO=Ctrl+Z
TYPE_COPY=Ctrl+C
TYPE_SAVE=Ctrl+S
TYPE_OPEN_APP=Ctrl+O
TYPE_SELECT_ALL=Ctrl+A
TYPE_EXIT=Ctrl+Q
TYPE_COMMIT_CURRENT_TOOL=Ctrl+Return
TYPE_TOGGLE_PANEL=Space

Mines

Pine
Circle Countq
Pencilx
Markerz
Move selectionw
TYPE_CIRCLECOUNT=q
TYPE_REDO=Ctrl+y
TYPE_PIN=e

Hard to press

TYPE_PENCIL=x
TYPE_MARKER=z
Movement of selection
TYPE_MOVE_DOWN=j
TYPE_MOVE_LEFT=h
TYPE_MOVE_RIGHT=l
TYPE_MOVE_UP=k

Resize with respect to right bottom corner. In other words it moves right bottom corner.

TYPE_RESIZE_DOWN=Shift+j
TYPE_RESIZE_LEFT=Shift+h
TYPE_RESIZE_RIGHT=Shift+l
TYPE_RESIZE_UP=Shift+k

Escape to move with mouse

TYPE_MOVESELECTION=W

Stow

.stow-local-ignore

scripts
old
systemd
vscode
*.org
*.js

Fedora

Fedora packages

dnf

Terminal

Important
tree
vim
ImageMagick
youtube-dl
acpi
tldr
lm_sensors
the_silver_searcher
ripgrep
docker
xclip
cronie
aspell
aspell-en
translate-shell
ascii
entr
Other
htop
cmatrix
cowsay
figlet
lolcat
speedtest-cli
neofetch
glances
telnet
hugo
inxi
cloc
xdotool
stress
pdfgrep
Shiny/Neo
bat

Emacs

emacs
libvterm
plantuml
pandoc
texlive-scheme-full
fd-find

GUI Programs

qbittorrent
okular
flameshot
kruler
hexchat

Programming Languages

Python
bpython
C/C++
cmake
libtool
clang
meson
valgrind
Lisp
rlwrap
Common Lisp
sbcl
Javascript
nodejs
C# .NET
dotnet-sdk-5.0
dotnet-runtime-5.0

Cyber Security

nmap

Git

git-instaweb

Fonts

overpass-fonts

Gnome

gnome-tweaks

Xorg

xkill

Database

PostgreSQL
pgFormatter

flatpak

Discord
Dropbox
Flatseal
Spotify
Peek
FontFinder
Postman
zeal
Kooha

snap

code --classic
sqlitebrowser

pip packages

pytest
nose
python-language-server[all]
pyright

Fedora Settings

Fonts

sudo dnf install curl cabextract xorg-x11-font-utils fontconfig
sudo rpm -i https://downloads.sourceforge.net/project/mscorefonts2/rpms/msttcore-fonts-installer-2.6-1.noarch.rpm

Cronjobs

Make sure that cronnie is installed via dnf.

systemctl enable crond.service

Keybindings

Super + IInvert Colors

Navigation

Super + hMove to workspace on the left
Super + lMove to workspace on the right
Super + Shift + lMove window one workspace to the left
Super + Shift + hMove window one workspace to the right
Super + Shift + 1Move window to workspace 1
Super + Shift + 2Move window to workspace 2
Super + Shift + 3Move window to workspace 3
Super + Shift + 4Move window to workspace 4
Super + 1Switch to workspace 1
Super + 2Switch to workspace 2
Super + 3Switch to workspace 3
Super + 4Switch to workspace 4
Super + oSwtich window directly other

Windows

Super + xClose
Super + mMaximize

Custom

Super + ;/usr/bin/guake -t
Super + ,/usr/bin/emacsclient -c
Print/usr/bin/flameshot gui

Arch

Old

pacman

nvidia-settings
pacman-contrib
pactree
ttf-unifont
gnupg
powerline-fonts
tree
emacs
acpi
ttf-hack
vim
arandr
alacritty
imagemagick
tty-clock
cmatrix
cowsay
figlet
lolcat
anki
youtube-dl
mpv
speedtest-cli
bluez-hid2hci
pulseaudio-bluetooth
python-pip
bpython
alsamixer
qbittorrent
tldr
libvterm

yay

powerline-fonts-git
ttf-unifont
siji-git ttf-unifont
ptpython
nushell
powershell
zoom
stress-ng

Network

  • Add DNS
  • Add Disable ipv6

~/bin

Put programs here