This repository contains different configuration files, which I have been writing since 2005.
cmd/
— shell-related configuration files.utils/
— configuration files for different utilities, like vim or tmux.noauto/
— different system configuration files, not for automatic installation. Described below.deploy.sh
— main deployment script.
hosts
—/etc/hosts
file. This is not a validhosts
file! You should review it and add useful entries to your/etc/hosts
by hands!50trackball.conf
— X configuration for Logitech trackball50-udiskie.rules
— Rules for udiskie. Should be placed in/etc/polkit-1/rules.d/
. Owner should bepolkitd
, and access right should be644
.97-udisks2.rules
— Rules for udiskie [2]. Should be placed in/etc/udev/rules.d/
.userChrome.css
— Disable tabs and tabbar in Firefox. Should be placed in~/.mozilla/firefox/your-profile-folder/chrome/
.user.js
— Setting for chrome to improve security and remove annoyances. Should be placed in~/.mozilla/firefox/your-profile-folder/
.
You should have next programs in system before configuration deployment:
- aspell (with aspell-en and aspell-ru dictionaries)
- bc
- cal
- cron
- curl
- make (or gmake executable should be available in FreeBSD)
- python3
- perl
- rsync
- sqlite3
- stow
- syncthing
- sudo
- tmux (>= 3.2)
- xsltproc
- udisks
- zsh
- abook
- fdm
- lynx
- maildrop
- msmtp
- mutt
- rss2email
- urlview
- ctags
- diff-highlight (can be installed with `pip3 install diff-highlight`)
- emacs
- idea
- lacheck
- latex (texlive)
- vim
- ansiweather
- dunst
- git
- gpg
- jq
- mc
- numlockx
- pass
- pass-otp
- rtorrent
- shred
- wget
- xclip
- yt-dlp
- udiskie
- feh
- gimp
- imagemagick
- lame
- mplayer
- rawtherapee
- sxiv or nsxiv
- firefox
- i3
- i3status
- josm
- qmapshack
- telegram
- Terminus
- Noto Mono
If you need sensitive data (passwords, API keys, etc) in the new machine — use
store_sensitive_data.sh
script to save it in archive on the old machine and
move to the new machine.
On the new machine you should do the next, to import sensitive data:
To work with file synchronization via cloudsync you need to have sync
SSH-key with empty passphrase. This key should be added to remote server to
rsync
account into ~/.ssh/authorized_keys
.
For using Mutt with GMail mailboxes you should specify mail server passwords
in ~/.netrc
.
Use this commands:
gpg --import pub.key gpg --import priv.key
After that call gpg --edit-key <key-id>
and set trust level to 5 via command
trust
. Quit gpg console with quit
command.
Add your OpenWeatherMap API key to ~/.openweathermap
file.
- Clone this repository to some suitable directory. You mustn’t clone it to
your
~
directory! - Run
deploy.sh
script, which do the next:- Make soft links from our catalog to the user $HOME catalog via stow.
- Create necessary empty directories.
- Create mail directories.
- Set right access rights to some configuration files.
- Store in
~
special file with OS and hardware type of machine where this repository is cloned to. It is necessary to properly handle some functions, which should exists on one machine and shouldn’t on another.
Do the next to install Vim plugins:
- First, install Vundle plugin:
git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim
. - Second, in Vim execute
:BundleInstall
.
You should update your /etc/hosts
with data from noauto/hosts
.