Skip to content

Instantly share code, notes, and snippets.

@offlinehacker
Last active May 3, 2017 13:03
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save offlinehacker/ef35777d25b696321c8117436b838bd5 to your computer and use it in GitHub Desktop.
Save offlinehacker/ef35777d25b696321c8117436b838bd5 to your computer and use it in GitHub Desktop.
.nixpkgs/config.nix
# This is mostly a work in progress and might not work with what is in
# nixpkgs trunk. If you have questions, feel free to contact me:
# Jaka Hudoklin <jakahudoklin@gmail.com>
{
allowUnfree = true; # for flash and such
#allowBroken = true; # for testing
chromium.enableGoogleTalkPlugin = true;
chromium.enablePepperFlash = true;
chromium.enableWideVine = true;
firefox.icedtea = true;
st.conf = builtins.readFile ./.st.conf;
#ffmpeg.x11grab = true;
packageOverrides = pkgs: let
params = import ./params.nix;
ifX = (param: if params.enableX then param else null);
in with pkgs.lib; rec {
bluez = pkgs.bluez5;
pelican = pkgs.pythonPackages.pelican.override {
doCheck = false;
};
st_patched = overrideDerivation pkgs.st (p: {
patches = [
(pkgs.fetchpatch {
url = "http://st.suckless.org/patches/st-0.6-copyurl.diff";
sha256 = "13c8hir6k8k8xiffjh90kw7qbyq3g1dnw583mwk9rx12rn1cpl9r";
})
];
});
# Basic X dependencies
pkgsX = pkgs.buildEnv {
name = "pkgs-X";
paths = with pkgs; [
# dependecies
xorg.xkbcomp
xorg.xorgserver
xorg.xf86videodummy
xorg.xf86inputvoid
xorg.xrdb
xfontsel
fontconfig
freetype
xclip
xsel
# basic fonts
xorg.fontbhttf
xorg.fontbhlucidatypewriter100dpi
xorg.fontbhlucidatypewriter75dpi
xorg.fontbh100dpi
xorg.fontmiscmisc
xorg.fontcursormisc
ttf_bitstream_vera
freefont_ttf
liberation_ttf
inconsolata
];
ignoreCollisions = true;
};
# Standard development environment
pkgsStdenv = pkgs.buildEnv {
name = "pkgs-stdenv";
paths = with pkgs; [
coreutils
utillinux
inetutils
stdenv
strace
#git
gnugrep
gnused
file
tree
autojump
direnv
unrar
curl
wget
cacert
zip
unzip
htop
psmisc
p7zip
beep
which
readline
# shell
zsh
tmux
pythonPackages.powerline
# best editor ever
vim_configurable
vimPlugins.YouCompleteMe
# For remote X
(ifX xlibs.xauth)
];
ignoreCollisions = true;
};
pkgsDesktop = pkgs.buildEnv {
name = "pkgs-desktop";
paths = with pkgs; [
xlibs.xbacklight
i3lock
i3status
libnotify
scrot
alsaUtils
dunst
dmenu
networkmanagerapplet
gnome3.gnome_keyring
xfce.tumbler
pavucontrol
numix-gtk-theme
numix-icon-theme
];
};
pkgsStandard = pkgs.buildEnv {
name = "pkgs-standard";
paths = with pkgs; [
# terminal
(ifX st_patched)
# misc
cdrkit
(ifX redshift)
(ifX unetbootin)
#(ifX winusb)
(ifX xlibs.xev)
# sync
dropbox
dropbox-cli
# chat
weechat
bitlbee
# windows emulation
wine
winetricks
dosbox
# www
(ifX firefoxWrapper)
(ifX chromium)
(ifX torbrowser)
(ifX vidalia)
elinks
# p2p stuff
(ifX transmission_gtk)
# telephony
(ifX skype)
# docs/images
(ifX mupdf)
(ifX libreoffice)
(ifX feh)
(ifX (xsane.override { gimpSupport = true; }))
imagemagick
# audio/video
(ifX vlc)
(ifX audacity)
(ifX xvidcap)
ffmpeg
nodePackages.peerflix
youtube-dl
perlPackages.ImageExifTool # Image metadata
# pass/cert managment
pass
gnupg
pinentry
# games
(ifX steam)
(ifX teeworlds)
];
ignoreCollisions = true;
};
pkgsGraphics = pkgs.buildEnv {
name = "pkgs-graphics";
paths = with pkgs; [
(ifX gimp) # for image editing
(ifX blender) # for modelling and animations
(ifX openscad) # programative 3d models
(ifX meshlab) # for 3d meshes
(ifX freecad) # cad, but free
(ifX inkscape) # vector graphic tool
(ifX kde4.kdenlive) # video editing tool
(ifX dia) # diagraming tool
#(ifX yed) # better diagraming tool
(ifX picard) # Music id3 analyzer
(ifX tuxguitar) # For my guitar tunes
];
};
pkgsAdmin = pkgs.buildEnv {
name = "pkgs-admin";
paths = with pkgs; [
# misc
mkpasswd
pwgen
gzrt
fakeroot
fakechroot
apacheHttpd
cpufrequtils
hexedit
pv
sysdig # System call analyzer
# disk
hdparm
encfs
cifs_utils
iotop
lsof
inotifyTools
ntfs3g
parted
sshfsFuse
unionfs-fuse
extundelete
(ifX baobab)
nfs-utils
smartmontools # for smartctl
btrfsProgs # btrfs utils
s3fs
# crypto
openssl
cryptsetup
truecrypt
easyrsa
ykpers # yubikey preferences
(ifX xca) # Cert managment
# networking
(ifX wireshark)
(ifX filezilla)
tcpdump
iptables
nmap
openvpn
wakelan
bridge_utils
bind
jnettop
ncftp
curl_unix_socket
ethtool
socat
#bmon
tcptrack
arp-scan
stunnel
# nix
nixopsUnstable
# For network boot
dhcp
unfs3
# Virtualization
#(ifX virtmanager)
#(ifX virtviewer)
docker
kubernetes
# remote desktop
(ifX rdesktop)
(ifX gtkvnc)
(ifX x11vnc)
xdummy
# devices
pciutils
usbutils
];
ignoreCollisions = true;
};
pkgsHacking = pkgs.buildEnv {
name = "pkgs-hacking";
paths = with pkgs; [
# sniffing
aircrackng
ettercap
cutter
#john
logkeys
libnfc
mfcuk
mfoc
#masscan
msf
];
ignoreCollisions = true;
};
pkgsDev = pkgs.buildEnv {
name = "pkgs-dev";
paths = with pkgs; [
# utils
ctags
pkgconfig
automake
cmake
rlwrap
cabextract
casperjs
jq
#(ifX node_webkit)
gist
# documentation/text
pelican
pythonPackages.sphinx
haskellPackages.pandoc
# ploting
gnuplot
graphviz
# nix
nixUnstable
nix-repl
#nodePackages.npm2nix
#nodePackages.bower2nix
#rubyLibs.nix
dpkg
nix-prefetch-scripts
nox
bundix
# version control
gitAndTools.gitFull
gitAndTools.gitflow
gitAndTools.hub
#nodePackages.gh
mercurial
subversionClient
# needed for vim's syntastic
phantomjs
pythonPackages.flake8
pythonPackages.docutils
htmlTidy
csslint
nodePackages.jshint
nodePackages."js-yaml"
golint
# needed for youcompleteme
gocode
gotags
# compilers and interpreters
python27Full
python27Packages.ipython
python27Packages.bpython
ruby
mono
jdk
nodejs
go
php
erlang
# mathematics
python27Packages.numpy
python27Packages.matplotlib
python27Packages.scipy
octave
# package managment and build tools
bundler
nodePackages."grunt-cli"
nodePackages.bower
maven
leiningen
ant
scons
#scaffolding
python27Packages.mrbob
#nodePackages.yo
# virtualenv
pythonPackages.virtualenv
# databases
sqlite
mongodb
mysql55
postgresql
redis
etcdctl
(ifX dfeet)
# debugging
ddd
ltrace # lib tracer, like strace
#kcachegrind
# common used development libraries
pcre
zlib
pkgconfig
#openssl
#curlcares
nasm
sqlite
db4
cyrus_sasl
libxml2
libxslt
libevent
pycrypto
#gifsicle
optipng
compass
graphicsmagick
# android
androidenv.androidsdk_4_3
apktool
# networking
ngrok
# deployment
ec2_api_tools
packer
vagrant
pythonPackages.docker_compose
ansible
awscli
heroku
# virtualization
qemu
lxc
];
ignoreCollisions = true;
};
};
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment