diff options
Diffstat (limited to 'lass')
-rw-r--r-- | lass/1systems/helios.nix | 8 | ||||
-rw-r--r-- | lass/1systems/mors.nix | 29 | ||||
-rw-r--r-- | lass/1systems/prism.nix | 17 | ||||
-rw-r--r-- | lass/1systems/uriel.nix | 9 | ||||
-rw-r--r-- | lass/2configs/base.nix | 12 | ||||
-rw-r--r-- | lass/2configs/baseX.nix | 5 | ||||
-rw-r--r-- | lass/2configs/browsers.nix | 13 | ||||
-rw-r--r-- | lass/2configs/cbase.nix | 93 | ||||
-rw-r--r-- | lass/2configs/newsbot-js.nix | 5 | ||||
-rw-r--r-- | lass/2configs/retiolum.nix | 6 | ||||
-rw-r--r-- | lass/2configs/vim.nix | 65 | ||||
-rw-r--r-- | lass/2configs/weechat.nix | 13 | ||||
-rw-r--r-- | lass/2configs/xserver/default.nix | 1 | ||||
-rw-r--r-- | lass/2configs/zsh.nix | 4 | ||||
-rw-r--r-- | lass/3modules/default.nix | 1 | ||||
-rw-r--r-- | lass/3modules/newsbot-js.nix | 87 | ||||
-rw-r--r-- | lass/3modules/owncloud_nginx.nix | 29 | ||||
-rw-r--r-- | lass/3modules/static_nginx.nix | 15 | ||||
-rw-r--r-- | lass/5pkgs/acronym/default.nix | 13 | ||||
-rw-r--r-- | lass/5pkgs/default.nix | 4 | ||||
-rw-r--r-- | lass/5pkgs/mpv-poll/default.nix | 40 | ||||
-rw-r--r-- | lass/5pkgs/newsbot-js/default.nix | 60 | ||||
-rw-r--r-- | lass/5pkgs/newsbot-js/packages.nix | 1442 | ||||
-rw-r--r-- | lass/5pkgs/yt-next/default.nix | 13 |
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/'/'/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 - ${nodejs}/bin/node $out/newsbot.js - EOF - chmod +x $out/newsbot - - wrapProgram $out/newsbot \ - --prefix NODE_PATH : ${node_env}/lib/node_modules - - ln -s $out/newsbot /$out/bin/newsbot - ''; - -} diff --git a/lass/5pkgs/newsbot-js/packages.nix b/lass/5pkgs/newsbot-js/packages.nix deleted file mode 100644 index 982a9d55c..000000000 --- a/lass/5pkgs/newsbot-js/packages.nix +++ /dev/null @@ -1,1442 +0,0 @@ -{ self, fetchurl, fetchgit ? null, lib }: - -{ - by-spec."addressparser"."~0.1.3" = - self.by-version."addressparser"."0.1.3"; - by-version."addressparser"."0.1.3" = self.buildNodePackage { - name = "addressparser-0.1.3"; - version = "0.1.3"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/addressparser/-/addressparser-0.1.3.tgz"; - name = "addressparser-0.1.3.tgz"; - sha1 = "9e9ab43d257e1ae784e1df5f580c9f5240f58874"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."ansi-color"."0.2.1" = - self.by-version."ansi-color"."0.2.1"; - by-version."ansi-color"."0.2.1" = self.buildNodePackage { - name = "ansi-color-0.2.1"; - version = "0.2.1"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/ansi-color/-/ansi-color-0.2.1.tgz"; - name = "ansi-color-0.2.1.tgz"; - sha1 = "3e75c037475217544ed763a8db5709fa9ae5bf9a"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."ansi-regex"."^2.0.0" = - self.by-version."ansi-regex"."2.0.0"; - by-version."ansi-regex"."2.0.0" = self.buildNodePackage { - name = "ansi-regex-2.0.0"; - version = "2.0.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz"; - name = "ansi-regex-2.0.0.tgz"; - sha1 = "c5061b6e0ef8a81775e50f5d66151bf6bf371107"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."ansi-styles"."^2.1.0" = - self.by-version."ansi-styles"."2.1.0"; - by-version."ansi-styles"."2.1.0" = self.buildNodePackage { - name = "ansi-styles-2.1.0"; - version = "2.1.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/ansi-styles/-/ansi-styles-2.1.0.tgz"; - name = "ansi-styles-2.1.0.tgz"; - sha1 = "990f747146927b559a932bf92959163d60c0d0e2"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."array-filter"."~0.0.0" = - self.by-version."array-filter"."0.0.1"; - by-version."array-filter"."0.0.1" = self.buildNodePackage { - name = "array-filter-0.0.1"; - version = "0.0.1"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz"; - name = "array-filter-0.0.1.tgz"; - sha1 = "7da8cf2e26628ed732803581fd21f67cacd2eeec"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."array-indexofobject"."~0.0.1" = - self.by-version."array-indexofobject"."0.0.1"; - by-version."array-indexofobject"."0.0.1" = self.buildNodePackage { - name = "array-indexofobject-0.0.1"; - version = "0.0.1"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/array-indexofobject/-/array-indexofobject-0.0.1.tgz"; - name = "array-indexofobject-0.0.1.tgz"; - sha1 = "aaa128e62c9b3c358094568c219ff64fe489d42a"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."array-map"."~0.0.0" = - self.by-version."array-map"."0.0.0"; - by-version."array-map"."0.0.0" = self.buildNodePackage { - name = "array-map-0.0.0"; - version = "0.0.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz"; - name = "array-map-0.0.0.tgz"; - sha1 = "88a2bab73d1cf7bcd5c1b118a003f66f665fa662"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."array-reduce"."~0.0.0" = - self.by-version."array-reduce"."0.0.0"; - by-version."array-reduce"."0.0.0" = self.buildNodePackage { - name = "array-reduce-0.0.0"; - version = "0.0.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz"; - name = "array-reduce-0.0.0.tgz"; - sha1 = "173899d3ffd1c7d9383e4479525dbe278cab5f2b"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."asn1"."0.1.11" = - self.by-version."asn1"."0.1.11"; - by-version."asn1"."0.1.11" = self.buildNodePackage { - name = "asn1-0.1.11"; - version = "0.1.11"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/asn1/-/asn1-0.1.11.tgz"; - name = "asn1-0.1.11.tgz"; - sha1 = "559be18376d08a4ec4dbe80877d27818639b2df7"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."assert-plus"."^0.1.5" = - self.by-version."assert-plus"."0.1.5"; - by-version."assert-plus"."0.1.5" = self.buildNodePackage { - name = "assert-plus-0.1.5"; - version = "0.1.5"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/assert-plus/-/assert-plus-0.1.5.tgz"; - name = "assert-plus-0.1.5.tgz"; - sha1 = "ee74009413002d84cec7219c6ac811812e723160"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."async"."^1.4.0" = - self.by-version."async"."1.4.2"; - by-version."async"."1.4.2" = self.buildNodePackage { - name = "async-1.4.2"; - version = "1.4.2"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/async/-/async-1.4.2.tgz"; - name = "async-1.4.2.tgz"; - sha1 = "6c9edcb11ced4f0dd2f2d40db0d49a109c088aab"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."aws-sign2"."~0.5.0" = - self.by-version."aws-sign2"."0.5.0"; - by-version."aws-sign2"."0.5.0" = self.buildNodePackage { - name = "aws-sign2-0.5.0"; - version = "0.5.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/aws-sign2/-/aws-sign2-0.5.0.tgz"; - name = "aws-sign2-0.5.0.tgz"; - sha1 = "c57103f7a17fc037f02d7c2e64b602ea223f7d63"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."bl"."~1.0.0" = - self.by-version."bl"."1.0.0"; - by-version."bl"."1.0.0" = self.buildNodePackage { - name = "bl-1.0.0"; - version = "1.0.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/bl/-/bl-1.0.0.tgz"; - name = "bl-1.0.0.tgz"; - sha1 = "ada9a8a89a6d7ac60862f7dec7db207873e0c3f5"; - }; - deps = { - "readable-stream-2.0.2" = self.by-version."readable-stream"."2.0.2"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."bluebird"."^2.9.30" = - self.by-version."bluebird"."2.10.2"; - by-version."bluebird"."2.10.2" = self.buildNodePackage { - name = "bluebird-2.10.2"; - version = "2.10.2"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/bluebird/-/bluebird-2.10.2.tgz"; - name = "bluebird-2.10.2.tgz"; - sha1 = "024a5517295308857f14f91f1106fc3b555f446b"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."boom"."2.x.x" = - self.by-version."boom"."2.9.0"; - by-version."boom"."2.9.0" = self.buildNodePackage { - name = "boom-2.9.0"; - version = "2.9.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/boom/-/boom-2.9.0.tgz"; - name = "boom-2.9.0.tgz"; - sha1 = "a54b7fd2fee477d351bf9e371680cbea67f12715"; - }; - deps = { - "hoek-2.16.3" = self.by-version."hoek"."2.16.3"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."boom"."^2.8.x" = - self.by-version."boom"."2.9.0"; - by-spec."caseless"."~0.11.0" = - self.by-version."caseless"."0.11.0"; - by-version."caseless"."0.11.0" = self.buildNodePackage { - name = "caseless-0.11.0"; - version = "0.11.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz"; - name = "caseless-0.11.0.tgz"; - sha1 = "715b96ea9841593cc33067923f5ec60ebda4f7d7"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."chalk"."^1.0.0" = - self.by-version."chalk"."1.1.1"; - by-version."chalk"."1.1.1" = self.buildNodePackage { - name = "chalk-1.1.1"; - version = "1.1.1"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/chalk/-/chalk-1.1.1.tgz"; - name = "chalk-1.1.1.tgz"; - sha1 = "509afb67066e7499f7eb3535c77445772ae2d019"; - }; - deps = { - "ansi-styles-2.1.0" = self.by-version."ansi-styles"."2.1.0"; - "escape-string-regexp-1.0.3" = self.by-version."escape-string-regexp"."1.0.3"; - "has-ansi-2.0.0" = self.by-version."has-ansi"."2.0.0"; - "strip-ansi-3.0.0" = self.by-version."strip-ansi"."3.0.0"; - "supports-color-2.0.0" = self.by-version."supports-color"."2.0.0"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."combined-stream"."^1.0.5" = - self.by-version."combined-stream"."1.0.5"; - by-version."combined-stream"."1.0.5" = self.buildNodePackage { - name = "combined-stream-1.0.5"; - version = "1.0.5"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz"; - name = "combined-stream-1.0.5.tgz"; - sha1 = "938370a57b4a51dea2c77c15d5c5fdf895164009"; - }; - deps = { - "delayed-stream-1.0.0" = self.by-version."delayed-stream"."1.0.0"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."combined-stream"."~1.0.1" = - self.by-version."combined-stream"."1.0.5"; - by-spec."commander"."^2.8.1" = - self.by-version."commander"."2.8.1"; - by-version."commander"."2.8.1" = self.buildNodePackage { - name = "commander-2.8.1"; - version = "2.8.1"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/commander/-/commander-2.8.1.tgz"; - name = "commander-2.8.1.tgz"; - sha1 = "06be367febfda0c330aa1e2a072d3dc9762425d4"; - }; - deps = { - "graceful-readlink-1.0.1" = self.by-version."graceful-readlink"."1.0.1"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."core-util-is"."~1.0.0" = - self.by-version."core-util-is"."1.0.1"; - by-version."core-util-is"."1.0.1" = self.buildNodePackage { - name = "core-util-is-1.0.1"; - version = "1.0.1"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/core-util-is/-/core-util-is-1.0.1.tgz"; - name = "core-util-is-1.0.1.tgz"; - sha1 = "6b07085aef9a3ccac6ee53bf9d3df0c1521a5538"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."cryptiles"."2.x.x" = - self.by-version."cryptiles"."2.0.5"; - by-version."cryptiles"."2.0.5" = self.buildNodePackage { - name = "cryptiles-2.0.5"; - version = "2.0.5"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz"; - name = "cryptiles-2.0.5.tgz"; - sha1 = "3bdfecdc608147c1c67202fa291e7dca59eaa3b8"; - }; - deps = { - "boom-2.9.0" = self.by-version."boom"."2.9.0"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."ctype"."0.5.3" = - self.by-version."ctype"."0.5.3"; - by-version."ctype"."0.5.3" = self.buildNodePackage { - name = "ctype-0.5.3"; - version = "0.5.3"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/ctype/-/ctype-0.5.3.tgz"; - name = "ctype-0.5.3.tgz"; - sha1 = "82c18c2461f74114ef16c135224ad0b9144ca12f"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."delayed-stream"."~1.0.0" = - self.by-version."delayed-stream"."1.0.0"; - by-version."delayed-stream"."1.0.0" = self.buildNodePackage { - name = "delayed-stream-1.0.0"; - version = "1.0.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz"; - name = "delayed-stream-1.0.0.tgz"; - sha1 = "df3ae199acadfb7d440aaae0b29e2272b24ec619"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."escape-string-regexp"."^1.0.2" = - self.by-version."escape-string-regexp"."1.0.3"; - by-version."escape-string-regexp"."1.0.3" = self.buildNodePackage { - name = "escape-string-regexp-1.0.3"; - version = "1.0.3"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz"; - name = "escape-string-regexp-1.0.3.tgz"; - sha1 = "9e2d8b25bc2555c3336723750e03f099c2735bb5"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."extend"."~3.0.0" = - self.by-version."extend"."3.0.0"; - by-version."extend"."3.0.0" = self.buildNodePackage { - name = "extend-3.0.0"; - version = "3.0.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/extend/-/extend-3.0.0.tgz"; - name = "extend-3.0.0.tgz"; - sha1 = "5a474353b9f3353ddd8176dfd37b91c83a46f1d4"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."feedparser"."*" = - self.by-version."feedparser"."1.1.3"; - by-version."feedparser"."1.1.3" = self.buildNodePackage { - name = "feedparser-1.1.3"; - version = "1.1.3"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/feedparser/-/feedparser-1.1.3.tgz"; - name = "feedparser-1.1.3.tgz"; - sha1 = "0b725f6b4cbe4b26d518baec0d010ad020156c8b"; - }; - deps = { - "sax-0.6.1" = self.by-version."sax"."0.6.1"; - "addressparser-0.1.3" = self.by-version."addressparser"."0.1.3"; - "array-indexofobject-0.0.1" = self.by-version."array-indexofobject"."0.0.1"; - "readable-stream-1.0.33" = self.by-version."readable-stream"."1.0.33"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - "feedparser" = self.by-version."feedparser"."1.1.3"; - by-spec."forever-agent"."~0.6.0" = - self.by-version."forever-agent"."0.6.1"; - by-version."forever-agent"."0.6.1" = self.buildNodePackage { - name = "forever-agent-0.6.1"; - version = "0.6.1"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz"; - name = "forever-agent-0.6.1.tgz"; - sha1 = "fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."form-data"."*" = - self.by-version."form-data"."1.0.0-rc3"; - by-version."form-data"."1.0.0-rc3" = self.buildNodePackage { - name = "form-data-1.0.0-rc3"; - version = "1.0.0-rc3"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/form-data/-/form-data-1.0.0-rc3.tgz"; - name = "form-data-1.0.0-rc3.tgz"; - sha1 = "d35bc62e7fbc2937ae78f948aaa0d38d90607577"; - }; - deps = { - "async-1.4.2" = self.by-version."async"."1.4.2"; - "combined-stream-1.0.5" = self.by-version."combined-stream"."1.0.5"; - "mime-types-2.1.7" = self.by-version."mime-types"."2.1.7"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - "form-data" = self.by-version."form-data"."1.0.0-rc3"; - by-spec."form-data"."~1.0.0-rc1" = - self.by-version."form-data"."1.0.0-rc3"; - by-spec."generate-function"."^2.0.0" = - self.by-version."generate-function"."2.0.0"; - by-version."generate-function"."2.0.0" = self.buildNodePackage { - name = "generate-function-2.0.0"; - version = "2.0.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz"; - name = "generate-function-2.0.0.tgz"; - sha1 = "6858fe7c0969b7d4e9093337647ac79f60dfbe74"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."generate-object-property"."^1.1.0" = - self.by-version."generate-object-property"."1.2.0"; - by-version."generate-object-property"."1.2.0" = self.buildNodePackage { - name = "generate-object-property-1.2.0"; - version = "1.2.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz"; - name = "generate-object-property-1.2.0.tgz"; - sha1 = "9c0e1c40308ce804f4783618b937fa88f99d50d0"; - }; - deps = { - "is-property-1.0.2" = self.by-version."is-property"."1.0.2"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."graceful-readlink".">= 1.0.0" = - self.by-version."graceful-readlink"."1.0.1"; - by-version."graceful-readlink"."1.0.1" = self.buildNodePackage { - name = "graceful-readlink-1.0.1"; - version = "1.0.1"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz"; - name = "graceful-readlink-1.0.1.tgz"; - sha1 = "4cafad76bc62f02fa039b2f94e9a3dd3a391a725"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."har-validator"."^1.6.1" = - self.by-version."har-validator"."1.8.0"; - by-version."har-validator"."1.8.0" = self.buildNodePackage { - name = "har-validator-1.8.0"; - version = "1.8.0"; - bin = true; - src = fetchurl { - url = "http://registry.npmjs.org/har-validator/-/har-validator-1.8.0.tgz"; - name = "har-validator-1.8.0.tgz"; - sha1 = "d83842b0eb4c435960aeb108a067a3aa94c0eeb2"; - }; - deps = { - "bluebird-2.10.2" = self.by-version."bluebird"."2.10.2"; - "chalk-1.1.1" = self.by-version."chalk"."1.1.1"; - "commander-2.8.1" = self.by-version."commander"."2.8.1"; - "is-my-json-valid-2.12.2" = self.by-version."is-my-json-valid"."2.12.2"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."has-ansi"."^2.0.0" = - self.by-version."has-ansi"."2.0.0"; - by-version."has-ansi"."2.0.0" = self.buildNodePackage { - name = "has-ansi-2.0.0"; - version = "2.0.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz"; - name = "has-ansi-2.0.0.tgz"; - sha1 = "34f5049ce1ecdf2b0649af3ef24e45ed35416d91"; - }; - deps = { - "ansi-regex-2.0.0" = self.by-version."ansi-regex"."2.0.0"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."hashish"."~0.0.4" = - self.by-version."hashish"."0.0.4"; - by-version."hashish"."0.0.4" = self.buildNodePackage { - name = "hashish-0.0.4"; - version = "0.0.4"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/hashish/-/hashish-0.0.4.tgz"; - name = "hashish-0.0.4.tgz"; - sha1 = "6d60bc6ffaf711b6afd60e426d077988014e6554"; - }; - deps = { - "traverse-0.6.6" = self.by-version."traverse"."0.6.6"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."hawk"."~3.1.0" = - self.by-version."hawk"."3.1.0"; - by-version."hawk"."3.1.0" = self.buildNodePackage { - name = "hawk-3.1.0"; - version = "3.1.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/hawk/-/hawk-3.1.0.tgz"; - name = "hawk-3.1.0.tgz"; - sha1 = "8a13ae19977ec607602f3f0b9fd676f18c384e44"; - }; - deps = { - "hoek-2.16.3" = self.by-version."hoek"."2.16.3"; - "boom-2.9.0" = self.by-version."boom"."2.9.0"; - "cryptiles-2.0.5" = self.by-version."cryptiles"."2.0.5"; - "sntp-1.0.9" = self.by-version."sntp"."1.0.9"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."hoek"."2.x.x" = - self.by-version."hoek"."2.16.3"; - by-version."hoek"."2.16.3" = self.buildNodePackage { - name = "hoek-2.16.3"; - version = "2.16.3"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz"; - name = "hoek-2.16.3.tgz"; - sha1 = "20bb7403d3cea398e91dc4710a8ff1b8274a25ed"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."http-signature"."~0.11.0" = - self.by-version."http-signature"."0.11.0"; - by-version."http-signature"."0.11.0" = self.buildNodePackage { - name = "http-signature-0.11.0"; - version = "0.11.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/http-signature/-/http-signature-0.11.0.tgz"; - name = "http-signature-0.11.0.tgz"; - sha1 = "1796cf67a001ad5cd6849dca0991485f09089fe6"; - }; - deps = { - "assert-plus-0.1.5" = self.by-version."assert-plus"."0.1.5"; - "asn1-0.1.11" = self.by-version."asn1"."0.1.11"; - "ctype-0.5.3" = self.by-version."ctype"."0.5.3"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."iconv"."~2.1.6" = - self.by-version."iconv"."2.1.11"; - by-version."iconv"."2.1.11" = self.buildNodePackage { - name = "iconv-2.1.11"; - version = "2.1.11"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/iconv/-/iconv-2.1.11.tgz"; - name = "iconv-2.1.11.tgz"; - sha1 = "5f5da93a643506f5ceaa8bd9c78d6174f8b9351a"; - }; - deps = { - "nan-2.0.9" = self.by-version."nan"."2.0.9"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."inherits"."~2.0.1" = - self.by-version."inherits"."2.0.1"; - by-version."inherits"."2.0.1" = self.buildNodePackage { - name = "inherits-2.0.1"; - version = "2.0.1"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz"; - name = "inherits-2.0.1.tgz"; - sha1 = "b17d08d326b4423e568eff719f91b0b1cbdf69f1"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."irc"."*" = - self.by-version."irc"."0.4.0"; - by-version."irc"."0.4.0" = self.buildNodePackage { - name = "irc-0.4.0"; - version = "0.4.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/irc/-/irc-0.4.0.tgz"; - name = "irc-0.4.0.tgz"; - sha1 = "316811f0aed73a907cd420cbd61fc7ea522d82da"; - }; - deps = { - "ansi-color-0.2.1" = self.by-version."ansi-color"."0.2.1"; - "irc-colors-1.2.0" = self.by-version."irc-colors"."1.2.0"; - }; - optionalDependencies = { - "iconv-2.1.11" = self.by-version."iconv"."2.1.11"; - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - "irc" = self.by-version."irc"."0.4.0"; - by-spec."irc-colors"."^1.1.0" = - self.by-version."irc-colors"."1.2.0"; - by-version."irc-colors"."1.2.0" = self.buildNodePackage { - name = "irc-colors-1.2.0"; - version = "1.2.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/irc-colors/-/irc-colors-1.2.0.tgz"; - name = "irc-colors-1.2.0.tgz"; - sha1 = "73315b06f8840f4abd181456f08569620a088afd"; - }; - deps = { - "hashish-0.0.4" = self.by-version."hashish"."0.0.4"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."is-my-json-valid"."^2.12.0" = - self.by-version."is-my-json-valid"."2.12.2"; - by-version."is-my-json-valid"."2.12.2" = self.buildNodePackage { - name = "is-my-json-valid-2.12.2"; - version = "2.12.2"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.12.2.tgz"; - name = "is-my-json-valid-2.12.2.tgz"; - sha1 = "0d65859318c846ce3a134402fd3fbc504272ccc9"; - }; - deps = { - "generate-function-2.0.0" = self.by-version."generate-function"."2.0.0"; - "generate-object-property-1.2.0" = self.by-version."generate-object-property"."1.2.0"; - "jsonpointer-2.0.0" = self.by-version."jsonpointer"."2.0.0"; - "xtend-4.0.0" = self.by-version."xtend"."4.0.0"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."is-property"."^1.0.0" = - self.by-version."is-property"."1.0.2"; - by-version."is-property"."1.0.2" = self.buildNodePackage { - name = "is-property-1.0.2"; - version = "1.0.2"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz"; - name = "is-property-1.0.2.tgz"; - sha1 = "57fe1c4e48474edd65b09911f26b1cd4095dda84"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."isarray"."0.0.1" = - self.by-version."isarray"."0.0.1"; - by-version."isarray"."0.0.1" = self.buildNodePackage { - name = "isarray-0.0.1"; - version = "0.0.1"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz"; - name = "isarray-0.0.1.tgz"; - sha1 = "8a18acfca9a8f4177e09abfc6038939b05d1eedf"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."isstream"."~0.1.1" = - self.by-version."isstream"."0.1.2"; - by-version."isstream"."0.1.2" = self.buildNodePackage { - name = "isstream-0.1.2"; - version = "0.1.2"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz"; - name = "isstream-0.1.2.tgz"; - sha1 = "47e63f7af55afa6f92e1500e690eb8b8529c099a"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."json-stringify-safe"."~5.0.0" = - self.by-version."json-stringify-safe"."5.0.1"; - by-version."json-stringify-safe"."5.0.1" = self.buildNodePackage { - name = "json-stringify-safe-5.0.1"; - version = "5.0.1"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz"; - name = "json-stringify-safe-5.0.1.tgz"; - sha1 = "1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."jsonify"."~0.0.0" = - self.by-version."jsonify"."0.0.0"; - by-version."jsonify"."0.0.0" = self.buildNodePackage { - name = "jsonify-0.0.0"; - version = "0.0.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz"; - name = "jsonify-0.0.0.tgz"; - sha1 = "2c74b6ee41d93ca51b7b5aaee8f503631d252a73"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."jsonpointer"."2.0.0" = - self.by-version."jsonpointer"."2.0.0"; - by-version."jsonpointer"."2.0.0" = self.buildNodePackage { - name = "jsonpointer-2.0.0"; - version = "2.0.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/jsonpointer/-/jsonpointer-2.0.0.tgz"; - name = "jsonpointer-2.0.0.tgz"; - sha1 = "3af1dd20fe85463910d469a385e33017d2a030d9"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."mime-db"."~1.19.0" = - self.by-version."mime-db"."1.19.0"; - by-version."mime-db"."1.19.0" = self.buildNodePackage { - name = "mime-db-1.19.0"; - version = "1.19.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/mime-db/-/mime-db-1.19.0.tgz"; - name = "mime-db-1.19.0.tgz"; - sha1 = "496a18198a7ce8244534e25bb102b74fb420fd56"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."mime-types"."^2.1.3" = - self.by-version."mime-types"."2.1.7"; - by-version."mime-types"."2.1.7" = self.buildNodePackage { - name = "mime-types-2.1.7"; - version = "2.1.7"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/mime-types/-/mime-types-2.1.7.tgz"; - name = "mime-types-2.1.7.tgz"; - sha1 = "ff603970e3c731ef6f7f4df3c9a0f463a13c2755"; - }; - deps = { - "mime-db-1.19.0" = self.by-version."mime-db"."1.19.0"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."mime-types"."~2.1.2" = - self.by-version."mime-types"."2.1.7"; - by-spec."nan"."^2.0.0" = - self.by-version."nan"."2.1.0"; - by-version."nan"."2.1.0" = self.buildNodePackage { - name = "nan-2.1.0"; - version = "2.1.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/nan/-/nan-2.1.0.tgz"; - name = "nan-2.1.0.tgz"; - sha1 = "020a7ccedc63fdee85f85967d5607849e74abbe8"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."nan"."~2.0.4" = - self.by-version."nan"."2.0.9"; - by-version."nan"."2.0.9" = self.buildNodePackage { - name = "nan-2.0.9"; - version = "2.0.9"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/nan/-/nan-2.0.9.tgz"; - name = "nan-2.0.9.tgz"; - sha1 = "d02a770f46778842cceb94e17cab31ffc7234a05"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."node-uuid"."~1.4.0" = - self.by-version."node-uuid"."1.4.3"; - by-version."node-uuid"."1.4.3" = self.buildNodePackage { - name = "node-uuid-1.4.3"; - version = "1.4.3"; - bin = true; - src = fetchurl { - url = "http://registry.npmjs.org/node-uuid/-/node-uuid-1.4.3.tgz"; - name = "node-uuid-1.4.3.tgz"; - sha1 = "319bb7a56e7cb63f00b5c0cd7851cd4b4ddf1df9"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."oauth-sign"."~0.8.0" = - self.by-version."oauth-sign"."0.8.0"; - by-version."oauth-sign"."0.8.0" = self.buildNodePackage { - name = "oauth-sign-0.8.0"; - version = "0.8.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.0.tgz"; - name = "oauth-sign-0.8.0.tgz"; - sha1 = "938fdc875765ba527137d8aec9d178e24debc553"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."process-nextick-args"."~1.0.0" = - self.by-version."process-nextick-args"."1.0.3"; - by-version."process-nextick-args"."1.0.3" = self.buildNodePackage { - name = "process-nextick-args-1.0.3"; - version = "1.0.3"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.3.tgz"; - name = "process-nextick-args-1.0.3.tgz"; - sha1 = "e272eed825d5e9f4ea74d8d73b1fe311c3beb630"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."qs"."~5.1.0" = - self.by-version."qs"."5.1.0"; - by-version."qs"."5.1.0" = self.buildNodePackage { - name = "qs-5.1.0"; - version = "5.1.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/qs/-/qs-5.1.0.tgz"; - name = "qs-5.1.0.tgz"; - sha1 = "4d932e5c7ea411cca76a312d39a606200fd50cd9"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."readable-stream"."~1.0.17" = - self.by-version."readable-stream"."1.0.33"; - by-version."readable-stream"."1.0.33" = self.buildNodePackage { - name = "readable-stream-1.0.33"; - version = "1.0.33"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.33.tgz"; - name = "readable-stream-1.0.33.tgz"; - sha1 = "3a360dd66c1b1d7fd4705389860eda1d0f61126c"; - }; - deps = { - "core-util-is-1.0.1" = self.by-version."core-util-is"."1.0.1"; - "isarray-0.0.1" = self.by-version."isarray"."0.0.1"; - "string_decoder-0.10.31" = self.by-version."string_decoder"."0.10.31"; - "inherits-2.0.1" = self.by-version."inherits"."2.0.1"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."readable-stream"."~2.0.0" = - self.by-version."readable-stream"."2.0.2"; - by-version."readable-stream"."2.0.2" = self.buildNodePackage { - name = "readable-stream-2.0.2"; - version = "2.0.2"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/readable-stream/-/readable-stream-2.0.2.tgz"; - name = "readable-stream-2.0.2.tgz"; - sha1 = "bec81beae8cf455168bc2e5b2b31f5bcfaed9b1b"; - }; - deps = { - "core-util-is-1.0.1" = self.by-version."core-util-is"."1.0.1"; - "inherits-2.0.1" = self.by-version."inherits"."2.0.1"; - "isarray-0.0.1" = self.by-version."isarray"."0.0.1"; - "process-nextick-args-1.0.3" = self.by-version."process-nextick-args"."1.0.3"; - "string_decoder-0.10.31" = self.by-version."string_decoder"."0.10.31"; - "util-deprecate-1.0.2" = self.by-version."util-deprecate"."1.0.2"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."request"."*" = - self.by-version."request"."2.64.0"; - by-version."request"."2.64.0" = self.buildNodePackage { - name = "request-2.64.0"; - version = "2.64.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/request/-/request-2.64.0.tgz"; - name = "request-2.64.0.tgz"; - sha1 = "96a582423ce9b4b5c34e9b232e480173f14ba608"; - }; - deps = { - "bl-1.0.0" = self.by-version."bl"."1.0.0"; - "caseless-0.11.0" = self.by-version."caseless"."0.11.0"; - "extend-3.0.0" = self.by-version."extend"."3.0.0"; - "forever-agent-0.6.1" = self.by-version."forever-agent"."0.6.1"; - "form-data-1.0.0-rc3" = self.by-version."form-data"."1.0.0-rc3"; - "json-stringify-safe-5.0.1" = self.by-version."json-stringify-safe"."5.0.1"; - "mime-types-2.1.7" = self.by-version."mime-types"."2.1.7"; - "node-uuid-1.4.3" = self.by-version."node-uuid"."1.4.3"; - "qs-5.1.0" = self.by-version."qs"."5.1.0"; - "tunnel-agent-0.4.1" = self.by-version."tunnel-agent"."0.4.1"; - "tough-cookie-2.2.0" = self.by-version."tough-cookie"."2.2.0"; - "http-signature-0.11.0" = self.by-version."http-signature"."0.11.0"; - "oauth-sign-0.8.0" = self.by-version."oauth-sign"."0.8.0"; - "hawk-3.1.0" = self.by-version."hawk"."3.1.0"; - "aws-sign2-0.5.0" = self.by-version."aws-sign2"."0.5.0"; - "stringstream-0.0.4" = self.by-version."stringstream"."0.0.4"; - "combined-stream-1.0.5" = self.by-version."combined-stream"."1.0.5"; - "isstream-0.1.2" = self.by-version."isstream"."0.1.2"; - "har-validator-1.8.0" = self.by-version."har-validator"."1.8.0"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - "request" = self.by-version."request"."2.64.0"; - by-spec."sax"."~0.6.0" = - self.by-version."sax"."0.6.1"; - by-version."sax"."0.6.1" = self.buildNodePackage { - name = "sax-0.6.1"; - version = "0.6.1"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/sax/-/sax-0.6.1.tgz"; - name = "sax-0.6.1.tgz"; - sha1 = "563b19c7c1de892e09bfc4f2fc30e3c27f0952b9"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."shell-quote"."*" = - self.by-version."shell-quote"."1.4.3"; - by-version."shell-quote"."1.4.3" = self.buildNodePackage { - name = "shell-quote-1.4.3"; - version = "1.4.3"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/shell-quote/-/shell-quote-1.4.3.tgz"; - name = "shell-quote-1.4.3.tgz"; - sha1 = "952c44e0b1ed9013ef53958179cc643e8777466b"; - }; - deps = { - "jsonify-0.0.0" = self.by-version."jsonify"."0.0.0"; - "array-filter-0.0.1" = self.by-version."array-filter"."0.0.1"; - "array-reduce-0.0.0" = self.by-version."array-reduce"."0.0.0"; - "array-map-0.0.0" = self.by-version."array-map"."0.0.0"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - "shell-quote" = self.by-version."shell-quote"."1.4.3"; - by-spec."sntp"."1.x.x" = - self.by-version."sntp"."1.0.9"; - by-version."sntp"."1.0.9" = self.buildNodePackage { - name = "sntp-1.0.9"; - version = "1.0.9"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz"; - name = "sntp-1.0.9.tgz"; - sha1 = "6541184cc90aeea6c6e7b35e2659082443c66198"; - }; - deps = { - "hoek-2.16.3" = self.by-version."hoek"."2.16.3"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."string_decoder"."~0.10.x" = - self.by-version."string_decoder"."0.10.31"; - by-version."string_decoder"."0.10.31" = self.buildNodePackage { - name = "string_decoder-0.10.31"; - version = "0.10.31"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz"; - name = "string_decoder-0.10.31.tgz"; - sha1 = "62e203bc41766c6c28c9fc84301dab1c5310fa94"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."stringstream"."~0.0.4" = - self.by-version."stringstream"."0.0.4"; - by-version."stringstream"."0.0.4" = self.buildNodePackage { - name = "stringstream-0.0.4"; - version = "0.0.4"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/stringstream/-/stringstream-0.0.4.tgz"; - name = "stringstream-0.0.4.tgz"; - sha1 = "0f0e3423f942960b5692ac324a57dd093bc41a92"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."strip-ansi"."^3.0.0" = - self.by-version."strip-ansi"."3.0.0"; - by-version."strip-ansi"."3.0.0" = self.buildNodePackage { - name = "strip-ansi-3.0.0"; - version = "3.0.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.0.tgz"; - name = "strip-ansi-3.0.0.tgz"; - sha1 = "7510b665567ca914ccb5d7e072763ac968be3724"; - }; - deps = { - "ansi-regex-2.0.0" = self.by-version."ansi-regex"."2.0.0"; - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."supports-color"."^2.0.0" = - self.by-version."supports-color"."2.0.0"; - by-version."supports-color"."2.0.0" = self.buildNodePackage { - name = "supports-color-2.0.0"; - version = "2.0.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz"; - name = "supports-color-2.0.0.tgz"; - sha1 = "535d045ce6b6363fa40117084629995e9df324c7"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."tough-cookie".">=0.12.0" = - self.by-version."tough-cookie"."2.2.0"; - by-version."tough-cookie"."2.2.0" = self.buildNodePackage { - name = "tough-cookie-2.2.0"; - version = "2.2.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/tough-cookie/-/tough-cookie-2.2.0.tgz"; - name = "tough-cookie-2.2.0.tgz"; - sha1 = "d4ce661075e5fddb7f20341d3f9931a6fbbadde0"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."traverse".">=0.2.4" = - self.by-version."traverse"."0.6.6"; - by-version."traverse"."0.6.6" = self.buildNodePackage { - name = "traverse-0.6.6"; - version = "0.6.6"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/traverse/-/traverse-0.6.6.tgz"; - name = "traverse-0.6.6.tgz"; - sha1 = "cbdf560fd7b9af632502fed40f918c157ea97137"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."tunnel-agent"."~0.4.0" = - self.by-version."tunnel-agent"."0.4.1"; - by-version."tunnel-agent"."0.4.1" = self.buildNodePackage { - name = "tunnel-agent-0.4.1"; - version = "0.4.1"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.1.tgz"; - name = "tunnel-agent-0.4.1.tgz"; - sha1 = "bbeecff4d679ce753db9462761a88dfcec3c5ab3"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."util-deprecate"."~1.0.1" = - self.by-version."util-deprecate"."1.0.2"; - by-version."util-deprecate"."1.0.2" = self.buildNodePackage { - name = "util-deprecate-1.0.2"; - version = "1.0.2"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz"; - name = "util-deprecate-1.0.2.tgz"; - sha1 = "450d4dc9fa70de732762fbd2d4a28981419a0ccf"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; - by-spec."xtend"."^4.0.0" = - self.by-version."xtend"."4.0.0"; - by-version."xtend"."4.0.0" = self.buildNodePackage { - name = "xtend-4.0.0"; - version = "4.0.0"; - bin = false; - src = fetchurl { - url = "http://registry.npmjs.org/xtend/-/xtend-4.0.0.tgz"; - name = "xtend-4.0.0.tgz"; - sha1 = "8bc36ff87aedbe7ce9eaf0bca36b2354a743840f"; - }; - deps = { - }; - optionalDependencies = { - }; - peerDependencies = []; - os = [ ]; - cpu = [ ]; - }; -} diff --git a/lass/5pkgs/yt-next/default.nix b/lass/5pkgs/yt-next/default.nix new file mode 100644 index 000000000..8132b4f05 --- /dev/null +++ b/lass/5pkgs/yt-next/default.nix @@ -0,0 +1,13 @@ +{ pkgs, ... }: + +pkgs.writeScriptBin "yt-next" '' + #! ${pkgs.bash}/bin/bash + + vid=$1 + num=''${NUM:-1} + + curl -Ls $1 \ + | grep 'href="/watch?v=' \ + | head -n$num \ + | sed 's,.*href="\([^"]*\)".*,https://youtube.com\1,' +'' |