summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--jeschli/1systems/bolide/config.nix184
-rw-r--r--jeschli/2configs/vim.nix10
-rw-r--r--krebs/4lib/infest/prepare.sh3
-rw-r--r--krebs/5pkgs/simple/ftb/default.nix51
-rw-r--r--lass/2configs/games.nix4
-rw-r--r--lass/2configs/zsh.nix3
6 files changed, 164 insertions, 91 deletions
diff --git a/jeschli/1systems/bolide/config.nix b/jeschli/1systems/bolide/config.nix
index cb3eb0396..83640801f 100644
--- a/jeschli/1systems/bolide/config.nix
+++ b/jeschli/1systems/bolide/config.nix
@@ -26,7 +26,7 @@
device = "/dev/disk/by-uuid/53f1eeaf-a7ac-456c-a2af-778dd8b8d5b0";
preLVM = true;
allowDiscards = true;
- } ];
+ } ];
# networking.hostName = "bolide"; # Define your hostname.
networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
@@ -42,93 +42,101 @@
# List packages installed in system profile. To search by name, run:
# $ nix-env -qaP | grep wget
- nixpkgs.config.allowUnfree = true;
- environment.systemPackages = with pkgs; [
- wget vim
- # system helper
- ag
- curl
- copyq
- dmenu
- git
- i3lock
- keepass
- networkmanagerapplet
- rsync
- terminator
- tmux
- wget
- # rxvt_unicode
- # editors
- emacs
- # internet
- thunderbird
- chromium
- google-chrome
- # programming languages
- go
- gcc
- ghc
- python35
- python35Packages.pip
- # go tools
- golint
- gotools
- # dev tools
- gnumake
- jetbrains.pycharm-professional
- jetbrains.webstorm
- jetbrains.goland
- # document viewer
- zathura
- ];
-
- # Some programs need SUID wrappers, can be configured further or are
- # started in user sessions.
- # programs.bash.enableCompletion = true;
- # programs.mtr.enable = true;
- # programs.gnupg.agent = { enable = true; enableSSHSupport = true; };
-
- # List services that you want to enable:
-
- # Enable the OpenSSH daemon.
- services.openssh.enable = true;
-
- # Open ports in the firewall.
- # networking.firewall.allowedTCPPorts = [ ... ];
- # networking.firewall.allowedUDPPorts = [ ... ];
- # Or disable the firewall altogether.
- # networking.firewall.enable = false;
-
- # Enable CUPS to print documents.
- # services.printing.enable = true;
-
- # Enable the X11 windowing system.
- services.xserver.enable = true;
- # services.xserver.layout = "us";
- # services.xserver.xkbOptions = "eurosign:e";
-
- services.xserver.displayManager.sddm.enable = true;
- services.xserver.windowManager.xmonad.enable = true;
- services.xserver.windowManager.xmonad.enableContribAndExtras = true;
- # Enable touchpad support.
- # services.xserver.libinput.enable = true;
-
- # Enable the KDE Desktop Environment.
- # services.xserver.displayManager.sddm.enable = true;
- # services.xserver.desktopManager.plasma5.enable = true;
-
- # Define a user account. Don't forget to set a password with ‘passwd’.
- users.extraUsers.jeschli = {
- isNormalUser = true;
- uid = 1000;
- };
-
- # 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.
- system.stateVersion = "17.09"; # Did you read the comment?
+ environment.shellAliases = {
+ n = "nix-shell";
+ stocki = pkgs.writeDash "deploy" ''
+ cd ~/stockholm
+ exec nix-shell -I stockholm="$PWD" --run 'deploy --system="bolide"'
+ '';
+ };
+ nixpkgs.config.allowUnfree = true;
+ environment.systemPackages = with pkgs; [
+ wget vim
+ # system helper
+ ag
+ curl
+ copyq
+ dmenu
+ git
+ i3lock
+ keepass
+ networkmanagerapplet
+ rsync
+ terminator
+ tmux
+ wget
+ # rxvt_unicode
+ # editors
+ emacs
+ # internet
+ thunderbird
+ chromium
+ google-chrome
+ # programming languages
+ go
+ gcc
+ ghc
+ python35
+ python35Packages.pip
+ # go tools
+ golint
+ gotools
+ # dev tools
+ elmPackages.elm
+ gnumake
+ jetbrains.pycharm-professional
+ jetbrains.webstorm
+ jetbrains.goland
+ # document viewer
+ zathura
+ ];
+
+ # Some programs need SUID wrappers, can be configured further or are
+ # started in user sessions.
+ # programs.bash.enableCompletion = true;
+ # programs.mtr.enable = true;
+ # programs.gnupg.agent = { enable = true; enableSSHSupport = true; };
+
+ # List services that you want to enable:
+
+ # Enable the OpenSSH daemon.
+ services.openssh.enable = true;
+
+ # Open ports in the firewall.
+ # networking.firewall.allowedTCPPorts = [ ... ];
+ # networking.firewall.allowedUDPPorts = [ ... ];
+ # Or disable the firewall altogether.
+ # networking.firewall.enable = false;
+
+ # Enable CUPS to print documents.
+ # services.printing.enable = true;
+
+ # Enable the X11 windowing system.
+ services.xserver.enable = true;
+ # services.xserver.layout = "us";
+ # services.xserver.xkbOptions = "eurosign:e";
+
+ services.xserver.displayManager.sddm.enable = true;
+ services.xserver.windowManager.xmonad.enable = true;
+ services.xserver.windowManager.xmonad.enableContribAndExtras = true;
+ # Enable touchpad support.
+ # services.xserver.libinput.enable = true;
+
+ # Enable the KDE Desktop Environment.
+ # services.xserver.displayManager.sddm.enable = true;
+ # services.xserver.desktopManager.plasma5.enable = true;
+
+ # Define a user account. Don't forget to set a password with ‘passwd’.
+ users.extraUsers.jeschli = {
+ isNormalUser = true;
+ uid = 1000;
+ };
+
+ # 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.
+ system.stateVersion = "17.09"; # Did you read the comment?
}
diff --git a/jeschli/2configs/vim.nix b/jeschli/2configs/vim.nix
index 65ce7dfa4..7721b1d40 100644
--- a/jeschli/2configs/vim.nix
+++ b/jeschli/2configs/vim.nix
@@ -20,6 +20,7 @@ let
sha256 = "1z3yhhbmbzfw68qjzyvpbmlyv2a1p814sy5q2knn04kcl30vx94a";
};
};
+
in {
environment.systemPackages = [
(pkgs.vim_configurable.customize {
@@ -65,11 +66,17 @@ in {
let g:molokai_original = 1
let g:rehash256 = 1
'';
-
+ settingsForElm = ''
+ let g:polyglot_disabled = ['elm']
+ let g:elm_detailed_complete = 1
+ let g:elm_format_autosave = 1
+ let g:elm_syntastic_show_warnings = 1
+ '';
in ''
${colorscheme}
${remapStatements}
${setStatements}
+ ${settingsForElm}
${settingsForGo}
" I dont know what this line is about
autocmd BufNewFile,BufRead *.go setlocal noexpandtab tabstop=4 shiftwidth=4
@@ -85,6 +92,7 @@ in {
"surround"
"Syntastic"
"undotree"
+ "elm-vim"
];
}
{ names = [ "vim-addon-nix" ]; ft_regex = "^nix\$"; }
diff --git a/krebs/4lib/infest/prepare.sh b/krebs/4lib/infest/prepare.sh
index 78c1c6ec1..cbc62102c 100644
--- a/krebs/4lib/infest/prepare.sh
+++ b/krebs/4lib/infest/prepare.sh
@@ -81,6 +81,9 @@ prepare_debian() {
}
prepare_nixos_iso() {
+ _which() (
+ type -p "$1"
+ )
mountpoint /mnt
type git 2>/dev/null || nix-env -iA nixos.git
diff --git a/krebs/5pkgs/simple/ftb/default.nix b/krebs/5pkgs/simple/ftb/default.nix
new file mode 100644
index 000000000..199c12b44
--- /dev/null
+++ b/krebs/5pkgs/simple/ftb/default.nix
@@ -0,0 +1,51 @@
+{ stdenv, fetchurl, makeDesktopItem
+, jre, libX11, libXext, libXcursor, libXrandr, libXxf86vm
+, openjdk
+, mesa, openal
+, useAlsa ? false, alsaOss ? null }:
+with stdenv.lib;
+
+assert useAlsa -> alsaOss != null;
+
+let
+ desktopItem = makeDesktopItem {
+ name = "minecraft";
+ exec = "minecraft";
+ icon = "minecraft";
+ comment = "A sandbox-building game";
+ desktopName = "Minecraft";
+ genericName = "minecraft";
+ categories = "Game;";
+ };
+
+in stdenv.mkDerivation {
+ name = "ftb";
+
+ src = fetchurl {
+ url = "http://ftb.cursecdn.com/FTB2/launcher/FTB_Launcher.jar";
+ sha256 = "10ga4jgyfsj5dy4rj2rla0fpnfpnxv8r3bmxpqpwn7fsry4il79v";
+ };
+
+ phases = "installPhase";
+
+ installPhase = ''
+ set -x
+ mkdir -pv $out/bin
+ cp -v $src $out/ftb.jar
+
+ cat > $out/bin/ftb << EOF
+ #!${stdenv.shell}
+
+ export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:${makeLibraryPath [ libX11 libXext libXcursor libXrandr libXxf86vm mesa openal ]}
+ ${if useAlsa then "${alsaOss}/bin/aoss" else "" } \
+ ${jre}/bin/java -jar $out/ftb.jar
+ EOF
+
+ chmod +x $out/bin/ftb
+
+ mkdir -p $out/share/applications
+ ln -s ${desktopItem}/share/applications/* $out/share/applications/
+
+ ${openjdk}/bin/jar xf $out/ftb.jar favicon.png
+ '';
+}
diff --git a/lass/2configs/games.nix b/lass/2configs/games.nix
index 6cea271c1..50362cda4 100644
--- a/lass/2configs/games.nix
+++ b/lass/2configs/games.nix
@@ -73,6 +73,10 @@ in {
extraGroups = [ "audio" "video" "input" "loot" ];
createHome = true;
useDefaultShell = true;
+ packages = with pkgs; [
+ ftb
+ minecraft
+ ];
};
};
diff --git a/lass/2configs/zsh.nix b/lass/2configs/zsh.nix
index f2c32ba26..add30fbf1 100644
--- a/lass/2configs/zsh.nix
+++ b/lass/2configs/zsh.nix
@@ -136,6 +136,5 @@
};
environment.shellAliases.ns = "nix-shell --command zsh";
- users.users.mainUser.shell = "/run/current-system/sw/bin/zsh";
- users.users.root.shell = "/run/current-system/sw/bin/zsh";
+ users.defaultUserShell = "/run/current-system/sw/bin/zsh";
}