Go to file
Pierre Neidhardt 22e0e39a7c Shell: transcoding parameters, merged splice into transcode. 2013-01-20 23:25:29 +01:00
.cmus Cmus: using 'rc' instead of 'autosave' (less dirty, and cross-platform). 2012-10-31 17:19:55 +01:00
.config Ranger: OGG info. 2013-01-19 20:01:49 +01:00
.emacs.d Emacs: defvar -> defcustom. 2013-01-19 09:25:22 +01:00
.kbd kbd: new keyboard layout. 2013-01-15 20:24:44 +01:00
.mutt.d Mutt: colorset script. 2012-10-11 15:23:08 +02:00
.shell.d Shell: transcoding parameters, merged splice into transcode. 2013-01-20 23:25:29 +01:00
.texmf/tex/plain Xresources: set URxvt url key to C-M-u to prevent conflict with emacs and others. 2012-09-23 23:06:52 +02:00
.xkb/symbols XKB: added comments. 2012-10-30 19:05:22 +01:00
.Xresources Fixed Xterm background along Qt applications. 2013-01-01 11:49:48 +01:00
.bash_profile Shell: bash gets properly sourced when a non-login shell. 2012-09-11 11:34:11 +02:00
.bashrc Shell: transcoding parameters, merged splice into transcode. 2013-01-20 23:25:29 +01:00
.emacs Emacs: minor tweaks. 2013-01-10 22:21:30 +01:00
.emacs-light Emacs: finally found decent a solution to all emacsclient issues!!! Emacs light 2013-01-09 19:25:23 +01:00
.gitconfig Git: some handy aliases. 2013-01-20 10:18:25 +01:00
.gtkrc-2.0 Homeinit: Purged old files. 2012-09-02 19:32:47 +02:00
.homeinit Git: uses separate 'light' emacs as merge tool, since Ediff is a bit messy with 2013-01-09 21:55:42 +01:00
.muttrc Emacs: remove-dup function. (eq. to sort -u) 2013-01-15 16:15:19 +01:00
.netinit Netinit: disable encryption by default. 2013-01-01 16:15:21 +01:00
.pkg-arch-aur-edf23ads Pkg update. 2013-01-10 09:59:01 +01:00
.pkg-arch-aur-peteramd Emacs: improved LaTeX templates. 2013-01-06 11:38:21 +01:00
.pkg-arch-explicit-edf23ads Pkg update. 2013-01-10 09:59:01 +01:00
.pkg-arch-explicit-peteramd Pkg update. 2013-01-17 10:16:24 +01:00
.pkg-arch-official-edf23ads Pkg update. 2013-01-10 09:59:01 +01:00
.pkg-arch-official-peteramd Pkg update. 2013-01-17 10:16:24 +01:00
.pkg-freebsd-edf23ads Netinit: force zsh usage. Added comments explaning why. 2012-11-01 14:47:35 +01:00
.pkg-texlive-FreeBSD-edf23ads Awesome: fixed sound support for FreeBSD. 2012-11-01 18:08:44 +01:00
.pkg-texlive-Linux-edf23ads Pkg update. 2013-01-10 09:59:01 +01:00
.pkg-texlive-Linux-peteramd Pkg update. 2013-01-17 10:16:24 +01:00
.pkggen Emacs: mediawiki config improvements. Some macros. 2013-01-09 14:02:25 +01:00
.rtorrent.rc Committed most of the home config files. 2012-06-18 11:02:45 +01:00
.taskrc Committed most of the home config files. 2012-06-18 11:02:45 +01:00
.vimrc Vim: set indent settings. 2012-11-17 12:19:57 +01:00
.xinitrc Netinit: FreeBSD version. 2012-10-29 18:04:34 +01:00
.zshrc Shell: transcoding parameters, merged splice into transcode. 2013-01-20 23:25:29 +01:00
README README update. 2013-01-20 16:20:31 +01:00

README

################################################################################
#                           Unix Home Configuration                            #
#                               Author: Ambrevar                               #
#                               Date: 2013-01-12                               #
################################################################################

Synopsis
********

This repository contains configuration files for various Unix-programs. Target
distributions are Arch Linux and FreeBSD (might work for most Unices as well).

Generic Comments
****************
The only purpose is to be a source of inspiration. Examples are always a good
technical support. (Especially for applications that do not provide examples in
their documentation.)  There is no use in blind-copying the content of any file
into your personal home folder. At best it might break things.

In case you still want to copy some files -- for quick and dirty testing purpose
-- do not forget that most of the files are in hidden folders.  Also note that
in some shells, the '*' joker will NOT match hidden files, that is

    cp -r source-dir/* dest-dir/

will copy non-hidden folders only.  To match all folders, use the following
joker instead:

    cp -r source-dir/{.*,*} dest-dir/   # zsh
    cp -r source-dir/{.??*,*} dest-dir/ # bash

Still, the solution for bash is not perfect as it affects 3 characters files
only. A more convenient solution:

    # bash only.
    shopt -s dotglob
    cp -r source-dir/* dest-dir/

Git makes it possible to use your home folder as a git repo, thus versioning
all files directly. To fetch source from Git repo:

    cd
    git init
    git remote add origin <repo>
    git fetch
    git branch master origin/master
    git checkout master

################################################################################

Some applications will need extra dependencies other than the default ones. You
might have a look at the .pkg-* files to see what software I've been using.

Final word: do not forget to read the manpages!

################################################################################

Awesome
*******
Extra deps: Vicious (Linux only)

Configuration is very close to the default one, which mostly fits my needs.
Most of the work I've done is for the status bar, but since I'm using the
Vicious plugin, it is quite straightforward.

dwb
***
Some custom options, download location, search engines, etc.

Emacs
*****
Extra deps: emacs-lua-mode, emacs-mediawiki, emacs-yasnippet.

Emacs daemon is integrated flawlessly thanks to a small script. See .homeinit.

Configuration for C programming. Bindings to compile either from makefile or
from a custom command if no makefile is found.

TeX and LaTeX full-featured home made environment: no AucTeX required, snippets,
dynamic compilation with various engines, dynamic configuration, proper PDF
view, temp file clean function, PDF compression.

Custom color theme with 256 colors.

Extended file support (shell files, Mutt mails, Arch Linux PKGBUILDs).

Some customization: columns, kill whole line, etc.

Some custom functions: duplicate line, unfill-paragraph, etc.

A lot of code snippets, especially for LaTeX. Contains document template, plot
generation, pie chart generation, and others.

Mutt
****
Compile options: IMAP and SMTP support.
Extra deps: antiword, ccrypt, fortune, sxiv, w3m.

This one is not easy to get into it. I managed to get multiple accounts with
encrypted passwords working, which means there is no plain password stored on
the disk. As a result, I just get prompted for a main password on Mutt startup,
then everything works out of the box.  I use ccrypt for password management
because it is much more simple than gnupg.

I'm using embedded IMAP and SMTP services which need appropriate compilation
options.

Some customization: custom index view, good Emacs integration (see .emacs),
custom theme (matches Emacs colors), various tweaks.

Thanks to the colorset.sh script, Mutt will check terminal color support and
load colors appropriately. Therefore this configuration should work on any
terminal, should it have 256-colors support or not.

URxvt has an URL support that works also for Mutt. For other terminals, you
might consider using the 'urlview' plugin for Mutt.

Ranger
******
Extra deps: antiword, atool, highlight, img2txt, mediainfo, odt2txt, pdftotext, unrtf, w3m.

Custom bindings, file association, tweaked a few options.

Scripts
*******

.homeinit: initialize a new home configuration, i.e. get needed files, create
           symlinks, etc.

.netinit: network setup. Works with wpa_supplicant. May replace any network
          manager.

.save: generates a home configuration archive.

Shell
*****
Target: zsh, bash

Probably the most interesting part here. A lot of stuff: aliases, functions,
shell options, etc.

Please note that this config is mainly intended -- and tested -- for zsh. It
should be mostly bash-compatible though.  When incompabilities have been
encountered, it has been reported into the configuration files. Hence the shared
folder .shell.d/, whose files get sourced by both bash and zsh.  Bash-specific
and zsh-specific options are in dedicated files ending with the appropriate
shell name.

TeX
***

plainTeX macros, most importantly a partial UTF-8 support (taken from LaTeX).

A lot of LaTeX macros. Among others: pie charts, dynamic plots with
input file and trend.

plainTeX macros are in the '.texmf' folder. LaTeX macros are all bundled into
Emacs snippets so that .tex documents do not rely on any external file.

URxvt
*****
Extra deps: Muennich's perl extensions (keyboard-select, clipboard, url-matcher)

Custom font and colors, no scroll bar, url-matcher, clipboard, and
keyboard-select.

Vim
***
I've only been a casual Vim user, so do not expect too much from it.

################################################################################
Known issues
************

Emacs: some colors do not work as intended. MediaWiki fails to upload pages
after some idle time.

Shell: some custom functions would need auto-completion.

URxvt: using the paste function from Muennich's clipboard on the same terminal
where text was copied will make xsel crash.

################################################################################
Noteworthy apps
***************

aalib
aircrack-ng
antiword
apvlv
asciidoc
astyle
atool
awesome
awk
bashmount
bc
cal
calc
catdvi
ccrypt
cdrtools
centerim
chrpath
cmus
column
comm
cppcheck
cut
dash
diff
doxygen
dropbox
dtach
dvtm
dwb
emacs
fbpdf
fbv
fdisk
feh
ffmpeg
file
finch
fmt
fortune
gaupol
gcolor2
gdb
gimp
gnumeric
gnuplot
gparted
graphicsmagick
grep
groff
hdparm
help2man
highlight
htop
id3v2
imagemagick
indent
inkscape
iotop
irssi
latex2html
latex2rtf
lrzip
lshw
ltrace
luakit
lynx
mediainfo
mercurial
mkfs
mkvtoolnix
movgrab
mplayer2
mutt
nasm
ncdu
ngrep
nmap
numlockx
octave
od
odt2txt
okular
openshot
openssh
oss
p7zip
pari
parted
patch
poppler
pstotext
pwgen
qpdf
ranger
re2c
rsync
rtorrent
rxvt-unicode
scrot
sdparm
sed
shred
slock
sort
splint
strace
subdl
submarine
sudo
sxiv
syslinux
task
tcc
tcpdump
texi2html
texinfo
texlive
tig
trash-cli
tree
udiskie
unrtf
upx
valgrind
vim
vlock
w3m
weechat
wipe
wireshark
wmfs
wv
x264
xclip
yasm
zathura
zsh