From ad76e1a94ebb99b34e1fa021e5a0e0b870f7016f Mon Sep 17 00:00:00 2001
From: Daniel Olsen <daniel.olsen99@gmail.com>
Date: Sat, 14 Oct 2023 16:44:20 +0200
Subject: [PATCH] out-of-your-element: init at 1.2

---
 flake.lock                           | 18 +++++++++---------
 flake.nix                            | 13 ++++++++++---
 pkgs/out-of-your-element/default.nix | 26 ++++++++++++++++++++++++++
 3 files changed, 45 insertions(+), 12 deletions(-)
 create mode 100644 pkgs/out-of-your-element/default.nix

diff --git a/flake.lock b/flake.lock
index e8d4a00..92e22c4 100644
--- a/flake.lock
+++ b/flake.lock
@@ -1,23 +1,23 @@
 {
   "nodes": {
-    "nixpkgs-lib": {
+    "nixpkgs": {
       "locked": {
-        "lastModified": 1673743903,
-        "narHash": "sha256-sloY6KYyVOozJ1CkbgJPpZ99TKIjIvM+04V48C04sMQ=",
-        "owner": "nix-community",
-        "repo": "nixpkgs.lib",
-        "rev": "7555e2dfcbac1533f047021f1744ac8871150f9f",
+        "lastModified": 1697239051,
+        "narHash": "sha256-TvKERJH5h470GWyTOgEKzxdBz9tjQdSGlAFDbHhAI7g=",
+        "owner": "nixos",
+        "repo": "nixpkgs",
+        "rev": "e0c8b6f719e911224906f3c059208a7f0e3441c7",
         "type": "github"
       },
       "original": {
-        "owner": "nix-community",
-        "repo": "nixpkgs.lib",
+        "owner": "nixos",
+        "repo": "nixpkgs",
         "type": "github"
       }
     },
     "root": {
       "inputs": {
-        "nixpkgs-lib": "nixpkgs-lib"
+        "nixpkgs": "nixpkgs"
       }
     }
   },
diff --git a/flake.nix b/flake.nix
index a6125b5..e534bb1 100644
--- a/flake.nix
+++ b/flake.nix
@@ -2,13 +2,20 @@
   description = "NixOS modules for matrix related services";
 
   inputs = {
-    nixpkgs-lib.url = github:nix-community/nixpkgs.lib;
+    # nixpkgs-lib.url = github:nix-community/nixpkgs.lib;
+    nixpkgs.url = github:nixos/nixpkgs;
   };
 
-  outputs = { self, nixpkgs-lib }: {
+  outputs = { self, nixpkgs }:
+  let
+    systems = [ "x86_64-linux"];
+  in {
     nixosModules = {
       default = import ./module.nix;
     };
-    lib = import ./lib.nix { lib = nixpkgs-lib.lib; };
+    lib = import ./lib.nix { lib = nixpkgs.lib; };
+    packages = nixpkgs.lib.genAttrs systems (system: {
+      out-of-your-element = nixpkgs.legacyPackages.${system}.callPackage ./pkgs/out-of-your-element {};
+    });
   };
 }
diff --git a/pkgs/out-of-your-element/default.nix b/pkgs/out-of-your-element/default.nix
new file mode 100644
index 0000000..9aa85d8
--- /dev/null
+++ b/pkgs/out-of-your-element/default.nix
@@ -0,0 +1,26 @@
+{ lib
+, buildNpmPackage
+, fetchFromGitea
+, git
+}:
+
+buildNpmPackage rec {
+  pname = "out-of-your-element";
+  version = "1.2";
+
+  src = fetchFromGitea {
+    domain = "gitdab.com";
+    owner = "cadence";
+    repo = "out-of-your-element";
+    rev = "v1.2";
+    hash = "sha256-rlp6Eens5gV0dwLpICjKaVhxNXXeb/S7l628eXYvZaY=";
+  };
+
+  npmDepsHash = "sha256-ComQ8ua7k8zg0Dzih+MVgjnySpSlLJmLqnwxADCUv7M=";
+
+  dontNpmBuild = true;
+
+  makeCacheWritable = true;
+  npmFlags = [ "--loglevel=verbose" ]; #"--legacy-peer-deps" ];
+
+}