From 9d28068dfe16af04ec4b19c7a583b9a8fee671c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kier=C3=A1n=20Meinhardt?= Date: Sun, 21 Apr 2019 15:22:40 +0200 Subject: [PATCH] merge --- configs/cloud.nix | 4 ++-- configs/default.nix | 6 ++++-- configs/gollum.nix | 5 +++++ configs/{haskell.nix => haskell/default.nix} | 7 ++++++- dot/haskells.nix => configs/haskell/packages.nix | 0 configs/hledger.nix | 4 +++- dot/vimrc | 2 +- modules/hledger.nix | 6 ++++-- modules/telegram-bot.nix | 8 ++++---- systems/catullus/containers.nix | 4 ++-- systems/scardanelli/configuration.nix | 2 +- 11 files changed, 32 insertions(+), 16 deletions(-) create mode 100644 configs/gollum.nix rename configs/{haskell.nix => haskell/default.nix} (90%) rename dot/haskells.nix => configs/haskell/packages.nix (100%) diff --git a/configs/cloud.nix b/configs/cloud.nix index ea675fe..a4b378e 100644 --- a/configs/cloud.nix +++ b/configs/cloud.nix @@ -10,9 +10,9 @@ niveum.seafile.enable = true; - niveum.google-drive = { + niveum.google-drive = rec { enable = true; - directory = "${config.users.users.me.home}/cloud/gdrive"; + directory = "${user.home}/cloud/gdrive"; user = config.users.users.me; }; diff --git a/configs/default.nix b/configs/default.nix index ffbd384..6304f1a 100644 --- a/configs/default.nix +++ b/configs/default.nix @@ -18,9 +18,11 @@ + # + - + @@ -43,9 +45,9 @@ + - { niveum.user = { github = "kmein"; diff --git a/configs/gollum.nix b/configs/gollum.nix new file mode 100644 index 0000000..8c618dd --- /dev/null +++ b/configs/gollum.nix @@ -0,0 +1,5 @@ +{ + services.gollum = { + enable = true; + }; +} diff --git a/configs/haskell.nix b/configs/haskell/default.nix similarity index 90% rename from configs/haskell.nix rename to configs/haskell/default.nix index bba8d11..7d221dc 100644 --- a/configs/haskell.nix +++ b/configs/haskell/default.nix @@ -20,13 +20,18 @@ ''; }; + services.hoogle = { + enable = true; + packages = import ./packages.nix; + }; + environment.systemPackages = with pkgs; [ cabal2nix stack2nix cabal-install hlint haskellPackages.brittany - (haskellPackages.ghcWithHoogle (import )) + (haskellPackages.ghcWithHoogle (import ./packages.nix)) ] ++ map haskell.lib.justStaticExecutables [ haskellPackages.ghcid haskellPackages.hakyll diff --git a/dot/haskells.nix b/configs/haskell/packages.nix similarity index 100% rename from dot/haskells.nix rename to configs/haskell/packages.nix diff --git a/configs/hledger.nix b/configs/hledger.nix index 4662bc8..ee18cc4 100644 --- a/configs/hledger.nix +++ b/configs/hledger.nix @@ -1,4 +1,4 @@ -{ config, ... }: +{ config, pkgs, ... }: { imports = [ ]; @@ -7,6 +7,8 @@ server = { enable = true; user = config.users.users.me; + package = pkgs.unstable.hledger-web; }; + package = pkgs.unstable.hledger; }; } diff --git a/dot/vimrc b/dot/vimrc index fe3c844..61b94b0 100644 --- a/dot/vimrc +++ b/dot/vimrc @@ -122,7 +122,7 @@ if has("autocmd") autocmd bufnewfile,bufread config set filetype=conf autocmd bufnewfile,bufread *.elm packadd elm-vim | set filetype=elm shiftwidth=4 autocmd bufnewfile,bufread *.dhall packadd dhall-vim | set filetype=dhall - autocmd filetype haskell packadd haskell-vim + autocmd filetype haskell packadd haskell-vim | set keywordprg=hoogle\ -i autocmd filetype javascript packadd vim-javascript autocmd filetype make setlocal noexpandtab autocmd filetype html packadd emmet-vim diff --git a/modules/hledger.nix b/modules/hledger.nix index a542bd7..6e02fe0 100644 --- a/modules/hledger.nix +++ b/modules/hledger.nix @@ -5,6 +5,7 @@ let in { options.niveum.hledger = { enable = mkEnableOption "hledger"; + package = mkOption { type = types.package; default = pkgs.hledger; }; server = { enable = mkEnableOption "hledger server"; port = mkOption { type = pkgs.unstable.lib.types.port; default = 5000; }; @@ -15,11 +16,12 @@ in { }; flags = mkOption { type = types.listOf types.str; default = []; }; user = mkOption { type = types.attrs; }; + package = mkOption { type = types.package; default = pkgs.hledger-web; }; }; }; config = mkIf cfg.enable { - environment.systemPackages = [ pkgs.unstable.hledger ]; + environment.systemPackages = [ cfg.package ]; systemd.services.hledger-web = mkIf cfg.server.enable { description = "hledger server"; @@ -28,7 +30,7 @@ in { serviceConfig = { Restart = "always"; ExecStart = '' - ${pkgs.unstable.hledger-web}/bin/hledger-web \ + ${cfg.server.package}/bin/hledger-web \ --port=${toString cfg.server.port} \ --host=${cfg.server.host} \ --capabilities=${concatStringsSep "," cfg.server.capabilities} \ diff --git a/modules/telegram-bot.nix b/modules/telegram-bot.nix index 130c304..58b73a2 100644 --- a/modules/telegram-bot.nix +++ b/modules/telegram-bot.nix @@ -8,14 +8,14 @@ let startAt = bot.time; serviceConfig.Type = "oneshot"; wants = [ "network-online.target" ]; - script = '' + script = lists.concatStringsSep "\n" (map (chatId: '' ${pkgs.curl}/bin/curl -s -X POST "https://api.telegram.org/bot${bot.token}/sendMessage" \ - -d chat_id="${bot.chatId}" \ + -d chat_id="${chatId}" \ -d text="$(${bot.command})" ${ if bot.parseMode == null then "" else "-d parse_mode=${bot.parseMode}" } - ''; + '') bot.chatIds); }; in { options.niveum.telegramBots = mkOption { @@ -24,7 +24,7 @@ in { enable = mkEnableOption "Telegram bot"; time = mkOption { type = types.str; }; token = mkOption { type = types.strMatching "[0-9A-Za-z:-]+"; }; - chatId = mkOption { type = types.strMatching "[0-9]+|@[A-Za-z0-9]+"; }; + chatIds = mkOption { type = types.listOf (types.strMatching "[0-9]+|@[A-Za-z0-9]+"); }; command = mkOption { type = types.str; }; parseMode = mkOption { type = types.nullOr (types.enum ["HTML" "Markdown"]); diff --git a/systems/catullus/containers.nix b/systems/catullus/containers.nix index 066d8d6..a43d17e 100644 --- a/systems/catullus/containers.nix +++ b/systems/catullus/containers.nix @@ -14,7 +14,7 @@ in { enable = true; time = "08:00"; token = lib.strings.removeSuffix "\n" (builtins.readFile ); - chatId = "18980945"; + chatIds = [ "18980945" ]; command = "${pkgs.literature-quote}/bin/literature-quote"; parseMode = "Markdown"; }; @@ -23,7 +23,7 @@ in { enable = true; time = "07:00"; token = lib.strings.removeSuffix "\n" (builtins.readFile ); - chatId = "@autorenkalender"; + chatIds = [ "@autorenkalender" ]; command = "${pkgs.autorenkalender}/bin/autorenkalender"; }; diff --git a/systems/scardanelli/configuration.nix b/systems/scardanelli/configuration.nix index f5b8107..4f4cd7d 100644 --- a/systems/scardanelli/configuration.nix +++ b/systems/scardanelli/configuration.nix @@ -1,7 +1,7 @@ { config, pkgs, ... }: { imports = [ - + { services.xserver.xrandrHeads = [ "eDP1" ]; }