Skip to content

Instantly share code, notes, and snippets.

@ublubu
Created November 14, 2016 05:24
Show Gist options
  • Save ublubu/8bf604407015a345727e3457ca05211b to your computer and use it in GitHub Desktop.
Save ublubu/8bf604407015a345727e3457ca05211b to your computer and use it in GitHub Desktop.
current nixos config
# Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running ‘nixos-help’).
{ config, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
];
boot.initrd.kernelModules = [
"fbcon"
];
boot.extraModulePackages = [
pkgs.linuxPackages.nvidia_x11
];
# boot.extraModprobeConfig = ''
# options snd slots=snd_usb_audio
# options snd_hda_intel enable=0,0
# '';
# Use the gummiboot efi boot loader.
boot.loader.systemd-boot.enable = true;
boot.loader.timeout = 4;
boot.loader.efi.canTouchEfiVariables = true;
nix.buildCores = 4;
# nix.nixPath = [ "/home/kynan/Source" "nixos-config=/etc/nixos/configuration.nix" ];
nixpkgs.config = {
allowUnfree = true;
chromium = {
enablePepperFlash = true;
enablePepperPDF = true;
};
};
powerManagement.enable = true;
hardware.opengl.driSupport32Bit = true;
hardware.pulseaudio = {
enable = true;
package = pkgs.pulseaudioFull;
};
fonts = {
enableFontDir = true;
enableGhostscriptFonts = true;
fonts = with pkgs; [
corefonts
vistafonts
inconsolata
terminus_font
proggyfonts
dejavu_fonts
font-awesome-ttf
ubuntu_font_family
source-code-pro
source-sans-pro
source-serif-pro
];
};
networking = {
hostName = "nixos"; # Define your hostname.
hostId = "7e31a6a5";
networkmanager.enable = true;
};
# Select internationalisation properties.
i18n = {
consoleFont = "lat9w-16";
consoleKeyMap = "us";
defaultLocale = "en_US.UTF-8";
};
time.timeZone = "America/New_York";
# List packages installed in system profile. To search by name, run:
# $ nix-env -qaP | grep wget
environment.systemPackages = with pkgs; [
# The usual stuff that should be available system wide
emacs
wget
curl
netcat-openbsd
htop
atop
iotop
strace
manpages
bashCompletion
zsh
rcm
gnupg1compat
gnupg
pwgen
ncdu
mosh
vim
lsof
nox
zip
# networking tools
tcpdump
mtr
wireshark
ndisc6
iftop
jnettop
bind
lftp
whois
autossh
nmap
update-resolv-conf
gnome3.networkmanagerapplet
# X applications and related tools
i3
i3status
i3lock
rxvt_unicode-with-plugins
dmenu
gitAndTools.gitFull
xorg.xrandr
xlibs.xkill
xcalib
wpa_supplicant_gui
clawsMail
firefox
gnome3.gedit
x11_ssh_askpass
chromium
slock
hexchat
keepass
dropbox
p7zip
redshift
gnome3.nautilus
# audio / media
paprefs
pavucontrol
mplayer
mpv
scrot
imagemagick
vlc
pinta
evince
calibre
gimp
pa_applet
# system foo
acpi
acpitool
bridge-utils
unzip
unrar
file
sudo
lxc
which
progress
pmount
# xorg.xbacklight
light
libfaketime
gnumake
gnufdisk
gparted
gptfdisk
parted
polkit_gnome # for mounting local fs in xfce (see wiki/Xfce)
# dev tools
gcc
cabal2nix
vagrant
silver-searcher
tig
fzf
gist
pkgconfig
# haskellPackages.ghc
# haskellPackages.cabal-install
# haskellPackages.alex
# haskellPackages.happy
# haskellPackages.stylish-haskell
# haskellPackages.hlint
# haskellPackages.ghc-mod
# haskellPackages.stack
# dev libs
gnome3.gtk
SDL2
zlib
# admin tools
tightvnc
virtmanager
libressl
nixops
mkpasswd
sslscan
testdisk
# misc
physlock
iptables
# games
# steam
];
environment.sessionVariables = {
};
# List services that you want to enable:
services = {
openssh.enable = true;
xserver = {
startDbusSession = true;
enable = true;
autorun = true;
layout = "us";
desktopManager = {
default = "none";
xterm.enable = false;
gnome3.enable = true;
};
windowManager = {
i3.enable = true;
default = "i3";
};
displayManager = {
slim = {
enable = true;
defaultUser = "kynan";
#extraConfig = ''
#sessionstart_cmd ${pkgs.xorg.sessreg}/bin/sessreg -a -l tty$(fgconsole) %user
#sessionstop_cmd ${pkgs.xorg.sessreg}/bin/sessreg -d -l tty$(fgconsole) %user
#'';
};
sessionCommands = "${pkgs.networkmanagerapplet}/bin/nm-applet &";
};
# displayManager = {
# gdm = {
# enable = true;
# };
# };
# synaptics = {
# enable = true;
# horizontalScroll = true;
# };
videoDrivers = [ "nvidia" ];
deviceSection = ''
Option "IgnoreEdidChecksum" "DFP-0, DFP-3"
'';
# Option "MetaModes" "DFP-0: 2560x1440_60 +0+0, DFP-3: 2560x1440_60 +2560+0 {rotation=right}"
# Option "MetaModes" "DFP-0: 2560x1440_60 +0+0, DFP-3: 2560x1440_60 +2560+0"
screenSection = ''
Option "MetaModes" "DVI-D-0: nvidia-auto-select +2560+0 {rotation=right}, DVI-I-1: nvidia-auto-select +0+0;"
Option "DPI" "110 x 110"
'';
};
# redshift = {
# enable = true;
# latitude = "48";
# longitude = "11";
# temperature = {
# day = 3500;
# night = 3500;
# };
# brightness = {
# day = "1.0";
# night = "0.7";
# };
# };
pcscd.enable = true;
# https://nixos.org/wiki/Solve_GConf_errors_when_running_GNOME_applications
# dbus = {
# enable = true;
# packages = [ pkgs.gnome.GConf ];
# };
gnome3 = {
# gvfs.enable = true;
# sushi.enable = true;
};
};
# Define a user account. Don't forget to set a password with ‘passwd’.
users.extraUsers.kynan = {
name = "kynan";
group = "users";
extraGroups = [ "wheel" "networkmanager" ];
isNormalUser = true;
uid = 1000;
createHome = true;
home = "/home/kynan";
};
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment