From 9694467ba0bd81116d2bbe3ccefab72553933649 Mon Sep 17 00:00:00 2001 From: Noah Masur <7386960+nmasur@users.noreply.github.com> Date: Wed, 2 Aug 2023 22:26:35 -0400 Subject: [PATCH] try making nextcloud apps as flake inputs --- flake.lock | 39 ++++++++++++++++++++++++++++ flake.nix | 18 +++++++++++++ modules/nixos/services/nextcloud.nix | 18 +++---------- overlays/nextcloud-apps.nix | 18 +++++++++++++ 4 files changed, 78 insertions(+), 15 deletions(-) create mode 100644 overlays/nextcloud-apps.nix diff --git a/flake.lock b/flake.lock index 246a013..f24dc85 100644 --- a/flake.lock +++ b/flake.lock @@ -215,6 +215,42 @@ "type": "github" } }, + "nextcloud-cookbook": { + "flake": false, + "locked": { + "narHash": "sha256-XgBwUr26qW6wvqhrnhhhhcN4wkI+eXDHnNSm1HDbP6M=", + "type": "tarball", + "url": "https://github.com/nextcloud/cookbook/releases/download/v0.10.2/Cookbook-0.10.2.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://github.com/nextcloud/cookbook/releases/download/v0.10.2/Cookbook-0.10.2.tar.gz" + } + }, + "nextcloud-external": { + "flake": false, + "locked": { + "narHash": "sha256-gY1nxqK/pHfoxW/9mE7DFtNawgdEV7a4OXpscWY14yk=", + "type": "tarball", + "url": "https://github.com/nextcloud-releases/external/releases/download/v5.2.0/external-v5.2.0.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://github.com/nextcloud-releases/external/releases/download/v5.2.0/external-v5.2.0.tar.gz" + } + }, + "nextcloud-news": { + "flake": false, + "locked": { + "narHash": "sha256-hhXPEITSbCiFs0o+TOsQnSasXBpjU9mA/OFsbzuaCPw=", + "type": "tarball", + "url": "https://github.com/nextcloud/news/releases/download/22.0.0/news.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://github.com/nextcloud/news/releases/download/22.0.0/news.tar.gz" + } + }, "nil": { "inputs": { "flake-utils": "flake-utils", @@ -418,6 +454,9 @@ "disko": "disko", "firefox-darwin": "firefox-darwin", "home-manager": "home-manager", + "nextcloud-cookbook": "nextcloud-cookbook", + "nextcloud-external": "nextcloud-external", + "nextcloud-news": "nextcloud-news", "nil": "nil", "nix2vim": "nix2vim", "nixos-generators": "nixos-generators", diff --git a/flake.nix b/flake.nix index 5953d75..e9b197b 100644 --- a/flake.nix +++ b/flake.nix @@ -146,6 +146,23 @@ flake = false; }; + # Nextcloud Apps + nextcloud-news = { + url = + "https://github.com/nextcloud/news/releases/download/22.0.0/news.tar.gz"; + flake = false; + }; + nextcloud-external = { + url = + "https://github.com/nextcloud-releases/external/releases/download/v5.2.0/external-v5.2.0.tar.gz"; + flake = false; + }; + nextcloud-cookbook = { + url = + "https://github.com/nextcloud/cookbook/releases/download/v0.10.2/Cookbook-0.10.2.tar.gz"; + flake = false; + }; + }; outputs = { nixpkgs, ... }@inputs: @@ -185,6 +202,7 @@ (import ./overlays/tree-sitter.nix inputs) (import ./overlays/caddy.nix inputs) (import ./overlays/mpv-scripts.nix inputs) + (import ./overlays/nextcloud-apps.nix inputs) (import ./overlays/betterlockscreen.nix) ]; diff --git a/modules/nixos/services/nextcloud.nix b/modules/nixos/services/nextcloud.nix index f0e99c3..498894a 100644 --- a/modules/nixos/services/nextcloud.nix +++ b/modules/nixos/services/nextcloud.nix @@ -20,21 +20,9 @@ extraAppsEnable = true; extraApps = with config.services.nextcloud.package.packages.apps; { inherit calendar contacts; - news = pkgs.fetchNextcloudApp { - url = - "https://github.com/nextcloud/news/releases/download/22.0.0/news.tar.gz"; - sha256 = "sha256-hhXPEITSbCiFs0o+TOsQnSasXBpjU9mA/OFsbzuaCPw="; - }; - external = pkgs.fetchNextcloudApp { - url = - "https://github.com/nextcloud-releases/external/releases/download/v5.2.0/external-v5.2.0.tar.gz"; - sha256 = "sha256-gY1nxqK/pHfoxW/9mE7DFtNawgdEV7a4OXpscWY14yk="; - }; - cookbook = pkgs.fetchNextcloudApp { - url = - "https://github.com/nextcloud/cookbook/releases/download/v0.10.2/Cookbook-0.10.2.tar.gz"; - sha256 = "sha256-XgBwUr26qW6wvqhrnhhhhcN4wkI+eXDHnNSm1HDbP6M="; - }; + news = pkgs.nextcloudApps.news; + external = pkgs.nextcloudApps.external; + cookbook = pkgs.nextcloudApps.cookbook; }; }; diff --git a/overlays/nextcloud-apps.nix b/overlays/nextcloud-apps.nix new file mode 100644 index 0000000..5604a25 --- /dev/null +++ b/overlays/nextcloud-apps.nix @@ -0,0 +1,18 @@ +inputs: _final: prev: { + + nextcloudApps = { + news = prev.fetchNextcloudApp { + url = inputs.nextcloud-news.outPath; + sha256 = inputs.nextcloud-news.sha256; + }; + external = prev.fetchNextcloudApp { + url = inputs.nextcloud-external.outPath; + sha256 = inputs.nextcloud-external.sha256; + }; + cookbook = prev.fetchNextcloudApp { + url = inputs.nextcloud-cookbook.outPath; + sha256 = inputs.nextcloud-cookbook.sha256; + }; + }; + +}