2017-12-15 19:43:04 +00:00
# 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’ ).
2018-06-27 15:01:04 +00:00
{ config , pkgs , lib , . . . }:
2017-12-15 17:27:00 +00:00
{
2017-12-15 19:43:04 +00:00
imports = [
<stockholm/jeschli>
./hardware-configuration.nix
<stockholm/jeschli/2configs/urxvt.nix>
2018-03-20 19:14:51 +00:00
<stockholm/jeschli/2configs/emacs.nix>
2018-04-18 06:20:48 +00:00
<stockholm/jeschli/2configs/xdg.nix>
2018-04-17 18:20:09 +00:00
<stockholm/jeschli/2configs/xserver>
2018-08-21 17:45:50 +00:00
<stockholm/jeschli/2configs/steam.nix>
2018-06-19 07:33:26 +00:00
<stockholm/jeschli/2configs/virtualbox.nix>
2017-12-15 19:43:04 +00:00
] ;
2017-12-15 17:27:00 +00:00
2017-12-15 19:43:04 +00:00
krebs . build . host = config . krebs . hosts . brauerei ;
2017-12-15 17:27:00 +00:00
# Use the GRUB 2 boot loader.
boot . loader . grub . enable = true ;
boot . loader . grub . version = 2 ;
boot . loader . grub . efiSupport = true ;
# Define on which hard drive you want to install Grub.
2017-12-15 19:43:04 +00:00
boot . loader . grub . device = " / d e v / s d a " ;
# or "nodev" for efi only
boot . initrd . luks . devices = [ {
name = " r o o t " ;
device = " / d e v / s d a 2 " ;
preLVM = true ;
allowDiscards = true ;
} ] ;
2018-06-19 07:35:38 +00:00
networking . networkmanager . enable = true ;
2017-12-15 19:43:04 +00:00
time . timeZone = " E u r o p e / A m s t e r d a m " ;
2018-07-31 17:19:32 +00:00
2017-12-15 19:43:04 +00:00
nixpkgs . config . allowUnfree = true ;
2018-07-31 17:19:32 +00:00
2018-01-23 18:40:10 +00:00
environment . shellAliases = {
n = " n i x - s h e l l " ;
stocki = pkgs . writeDash " d e p l o y " ''
cd ~/stockholm
exec nix-shell - I stockholm = " $ P W D " - - run ' deploy - - system = " b r a u e r e i " '
'' ;
2018-09-25 17:45:44 +00:00
deploy = pkgs . writeDash " d e p l o y " ''
set - eu
export SYSTEM = " $ 1 "
$ ( nix-build $ HOME/stockholm/jeschli/krops.nix - - no-out-link - - argstr name " $ S Y S T E M " - A deploy )
'' ;
2018-01-23 18:40:10 +00:00
} ;
2018-07-31 17:19:55 +00:00
2017-12-15 17:27:00 +00:00
environment . systemPackages = with pkgs ; [
2017-12-15 19:43:04 +00:00
# system helper
ag
curl
copyq
dmenu
2017-12-15 17:27:00 +00:00
git
2017-12-15 19:43:04 +00:00
i3lock
keepass
networkmanagerapplet
rsync
terminator
tmux
wget
# editors
emacs
# internet
thunderbird
chromium
google-chrome
# programming languages
2018-06-19 07:36:56 +00:00
elixir
elmPackages . elm
2018-04-10 16:15:02 +00:00
exercism
2017-12-15 19:43:04 +00:00
go
gcc
ghc
python35
python35Packages . pip
2018-06-27 15:01:04 +00:00
( vagrant . override {
bundlerEnv = bundlerEnv . override {
bundler = bundler . overrideAttrs ( old : {
name = " b u n d l e r - 1 . 1 6 . 1 " ;
src = fetchurl {
url = " h t t p s : / / r u b y g e m s . o r g / g e m s / b u n d l e r - 1 . 1 6 . 1 . g e m " ;
sha256 = " 1 s 2 n q 4 q n f f x g 3 k w r k 7 c n w x c v f i h l h x m 9 a b s l 2 l 6 d 3 q c k f 3 s y 1 f 2 2 " ;
} ;
} ) ;
} ;
} )
2017-12-15 19:43:04 +00:00
# go tools
golint
gotools
2018-04-10 16:15:02 +00:00
# rust
cargo
rustc
2017-12-15 19:43:04 +00:00
# dev tools
gnumake
2017-12-16 14:58:35 +00:00
jetbrains . pycharm-professional
jetbrains . webstorm
jetbrains . goland
2017-12-15 19:43:04 +00:00
# document viewer
2018-06-19 07:47:43 +00:00
evince
2017-12-15 19:43:04 +00:00
zathura
2018-02-18 09:41:57 +00:00
# xorg
xorg . xbacklight
2018-07-31 17:20:09 +00:00
taskwarrior
2017-12-15 17:27:00 +00:00
] ;
# Some programs need SUID wrappers, can be configured further or are
# started in user sessions.
# programs.bash.enableCompletion = true;
# programs.mtr.enable = true;
2017-12-15 19:43:04 +00:00
programs . gnupg . agent = { enable = true ; enableSSHSupport = true ; } ;
2017-12-15 17:27:00 +00:00
# List services that you want to enable:
# Enable the OpenSSH daemon.
services . openssh . enable = true ;
2018-06-27 15:01:37 +00:00
services . xserver = {
2017-12-15 17:27:00 +00:00
2018-06-27 15:01:37 +00:00
# Don't install feh into systemPackages
# refs <nixpkgs/nixos/modules/services/x11/desktop-managers>
desktopManager . session = lib . mkForce [ ] ;
2018-10-06 22:39:21 +00:00
displayManager . lightdm . enable = lib . mkForce false ;
displayManager . job . execCmd = lib . mkForce " d e r p " ;
2017-12-15 17:27:00 +00:00
2018-06-27 15:01:37 +00:00
enable = true ;
2018-10-06 17:32:25 +00:00
display = lib . mkForce 11 ;
tty = lib . mkForce 11 ;
2017-12-15 17:27:00 +00:00
2018-07-31 17:20:29 +00:00
dpi = 144 ;
2018-06-27 15:01:37 +00:00
# videoDrivers = [ "nvidia" ];
synaptics = {
enable = true ;
twoFingerScroll = true ;
accelFactor = " 0 . 0 3 5 " ;
} ;
} ;
2017-12-15 17:27:00 +00:00
2018-04-17 18:20:09 +00:00
users . extraUsers . jeschli = { # TODO: define as krebs.users
2017-12-15 17:27:00 +00:00
isNormalUser = true ;
2018-07-31 17:21:30 +00:00
extraGroups = [ " d o c k e r " " v b o x u s e r s " " a u d i o " ] ;
2017-12-15 17:27:00 +00:00
uid = 1000 ;
} ;
2017-12-16 15:55:53 +00:00
users . extraUsers . jamie = {
isNormalUser = true ;
2018-04-17 18:20:09 +00:00
uid = 1001 ; # TODO genid
2017-12-16 15:55:53 +00:00
} ;
2018-09-25 17:48:29 +00:00
users . users . dev = {
isNormalUser = true ;
openssh . authorizedKeys . keys = [
config . krebs . users . lass . pubkey
2018-10-05 12:04:27 +00:00
" s s h - r s a A A A A B 3 N z a C 1 y c 2 E A A A A D A Q A B A A A C A Q D B 0 d 0 J A 2 0 V q n 7 I 4 l C t e 6 N e 2 E O m L Z y M J y S 9 y I K J Y X N L j b L w k Q 4 A Y o Q K a n t P B k T x R 7 5 M 0 9 E 7 d 3 j 5 h e u W n C j W H 4 5 T r f Q f e 1 E O S S C 3 p p C I 6 C 6 a I V l a N s + K h A Y Z S 0 m 2 Y 8 W k K n + T T 5 J L E a 8 y y b Y V N / R l Z P O i l p j / 1 Q g j U 6 C Q K + e J 1 k / k K + Q F X c w N 8 2 G D V h 5 k b T V c K U N p 2 t i y x F A + z 9 L Y 0 x F D g / J H i f 2 R O p j J V L Q B J + Y P u O X Z N 5 L D n V c u y L W K T h j x y 5 s r Q 8 i D j o x B g 7 d w L H j b y 5 M v 4 1 K 4 W 6 1 G q 6 x M 5 3 g D E g f X k 4 c Q h J n m x 7 j A / p U n s n 2 Z Q D e w w 3 h c c 7 v R f 8 s o o g X X z 2 K C 9 m a i q 0 M / s v a A T s a 9 U l 4 h r K n q P Z P 9 Q 8 S c S E A U X + V I + x 5 4 i W r n W 0 p / y q B i R A z w s c z d P z a Q r o U F T B x r q 8 R / n 5 T F d S H R M X 7 f Y N O e V M j h f N c a / g t f w 9 d Y B V q u C v u q U u F i R c 0 I 7 y K 4 4 r r M j j V Q R c A b w 6 F 8 O 7 + 0 4 q W C m a J 8 M P l m A p w u 2 c 0 5 V M v 9 h i J o 5 p 6 P n z t e r R S L C q F 6 r I d h S n u O w r U I t 1 s / V + E E Z X H C w S a N L a Q J n Y L 0 H 9 Y j a I u G z 4 c 8 k V z x w 4 c 0 B 6 n l + h q W 5 y 5 / B 2 c u H i u m n l R I D K O I z l v 8 u f h h 2 1 i N 7 Q p I s P i z a h P e z G o T 1 X q v z e X f H 4 q r y o 8 O 4 y T N / P W o A + f 7 o 9 P O U 7 L 6 h Q = = l h e b e n d a n z @ n i x o s "
2018-09-25 17:48:29 +00:00
" s s h - r s a A A A A B 3 N z a C 1 y c 2 E A A A A D A Q A B A A A E Z g H R 1 Z P D B M U j G W a r / Q m I 2 G i U k Z M 8 p A X R y B D h 8 j 3 h G l x l S + 0 l s B V 6 b T A I 5 F 1 3 i y z T C 4 p C u E u D O 2 O l F B 0 s c w j c O A T c i 8 p h d 8 j T j O I D o d q D a e Q Z X b s h y u U B f y i A V 6 q 0 S c + c U D V 3 D 6 G h z i g H 3 t 8 E i Q m v X m U G m 9 1 6 y F o t T 1 2 o 0 d m 8 3 S C O h 1 n A f 9 Z v e C 1 H z / e E U T v g W v I b 5 8 O d U R 5 F / S 5 O V B n I I J Z 8 t c p 0 B P 9 l y j j J C c A N W k Y J l w a V c N N b 0 U a r C R h v R t p t F j + e / E P q Q x S C a S 2 Q c x W 4 z B s Q 6 C 8 1 T F f 7 W r d H + p w t F g 0 o w l W s x v 5 4 7 s R L L i P f 2 h 2 Y u Q g S o A a W 2 4 N 0 S H h U q v O X d + J y a Y w 7 M A F 8 Q h 3 j H m 2 i J Q R g X N u I N 0 m s F i 1 a l w A e v i l L 2 m n f A t 2 b i Q 9 s S 9 g + C V v Q C w X 3 m g 0 9 E 4 Y 3 U m F L z v s J a f D 9 m e K V r j n D C c X y S e A f t s 5 9 e F m w K t M Q 0 q r E W a c l z U i A 6 A y 3 u D 1 z m a 8 x 1 X E L G T f 8 n x n X C G l 8 s 2 i 2 A P n 7 y 1 T c w e p 6 9 D l E N W S a R e F 5 z B L I k C t I U D d + 8 x B F T F 3 y u 5 C p y R r R M K G a 0 Q X / M t s Q l 4 S G J W a d O T w p M 8 j o I b r I V f K k T N B 2 M c x A j v o 0 i a R o B D m 4 0 9 g i 2 Y c y + N S o U V / K A I U G 7 O y s A Q Z 6 2 h r + E / K w 1 o c J C I V I + 9 v z K x / E n E I H k C S w h Y K l 5 3 9 3 W 7 C S h V J j J U c K c Z d d q X 2 s m S S h X q 8 r X P z h I H k 1 d A V n 5 F f / v G Z T 9 z 9 R 0 Q N 3 z 6 O a 9 Q N 5 t 5 T j T d U D T o q H T u d q O p D x P l 2 c 2 y X K 9 w V + a o H F o M L 9 A m b z T T 1 U 1 m K U 7 G X S o F A C i K N z h D z k o v y J G p W R y v i s X 5 t 7 5 I f u V q v G G I 8 n 3 u 8 O h P M d y y O H R y l V a c i D z B M Z 0 0 x n I H B + d J G 9 I e Y a M m 9 b W 1 L i 4 J o 0 C W n o g o 2 + o l f H P M L i j B u u + b s a 5 K p 6 k F k c c J Y R / x q c S q 0 l V X k p G m 6 9 2 J I 4 d n M G j c h i p X E G h 1 g X o f 9 j X H e m M M B w j p L F G t y + D 0 r 5 K d A 3 3 m + m I q c 9 h i 0 S h q u A 9 n A 7 E 1 I x D l g E 0 g Q g + P 5 Z O e e I N 7 q 5 4 A Q m T 8 i C C C R y n e 2 K w 5 7 X x a G g Z o L f j 7 V j j a e R l z B U g l m t y q 8 B 7 / c 0 J 3 y 4 1 v t 9 H x h j 4 s K D + v u f Z u + M 9 E 6 E 9 3 6 K s J l I i + 3 U 0 P t o p M / b 8 L 4 j c H 1 J Y p P l j a p s y s 8 w k J Z 1 y m H f 6 K j / 0 F H y i 1 V + G v q u i V r l F N + a H E C I z N l C i S M O 4 M q f P U O 1 A + s 9 z k G 2 Z g P N N v + L o Z q n o k j b m K M 4 k d x e x M x a L / E o 9 N d / b z d Y i F Y X l l l E L 7 U o x + y V 0 N 3 l o Q 2 j u h 4 z n + c t C n w H i + V 9 X 4 l 4 r B 8 a m W 9 6 W r X i J / W q E K 2 U O 8 S t 8 d c Q W h C s U U m 2 O a w S r b Y Y Z w 5 H h J w z / R h z 2 U s d S c 5 6 s 5 O U i Q L J q p I L Y v C n q S L l F 4 i Z d R S d D Q N p K n + l e 3 C e G U l 5 U U u v K 2 B p K G r b P K x 0 i / 2 Z S E M x N A 5 G n D M x / N y i N y D B c o P u / X O l N i 8 V W s E b C t o T Q R a m v q H j O m N c P r x C x d s + T a F 8 c 0 w M R 7 2 0 y j 5 s W q 8 = j e s c h l i @ n i x o s "
] ;
} ;
2017-12-15 17:27:00 +00:00
users . users . root . openssh . authorizedKeys . keys = [
" s s h - r s a A A A A B 3 N z a C 1 y c 2 E A A A A D A Q A B A A A E Z g H R 1 Z P D B M U j G W a r / Q m I 2 G i U k Z M 8 p A X R y B D h 8 j 3 h G l x l S + 0 l s B V 6 b T A I 5 F 1 3 i y z T C 4 p C u E u D O 2 O l F B 0 s c w j c O A T c i 8 p h d 8 j T j O I D o d q D a e Q Z X b s h y u U B f y i A V 6 q 0 S c + c U D V 3 D 6 G h z i g H 3 t 8 E i Q m v X m U G m 9 1 6 y F o t T 1 2 o 0 d m 8 3 S C O h 1 n A f 9 Z v e C 1 H z / e E U T v g W v I b 5 8 O d U R 5 F / S 5 O V B n I I J Z 8 t c p 0 B P 9 l y j j J C c A N W k Y J l w a V c N N b 0 U a r C R h v R t p t F j + e / E P q Q x S C a S 2 Q c x W 4 z B s Q 6 C 8 1 T F f 7 W r d H + p w t F g 0 o w l W s x v 5 4 7 s R L L i P f 2 h 2 Y u Q g S o A a W 2 4 N 0 S H h U q v O X d + J y a Y w 7 M A F 8 Q h 3 j H m 2 i J Q R g X N u I N 0 m s F i 1 a l w A e v i l L 2 m n f A t 2 b i Q 9 s S 9 g + C V v Q C w X 3 m g 0 9 E 4 Y 3 U m F L z v s J a f D 9 m e K V r j n D C c X y S e A f t s 5 9 e F m w K t M Q 0 q r E W a c l z U i A 6 A y 3 u D 1 z m a 8 x 1 X E L G T f 8 n x n X C G l 8 s 2 i 2 A P n 7 y 1 T c w e p 6 9 D l E N W S a R e F 5 z B L I k C t I U D d + 8 x B F T F 3 y u 5 C p y R r R M K G a 0 Q X / M t s Q l 4 S G J W a d O T w p M 8 j o I b r I V f K k T N B 2 M c x A j v o 0 i a R o B D m 4 0 9 g i 2 Y c y + N S o U V / K A I U G 7 O y s A Q Z 6 2 h r + E / K w 1 o c J C I V I + 9 v z K x / E n E I H k C S w h Y K l 5 3 9 3 W 7 C S h V J j J U c K c Z d d q X 2 s m S S h X q 8 r X P z h I H k 1 d A V n 5 F f / v G Z T 9 z 9 R 0 Q N 3 z 6 O a 9 Q N 5 t 5 T j T d U D T o q H T u d q O p D x P l 2 c 2 y X K 9 w V + a o H F o M L 9 A m b z T T 1 U 1 m K U 7 G X S o F A C i K N z h D z k o v y J G p W R y v i s X 5 t 7 5 I f u V q v G G I 8 n 3 u 8 O h P M d y y O H R y l V a c i D z B M Z 0 0 x n I H B + d J G 9 I e Y a M m 9 b W 1 L i 4 J o 0 C W n o g o 2 + o l f H P M L i j B u u + b s a 5 K p 6 k F k c c J Y R / x q c S q 0 l V X k p G m 6 9 2 J I 4 d n M G j c h i p X E G h 1 g X o f 9 j X H e m M M B w j p L F G t y + D 0 r 5 K d A 3 3 m + m I q c 9 h i 0 S h q u A 9 n A 7 E 1 I x D l g E 0 g Q g + P 5 Z O e e I N 7 q 5 4 A Q m T 8 i C C C R y n e 2 K w 5 7 X x a G g Z o L f j 7 V j j a e R l z B U g l m t y q 8 B 7 / c 0 J 3 y 4 1 v t 9 H x h j 4 s K D + v u f Z u + M 9 E 6 E 9 3 6 K s J l I i + 3 U 0 P t o p M / b 8 L 4 j c H 1 J Y p P l j a p s y s 8 w k J Z 1 y m H f 6 K j / 0 F H y i 1 V + G v q u i V r l F N + a H E C I z N l C i S M O 4 M q f P U O 1 A + s 9 z k G 2 Z g P N N v + L o Z q n o k j b m K M 4 k d x e x M x a L / E o 9 N d / b z d Y i F Y X l l l E L 7 U o x + y V 0 N 3 l o Q 2 j u h 4 z n + c t C n w H i + V 9 X 4 l 4 r B 8 a m W 9 6 W r X i J / W q E K 2 U O 8 S t 8 d c Q W h C s U U m 2 O a w S r b Y Y Z w 5 H h J w z / R h z 2 U s d S c 5 6 s 5 O U i Q L J q p I L Y v C n q S L l F 4 i Z d R S d D Q N p K n + l e 3 C e G U l 5 U U u v K 2 B p K G r b P K x 0 i / 2 Z S E M x N A 5 G n D M x / N y i N y D B c o P u / X O l N i 8 V W s E b C t o T Q R a m v q H j O m N c P r x C x d s + T a F 8 c 0 w M R 7 2 0 y j 5 s W q 8 = j e s c h l i @ n i x o s "
] ;
# This value determines the NixOS release with which your system is to be
# compatible, in order to avoid breaking some software such as database
# servers. You should change this only after NixOS release notes say you
# should.
2017-12-15 19:43:04 +00:00
system . stateVersion = " 1 7 . 0 9 " ; # Did you read the comment?
2017-12-15 17:27:00 +00:00
2018-04-17 16:42:47 +00:00
hardware . trackpoint = {
enable = true ;
sensitivity = 220 ;
speed = 0 ;
emulateWheel = true ;
} ;
2017-12-15 17:27:00 +00:00
}