summaryrefslogtreecommitdiffstats
path: root/lass
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2016-04-07 20:29:33 +0200
committertv <tv@krebsco.de>2016-04-07 20:29:33 +0200
commite1a287c78bab2847fee7c4f1a18a765d89ca373f (patch)
tree336fc62199af9b1c38acf2de0a2bafbe8ed72efc /lass
parent033bf438bd2ae39d6a465c475500a24514cc2739 (diff)
parent66b7a76a26a40bd4ecca8c83aafe5f2e5fefa461 (diff)
Merge remote-tracking branch 'gum/master'
Diffstat (limited to 'lass')
-rw-r--r--lass/1systems/helios.nix8
-rw-r--r--lass/1systems/mors.nix29
-rw-r--r--lass/1systems/prism.nix17
-rw-r--r--lass/1systems/uriel.nix9
-rw-r--r--lass/2configs/base.nix12
-rw-r--r--lass/2configs/baseX.nix5
-rw-r--r--lass/2configs/browsers.nix13
-rw-r--r--lass/2configs/cbase.nix93
-rw-r--r--lass/2configs/newsbot-js.nix5
-rw-r--r--lass/2configs/retiolum.nix6
-rw-r--r--lass/2configs/vim.nix65
-rw-r--r--lass/2configs/weechat.nix13
-rw-r--r--lass/2configs/xserver/default.nix1
-rw-r--r--lass/2configs/zsh.nix4
-rw-r--r--lass/3modules/default.nix1
-rw-r--r--lass/3modules/newsbot-js.nix87
-rw-r--r--lass/3modules/owncloud_nginx.nix29
-rw-r--r--lass/3modules/static_nginx.nix15
-rw-r--r--lass/5pkgs/acronym/default.nix13
-rw-r--r--lass/5pkgs/default.nix4
-rw-r--r--lass/5pkgs/mpv-poll/default.nix40
-rw-r--r--lass/5pkgs/newsbot-js/default.nix60
-rw-r--r--lass/5pkgs/newsbot-js/packages.nix1442
-rw-r--r--lass/5pkgs/yt-next/default.nix13
24 files changed, 285 insertions, 1699 deletions
diff --git a/lass/1systems/helios.nix b/lass/1systems/helios.nix
index 0103b6ec0..cc98c2c5b 100644
--- a/lass/1systems/helios.nix
+++ b/lass/1systems/helios.nix
@@ -19,12 +19,8 @@ with builtins;
# };
#}
{
- krebs.iptables = {
- tables = {
- filter.INPUT.rules = [
- { predicate = "-p tcp --dport 8000"; target = "ACCEPT"; precedence = 9001; }
- ];
- };
+ services.elasticsearch = {
+ enable = true;
};
}
];
diff --git a/lass/1systems/mors.nix b/lass/1systems/mors.nix
index 9f492e2c6..1f7a13c56 100644
--- a/lass/1systems/mors.nix
+++ b/lass/1systems/mors.nix
@@ -25,6 +25,7 @@
../2configs/teamviewer.nix
../2configs/libvirt.nix
../2configs/fetchWallpaper.nix
+ ../2configs/cbase.nix
#../2configs/buildbot-standalone.nix
{
#risk of rain port
@@ -141,10 +142,16 @@
services.elasticsearch = {
enable = true;
plugins = [
- pkgs.elasticsearchPlugins.elasticsearch_kopf
+ # pkgs.elasticsearchPlugins.elasticsearch_kopf
];
};
}
+ {
+ services.postgresql = {
+ enable = true;
+ package = pkgs.postgresql;
+ };
+ }
];
krebs.build.host = config.krebs.hosts.mors;
@@ -270,16 +277,17 @@
emulateWheel = true;
};
- services.xserver = {
- videoDriver = "intel";
- vaapiDrivers = [ pkgs.vaapiIntel ];
- deviceSection = ''
- Option "AccelMethod" "sna"
- BusID "PCI:0:2:0"
- '';
- };
+ #services.xserver = {
+ # videoDriver = "intel";
+ # vaapiDrivers = [ pkgs.vaapiIntel ];
+ # deviceSection = ''
+ # Option "AccelMethod" "sna"
+ # BusID "PCI:0:2:0"
+ # '';
+ #};
environment.systemPackages = with pkgs; [
+ acronym
cac-api
sshpass
get
@@ -328,7 +336,4 @@
tapButtons = false;
twoFingerScroll = true;
};
-
- #for google hangout
- users.extraUsers.gm.extraGroups = [ "audio" "video" ];
}
diff --git a/lass/1systems/prism.nix b/lass/1systems/prism.nix
index 05b3470e5..4d40c8d59 100644
--- a/lass/1systems/prism.nix
+++ b/lass/1systems/prism.nix
@@ -83,10 +83,10 @@ in {
{
sound.enable = false;
}
- {
- #workaround for server dying after 6-7h
- boot.kernelPackages = pkgs.linuxPackages_4_2;
- }
+ #{
+ # #workaround for server dying after 6-7h
+ # boot.kernelPackages = pkgs.linuxPackages_4_2;
+ #}
{
nixpkgs.config.allowUnfree = true;
}
@@ -119,7 +119,8 @@ in {
}
{
users.users.chat.openssh.authorizedKeys.keys = [
- "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDJJKlOeAHyi7lToCqRF/hdA2TrtVbrTUd2ayuWsXe9JWiyeyKH/LNY3SrgxCWPZSItE9VK68ghMuVYK/A8IAcgzNhzFYLDxmtsidjiOJBj2ZGsjqevoQ5HuKB/pob8CLW3dr1Rx38Any/XXxpfeO6vemCJMGLTe5gSlrCI+Tk1qNt0Rz+rke73Hwt9wW39g8X3prF2q9ryL9OFCcsoYUE7PIOV9xM1GaDFfTR4bKux7HyFKmG+rBvmJHB5OPW8UAtVZGY/FIChwlmF6QNO5Zym497bG1RCOGplaLpRXVJrmoUkZUO7EazePPxIjz2duWYqFtwl5R9YGy1+a+F58G19DS7wJHM29td117/ZANjRTxE5q/aJm2okJYOVSqhYzdhji+BWVZ5ai7cktpAdtPo++yiZN90LvogXNB64kFxVGuX52xZcA3KLKmvrd47o9k0pzO+oCoArxPFIx0YkHfy/yw7OG8Z+KLK8l9WXWBZO5TpjcydnEcRZ8OEqVhtmDh+9h1zhPphuFBtT1JPbt8m132RUy23qsNRtZ/lnnfQbrxgHPRzVuvA8o4ahOEUdvV9SYnzKb6qMFXGp25EhlcWnR4/toyG6I3paBtByeHkaxjgCuvm9Hob6f/xFr3kEJ4WXTVguyrcFgNg2EcEfdkrTMhNn9OIHEFFQ8whIBv5jlw== JuiceSSH"
+ "ecdsa-sha2-nistp521 AAAAE2VjZHNhLXNoYTItbmlzdHA1MjEAAAAIbmlzdHA1MjEAAACFBAFhFJUMTfPbv3SzqlT9S67Av/m/ctLfTd3mMhD4O9hZc+t+dZmaHWj3v1KujzMBiDp3Yfo2YdVVZLTwTluHD8yNoQH418Vm01nrYHwOsc5J0br3mb0URZSstPiz6/6Fc+PNCDfQ2skUAWUidWiH+JolROFQ4y2lfpLOw+wsK2jj+Gqx6w== JuiceSSH"
+ config.krebs.users.lass-uriel.pubkey
];
}
{
@@ -134,6 +135,12 @@ in {
{ predicate = "-p tcp --dport 80"; target = "ACCEPT"; }
];
}
+ {
+ services.tor = {
+ enable = true;
+ client.enable = true;
+ };
+ }
];
krebs.build.host = config.krebs.hosts.prism;
diff --git a/lass/1systems/uriel.nix b/lass/1systems/uriel.nix
index 0758164f0..4e4eca21f 100644
--- a/lass/1systems/uriel.nix
+++ b/lass/1systems/uriel.nix
@@ -15,15 +15,6 @@ with builtins;
../2configs/bitlbee.nix
../2configs/weechat.nix
../2configs/skype.nix
- {
- users.extraUsers = {
- root = {
- openssh.authorizedKeys.keys = map readFile [
- ../../krebs/Zpubkeys/uriel.ssh.pub
- ];
- };
- };
- }
];
krebs.build.host = config.krebs.hosts.uriel;
diff --git a/lass/2configs/base.nix b/lass/2configs/base.nix
index d2c96fdaa..8017d4270 100644
--- a/lass/2configs/base.nix
+++ b/lass/2configs/base.nix
@@ -54,8 +54,8 @@ with config.krebs.lib;
#secrets-common = "/home/lass/secrets/common";
stockholm = "/home/lass/stockholm";
nixpkgs = {
- url = https://github.com/Lassulus/nixpkgs;
- rev = "d0e3cca04edd5d1b3d61f188b4a5f61f35cdf1ce";
+ url = https://github.com/NixOS/nixpkgs;
+ rev = "40c586b7ce2c559374df435f46d673baf711c543";
dev = "/home/lass/src/nixpkgs";
};
} // optionalAttrs config.krebs.build.host.secure {
@@ -68,8 +68,9 @@ with config.krebs.lib;
users.mutableUsers = false;
+ services.timesyncd.enable = true;
+
#why is this on in the first place?
- services.ntp.enable = false;
services.nscd.enable = false;
boot.tmpOnTmpfs = true;
@@ -81,7 +82,7 @@ with config.krebs.lib;
# multiple-definition-problem when defining environment.variables.EDITOR
environment.extraInit = ''
EDITOR=vim
- PAGER=most
+ MANPAGER=most
'';
environment.systemPackages = with pkgs; [
@@ -104,6 +105,9 @@ with config.krebs.lib;
#stuff for dl
aria2
+
+ #neat utils
+ krebspaste
];
programs.bash = {
diff --git a/lass/2configs/baseX.nix b/lass/2configs/baseX.nix
index ede1c7b7b..6c52240af 100644
--- a/lass/2configs/baseX.nix
+++ b/lass/2configs/baseX.nix
@@ -33,16 +33,19 @@ in {
dmenu
gitAndTools.qgit
- mpv
much
pavucontrol
powertop
push
slock
sxiv
+ xorg.xbacklight
xsel
zathura
+ mpv
+ mpv-poll
+ yt-next
#window manager stuff
#haskellPackages.xmobar
#haskellPackages.yeganesh
diff --git a/lass/2configs/browsers.nix b/lass/2configs/browsers.nix
index eb764068b..47a16d4cb 100644
--- a/lass/2configs/browsers.nix
+++ b/lass/2configs/browsers.nix
@@ -1,6 +1,8 @@
{ config, lib, pkgs, ... }:
let
+ inherit (config.krebs.lib) genid;
+
mainUser = config.users.extraUsers.mainUser;
createChromiumUser = name: extraGroups: packages:
{
@@ -8,6 +10,7 @@ let
inherit name;
inherit extraGroups;
home = "/home/${name}";
+ uid = genid name;
useDefaultShell = true;
createHome = true;
};
@@ -28,6 +31,7 @@ let
inherit name;
inherit extraGroups;
home = "/home/${name}";
+ uid = genid name;
useDefaultShell = true;
createHome = true;
};
@@ -48,16 +52,17 @@ in {
environment.systemPackages = [
(pkgs.writeScriptBin "browser-select" ''
- BROWSER=$(echo -e "ff\ncr\nfb\ngm\nflash" | dmenu)
+ BROWSER=$(echo -e "ff\ncr\nwk\nfb\ngm\nflash" | dmenu)
$BROWSER $@
'')
];
imports = [
- ( createFirefoxUser "ff" [ "audio" ] [ ] )
+ ( createFirefoxUser "ff" [ "audio" ] [ pkgs.firefox ] )
( createChromiumUser "cr" [ "audio" ] [ pkgs.chromium ] )
- ( createChromiumUser "fb" [ ] [ pkgs.chromium ] )
- ( createChromiumUser "gm" [ ] [ pkgs.chromium ] )
+ ( createChromiumUser "wk" [ "audio" ] [ pkgs.chromium ] )
+ ( createChromiumUser "fb" [ "audio" ] [ pkgs.chromium ] )
+ ( createChromiumUser "gm" [ "audio" ] [ pkgs.chromium ] )
( createChromiumUser "flash" [ "audio" ] [ pkgs.flash ] )
];
diff --git a/lass/2configs/cbase.nix b/lass/2configs/cbase.nix
new file mode 100644
index 000000000..9d13bc30d
--- /dev/null
+++ b/lass/2configs/cbase.nix
@@ -0,0 +1,93 @@
+{ config, lib, pkgs, ... }:
+
+let
+ inherit (config.krebs.lib) genid;
+
+in {
+
+ users.extraUsers = {
+ cbasevpn = rec {
+ name = "cbasevpn";
+ uid = genid "cbasevpn";
+ description = "user for running c-base openvpn";
+ home = "/home/${name}";
+ };
+ };
+
+ users.extraGroups.cbasevpn.gid = genid "cbasevpn";
+
+ services.openvpn.servers = {
+ c-base = {
+ config = ''
+ client
+ dev tap
+ proto tcp
+ remote vpn.ext.c-base.org 1194
+ resolv-retry infinite
+ nobind
+ user cbasevpn
+ group cbasevpn
+ persist-key
+ persist-tun
+
+ auth-nocache
+ #auth-user-pass
+ auth-user-pass ${toString <secrets/cbase.txt>}
+
+ comp-lzo
+ verb 3
+
+ #script-security 2
+ #up /etc/openvpn/update-resolv-conf
+ #down /etc/openvpn/update-resolv-conf
+
+ <ca>
+ -----BEGIN CERTIFICATE-----
+ MIIDUjCCArugAwIBAgIJAOOk8EXgjsf5MA0GCSqGSIb3DQEBBQUAMHoxCzAJBgNV
+ BAYTAkRFMQswCQYDVQQIEwJERTEPMA0GA1UEBxMGQmVybGluMQ8wDQYDVQQKEwZj
+ LWJhc2UxGzAZBgNVBAMTEnZwbi5leHQuYy1iYXNlLm9yZzEfMB0GCSqGSIb3DQEJ
+ ARYQYWRtYXhAYy1iYXNlLm9yZzAeFw0wOTAyMTMwOTE1MzdaFw0xOTAyMTEwOTE1
+ MzdaMHoxCzAJBgNVBAYTAkRFMQswCQYDVQQIEwJERTEPMA0GA1UEBxMGQmVybGlu
+ MQ8wDQYDVQQKEwZjLWJhc2UxGzAZBgNVBAMTEnZwbi5leHQuYy1iYXNlLm9yZzEf
+ MB0GCSqGSIb3DQEJARYQYWRtYXhAYy1iYXNlLm9yZzCBnzANBgkqhkiG9w0BAQEF
+ AAOBjQAwgYkCgYEAt3wEgXbqFKxs8z/E4rv13hkRi6J+QdshNzntm7rTOmUsXKE7
+ IEwoJSglrmsDPv4UqE86A7bjW7YYSFjhzxFRkTEHJanyOCF48ZPItVl7Eq7T81co
+ uR+6lAhxnLDrwnPJCC83NzAa6lw8U1DsQRDkayKlrQrtZq6++pFFEvZvt1cCAwEA
+ AaOB3zCB3DAdBgNVHQ4EFgQUqkSbdXS90+HtqXDeAI+PcyTSSHEwgawGA1UdIwSB
+ pDCBoYAUqkSbdXS90+HtqXDeAI+PcyTSSHGhfqR8MHoxCzAJBgNVBAYTAkRFMQsw
+ CQYDVQQIEwJERTEPMA0GA1UEBxMGQmVybGluMQ8wDQYDVQQKEwZjLWJhc2UxGzAZ
+ BgNVBAMTEnZwbi5leHQuYy1iYXNlLm9yZzEfMB0GCSqGSIb3DQEJARYQYWRtYXhA
+ Yy1iYXNlLm9yZ4IJAOOk8EXgjsf5MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEF
+ BQADgYEAOBANG1H4uEEWk3sbeQoSMeA3LFG1+6MgFGk2WAdeHYuV9GKYBq6/PLP5
+ ffw+FNkiDjLSeSQO88vHYJr2V1v8n/ZoCIT+1VBcDWXTpGz0YxDI1iBauO3tUPzK
+ wGs46RA/S0YwiZw64MaUHd88ZVadjKy9kNoO3w6/vpAS6s/Mh+o=
+ -----END CERTIFICATE-----
+ </ca>
+ key-direction 1
+ <tls-auth>
+ #
+ # 2048 bit OpenVPN static key
+ #
+ -----BEGIN OpenVPN Static key V1-----
+ 5d49aa8c9cec18de7ab6e0b5cd09a368
+ d3f1b8b77e055e448804fa0e14f487cb
+ 491681742f96b54a23fb8639aa9ed14e
+ c40b86a5546b888c4f3873f23c956e87
+ 169076ec869127ffc85353fd5928871c
+ da19776b79f723abb366fae6cdfe4ad6
+ 7ef667b7d05a7b78dfd5ea1d2da276dc
+ 5f6c82313fe9c1178c7256b8d1d081b0
+ 4c80bc8f21add61fbc52c158579edc1d
+ bbde230afb9d0e531624ce289a17098a
+ 3261f9144a9a2a6f0da4250c9eed4086
+ 187ec6fa757a454de743a349e32af193
+ e9f8b49b010014bdfb3240d992f2f234
+ 581d0ce05d4e07a2b588ad9b0555b704
+ 9d5edc28efde59226ec8942feed690a1
+ 2acd0c8bc9424d6074d0d495391023b6
+ -----END OpenVPN Static key V1-----
+ </tls-auth>
+ '';
+ };
+ };
+}
diff --git a/lass/2configs/newsbot-js.nix b/lass/2configs/newsbot-js.nix
index 4482c4e9d..d7c68bd7d 100644
--- a/lass/2configs/newsbot-js.nix
+++ b/lass/2configs/newsbot-js.nix
@@ -187,13 +187,10 @@ let
hackernews|https://news.ycombinator.com/rss|#news
'';
in {
- imports = [
- ../3modules/newsbot-js.nix
- ];
environment.systemPackages = [
pkgs.newsbot-js
];
- lass.newsbot-js = {
+ krebs.newsbot-js = {
enable = true;
ircServer = "localhost";
feeds = newsfile;
diff --git a/lass/2configs/retiolum.nix b/lass/2configs/retiolum.nix
index f8a63706e..89e0f217a 100644
--- a/lass/2configs/retiolum.nix
+++ b/lass/2configs/retiolum.nix
@@ -16,11 +16,13 @@
enable = true;
connectTo = [
"prism"
- "cloudkrebs"
- "echelon"
"pigstarter"
"gum"
"flap"
];
};
+
+ nixpkgs.config.packageOverrides = pkgs: {
+ tinc = pkgs.tinc_pre;
+ };
}
diff --git a/lass/2configs/vim.nix b/lass/2configs/vim.nix
index 3fe45e1d1..b40227c61 100644
--- a/lass/2configs/vim.nix
+++ b/lass/2configs/vim.nix
@@ -1,13 +1,42 @@
{ config, pkgs, ... }:
let
- customPlugins.mustang2 = pkgs.vimUtils.buildVimPlugin {
- name = "Mustang2";
- src = pkgs.fetchFromGitHub {
- owner = "croaker";
- repo = "mustang-vim";
- rev = "6533d7d21bf27cae94d9c2caa575f627f003dfd5";
- sha256 = "0zlmcrr04j3dkiivrhqi90f618lmnnnpvbz1b9msfs78cmgw9w67";
+ customPlugins = {
+ mustang2 = pkgs.vimUtils.buildVimPlugin {
+ name = "Mustang2";
+ src = pkgs.fetchFromGitHub {
+ owner = "croaker";
+ repo = "mustang-vim";
+ rev = "6533d7d21bf27cae94d9c2caa575f627f003dfd5";
+ sha256 = "0zlmcrr04j3dkiivrhqi90f618lmnnnpvbz1b9msfs78cmgw9w67";
+ };
+ };
+ unimpaired = pkgs.vimUtils.buildVimPlugin {
+ name = "unimpaired-vim";
+ src = pkgs.fetchFromGitHub {
+ owner = "tpope";
+ repo = "vim-unimpaired";
+ rev = "11dc568dbfd7a56866a4354c737515769f08e9fe";
+ sha256 = "1an941j5ckas8l3vkfhchdzjwcray16229rhv3a1d4pbxifwshi8";
+ };
+ };
+ brogrammer = pkgs.vimUtils.buildVimPlugin {
+ name = "brogrammer";
+ src = pkgs.fetchFromGitHub {
+ owner = "marciomazza";
+ repo = "vim-brogrammer-theme";
+ rev = "3e412d8e8909d8d89eb5a4cbe955b5bc0833a3c3";
+ sha256 = "0am1qk8ls74z5ipgf9viacayq08y9i9vd7sxxiivwgsjh2ancbv6";
+ };
+ };
+ file-line = pkgs.vimUtils.buildVimPlugin {
+ name = "file-line";
+ src = pkgs.fetchFromGitHub {
+ owner = "bogado";
+ repo = "file-line";
+ rev = "f9ffa1879ad84ce4a386110446f395bc1795b72a";
+ sha256 = "173n47w9zd01rcyrrmm194v79xq7d1ggzr19n1lsxrqfgr2c1rvk";
+ };
};
};
@@ -23,7 +52,7 @@ in {
syntax on
" TODO autoload colorscheme file
set background=dark
- colorscheme mustang
+ colorscheme brogrammer
filetype off
filetype plugin indent on
@@ -56,7 +85,8 @@ in {
vnoremap < <gv
vnoremap > >gv
- nmap <esc>q :buffer
+ nmap <esc>q :buffer
+
"Tabwidth
set ts=2 sts=2 sw=2 et
@@ -105,11 +135,26 @@ in {
"esc timeout
set timeoutlen=1000 ttimeoutlen=0
+
+ "foldfunctions
+ inoremap <F9> <C-O>za
+ nnoremap <F9> za
+ onoremap <F9> <C-C>za
+ vnoremap <F9> zf
'';
vimrcConfig.vam.knownPlugins = pkgs.vimPlugins // customPlugins;
vimrcConfig.vam.pluginDictionaries = [
- { names = [ "Gundo" "commentary" "mustang2" ]; }
+ { names = [
+ "brogrammer"
+ "commentary"
+ "extradite"
+ "file-line"
+ "fugitive"
+ "Gundo"
+ "mustang2"
+ "unimpaired"
+ ]; }
{ names = [ "vim-addon-nix" ]; ft_regex = "^nix\$"; }
];
diff --git a/lass/2configs/weechat.nix b/lass/2configs/weechat.nix
index 6a257f0bb..98f5df42a 100644
--- a/lass/2configs/weechat.nix
+++ b/lass/2configs/weechat.nix
@@ -1,14 +1,17 @@
{ config, lib, pkgs, ... }:
-{
- krebs.per-user.chat.packages = [
- pkgs.weechat
- pkgs.tmux
+let
+ inherit (config.krebs.lib) genid;
+in {
+ krebs.per-user.chat.packages = with pkgs; [
+ mosh
+ tmux
+ weechat
];
users.extraUsers.chat = {
home = "/home/chat";
- uid = lib.genid "chat";
+ uid = genid "chat";
useDefaultShell = true;
createHome = true;
openssh.authorizedKeys.keys = [
diff --git a/lass/2configs/xserver/default.nix b/lass/2configs/xserver/default.nix
index 203ed0b09..30afd787e 100644
--- a/lass/2configs/xserver/default.nix
+++ b/lass/2configs/xserver/default.nix
@@ -52,6 +52,7 @@ let
wantedBy = [ "multi-user.target" ];
requires = [ "xserver.service" ];
environment = xmonad-environment;
+ restartIfChanged = false;
serviceConfig = {
ExecStart = "${xmonad-start}/bin/xmonad";
ExecStop = "${xmonad-stop}/bin/xmonad-stop";
diff --git a/lass/2configs/zsh.nix b/lass/2configs/zsh.nix
index 64aa45823..7299e9ac0 100644
--- a/lass/2configs/zsh.nix
+++ b/lass/2configs/zsh.nix
@@ -54,10 +54,6 @@
#eval $( dircolors -b ~/.LS_COLORS )
- #exports
- export EDITOR='vim'
- export MANPAGER='most'
- export PAGER='vim -R -'
# export MANPAGER='sed -r "s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g" | vim -R -c "set ft=man nonu nomod nolist" -'
#beautiful colors
diff --git a/lass/3modules/default.nix b/lass/3modules/default.nix
index 0dcad971c..f891498c2 100644
--- a/lass/3modules/default.nix
+++ b/lass/3modules/default.nix
@@ -3,7 +3,6 @@ _:
imports = [
./xresources.nix
./folderPerms.nix
- ./newsbot-js.nix
./per-user.nix
./urxvtd.nix
./xresources.nix
diff --git a/lass/3modules/newsbot-js.nix b/lass/3modules/newsbot-js.nix
deleted file mode 100644
index 5e340b26f..000000000
--- a/lass/3modules/newsbot-js.nix
+++ /dev/null
@@ -1,87 +0,0 @@
-{ config, lib, pkgs, ... }:
-
-with builtins;
-with lib;
-
-let
- cfg = config.lass.newsbot-js;
-
- out = {
- options.lass.newsbot-js = api;
- config = mkIf cfg.enable imp;
- };
-
- api = {
- enable = mkEnableOption "Enable krebs newsbot";
- ircServer = mkOption {
- type = types.str;
- default = "echelon.retiolum";
- description = "to which server the bot should connect";
- };
- channel = mkOption {
- type = types.str;
- default = "#news";
- description = "post the news in this channel";
- };
- masterNick = mkOption {
- type = types.str;
- default = "knews";
- description = "nickname of the master bot";
- };
- feeds = mkOption {
- type = types.path;
- description = ''
- file with feeds to post
- format:
- $nick|$feedURI
- '';
- };
- urlShortenerHost = mkOption {
- type = types.str;
- default = "echelon";
- description = "what server to use for url shortening, host";
- };
- urlShortenerPort = mkOption {
- type = types.str;
- default = "80";
- description = "what server to use for url shortening, port";
- };
- };
-
- imp = {
- users.extraUsers.newsbot-js = {
- name = "newsbot-js";
- uid = genid "newsbot-js";
- description = "newsbot-js user";
- home = "/var/empty";
- };
-
- systemd.services.newsbot-js = {
- description = "krebs newsbot";
- after = [ "network.target" ];
- wantedBy = [ "multi-user.target" ];
-
- path = with pkgs; [
- newsbot-js
- ];
-
- environment = {
- irc_server = cfg.ircServer;
- master_nick = cfg.masterNick;
- news_channel = cfg.channel;
- feeds_file = cfg.feeds;
- url_shortener_host = cfg.urlShortenerHost;
- url_shortener_port = cfg.urlShortenerPort;
- };
-
- restartIfChanged = true;
-
- serviceConfig = {
- User = "newsbot-js";
- Restart = "always";
- ExecStart = "${pkgs.newsbot-js}/bin/newsbot";
- };
- };
- };
-
-in out
diff --git a/lass/3modules/owncloud_nginx.nix b/lass/3modules/owncloud_nginx.nix
index a10df779e..35d8d04a5 100644
--- a/lass/3modules/owncloud_nginx.nix
+++ b/lass/3modules/owncloud_nginx.nix
@@ -45,24 +45,6 @@ let
instanceid = mkOption {
type = str;
};
- ssl = mkOption {
- type = with types; submodule ({
- options = {
- enable = mkEnableOption "ssl";
- certificate = mkOption {
- type = str;
- };
- certificate_key = mkOption {
- type = str;
- };
- ciphers = mkOption {
- type = str;
- default = "AES128+EECDH:AES128+EDH";
- };
- };
- });
- default = {};
- };
};
}));
default = {};
@@ -72,7 +54,7 @@ let
group = config.services.nginx.group;
imp = {
- krebs.nginx.servers = flip mapAttrs cfg ( name: { domain, folder, ssl, ... }: {
+ krebs.nginx.servers = flip mapAttrs cfg ( name: { domain, folder, ... }: {
server-names = [
"${domain}"
"www.${domain}"
@@ -116,16 +98,7 @@ let
error_page 403 /core/templates/403.php;
error_page 404 /core/templates/404.php;
- ${if ssl.enable then ''
- ssl_certificate ${ssl.certificate};
- ssl_certificate_key ${ssl.certificate_key};
- '' else ""}
'';
- listen = (if ssl.enable then
- [ "80" "443 ssl" ]
- else
- "80"
- );
});
services.phpfpm.poolConfigs = flip mapAttrs cfg (name: { domain, folder, ... }: ''
listen = ${folder}/phpfpm.pool
diff --git a/lass/3modules/static_nginx.nix b/lass/3modules/static_nginx.nix
index 93441cf0d..6e87e9853 100644
--- a/lass/3modules/static_nginx.nix
+++ b/lass/3modules/static_nginx.nix
@@ -42,10 +42,6 @@ let
certificate_key = mkOption {
type = str;
};
- ciphers = mkOption {
- type = str;
- default = "AES128+EECDH:AES128+EDH";
- };
};
});
default = {};
@@ -74,16 +70,7 @@ let
deny all;
'')
];
-
- listen = (if ssl.enable then
- [ "80" "443 ssl" ]
- else
- "80"
- );
- extraConfig = (if ssl.enable then ''
- ssl_certificate ${ssl.certificate};
- ssl_certificate_key ${ssl.certificate_key};
- '' else "");
+ inherit ssl;
});
};
diff --git a/lass/5pkgs/acronym/default.nix b/lass/5pkgs/acronym/default.nix
new file mode 100644
index 000000000..53d5d015a
--- /dev/null
+++ b/lass/5pkgs/acronym/default.nix
@@ -0,0 +1,13 @@
+{ pkgs, ... }:
+
+pkgs.writeScriptBin "acronym" ''
+ #! ${pkgs.bash}/bin/bash
+
+ acro=$1
+
+ curl -s http://www.acronymfinder.com/$acro.html \
+ | grep 'class="result-list__body__rank"' \
+ | sed 's/.*title="\([^"]*\)".*/\1/' \
+ | sed 's/^.* - //' \
+ | sed "s/&#39;/'/g"
+''
diff --git a/lass/5pkgs/default.nix b/lass/5pkgs/default.nix
index ce29ae33c..0c9dd94ca 100644
--- a/lass/5pkgs/default.nix
+++ b/lass/5pkgs/default.nix
@@ -2,14 +2,16 @@
{
nixpkgs.config.packageOverrides = rec {
+ acronym = pkgs.callPackage ./acronym/default.nix {};
firefoxPlugins = {
noscript = pkgs.callPackage ./firefoxPlugins/noscript.nix {};
ublock = pkgs.callPackage ./firefoxPlugins/ublock.nix {};
vimperator = pkgs.callPackage ./firefoxPlugins/vimperator.nix {};
};
- newsbot-js = pkgs.callPackage ./newsbot-js/default.nix {};
+ mpv-poll = pkgs.callPackage ./mpv-poll/default.nix {};
xmonad-lass =
let src = pkgs.writeNixFromCabal "xmonad-lass.nix" ./xmonad-lass; in
pkgs.haskellPackages.callPackage src {};
+ yt-next = pkgs.callPackage ./yt-next/default.nix {};
};
}
diff --git a/lass/5pkgs/mpv-poll/default.nix b/lass/5pkgs/mpv-poll/default.nix
new file mode 100644
index 000000000..ee191843e
--- /dev/null
+++ b/lass/5pkgs/mpv-poll/default.nix
@@ -0,0 +1,40 @@
+{ pkgs, ... }:
+
+pkgs.writeScriptBin "mpv-poll" ''
+ #! ${pkgs.bash}/bin/bash
+
+ pl=$1
+ hist=''${HISTORY:-"./mpv_history"}
+ mpv_options=''${MPV_OPTIONS:-""}
+
+ lastYT=""
+
+ play_video () {
+ toPlay=$1
+ echo $toPlay >> $hist
+ mpv $mpv_options $toPlay
+ }
+
+ if ! [ -e $hist ]; then
+ touch $hist
+ fi
+
+ while :
+ do
+ if [ -s $pl ]; then
+ toPlay=$(head -1 $pl)
+ sed -i '1d' $pl
+ if $(echo $toPlay | grep -Eq 'https?://(www.)?youtube.com/watch'); then
+ lastYT=$toPlay
+ fi
+ play_video $toPlay
+ else
+ if [ -n "$lastYT" ]; then
+ next=$(yt-next $lastYT)
+ lastYT=$next
+ play_video $next
+ fi
+ sleep 1
+ fi
+ done
+''
diff --git a/lass/5pkgs/newsbot-js/default.nix b/lass/5pkgs/newsbot-js/default.nix
deleted file mode 100644
index cabd7422c..000000000
--- a/lass/5pkgs/newsbot-js/default.nix
+++ /dev/null
@@ -1,60 +0,0 @@
-{ stdenv, makeWrapper, lib, buildEnv, fetchgit, nodePackages, nodejs }:
-
-with lib;
-
-let
- np = nodePackages.override {
- generated = ./packages.nix;
- self = np;
- };
-
- node_env = buildEnv {
- name = "node_env";
- paths = [
- np.feedparser
- np.form-data
- np.irc
- np.request
- np.shell-quote
- ];
- pathsToLink = [ "/lib" ];
- ignoreCollisions = true;
- };
-
-in nodePackages.buildNodePackage {
- name = "newsbot-js";
-
- src = fetchgit {
- url = "http://cgit.echelon/newsbot-js/";
- rev = "802b172d0eed6c9625a9cb5db408f5cc8c01784e";
- sha256 = "794fc7845aca311f7cf7b6bdc109b5a25d0e2299322bc6612edadc477b2536e2";
- };
-
- phases = [
- "unpackPhase"
- "installPhase"
- ];
-
- deps = (filter (v: nixType v == "derivation") (attrValues np));
-
- buildInputs = [
- nodejs
- makeWrapper
- ];
-
- installPhase = ''
- mkdir -p $out/bin
-
- cp newsbot.js $out/
- cat > $out/newsbot << EOF