Add matrix-media-repo
This commit is contained in:
parent
58fe9e8965
commit
2c044834ca
7 changed files with 3295 additions and 3 deletions
6
.github/workflows/update-flake.yaml
vendored
6
.github/workflows/update-flake.yaml
vendored
|
@ -17,9 +17,11 @@ jobs:
|
||||||
- name: Update flake.lockfile
|
- name: Update flake.lockfile
|
||||||
run: nix flake update
|
run: nix flake update
|
||||||
- name: Run update script for minecraft
|
- name: Run update script for minecraft
|
||||||
run: ./minecraft/update.sh
|
run: cd minecraft && ./update.sh
|
||||||
- name: Run update script for mastodon
|
- name: Run update script for mastodon
|
||||||
run: ./mastodon/update.sh
|
run: cd mastodon && ./update.sh
|
||||||
|
- name: Run update script for matrix-media-repo
|
||||||
|
run: cd matrix/matrix-media-repo && ./update.sh
|
||||||
- name: Run nix formatter
|
- name: Run nix formatter
|
||||||
run: nix fmt
|
run: nix fmt
|
||||||
- name: Commit and push
|
- name: Commit and push
|
||||||
|
|
87
flake.lock
87
flake.lock
|
@ -31,6 +31,25 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"gomod2nix": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": "nixpkgs",
|
||||||
|
"utils": "utils"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1654019497,
|
||||||
|
"narHash": "sha256-yj53tEaOAJoZ1iEBbZ4TArpgAsLZnmivfr4eD0xF52c=",
|
||||||
|
"owner": "tweag",
|
||||||
|
"repo": "gomod2nix",
|
||||||
|
"rev": "71c797eb0d83f33de7e0247b3ffe7120d98c6b49",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tweag",
|
||||||
|
"repo": "gomod2nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"mastodon": {
|
"mastodon": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
|
@ -47,6 +66,22 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"matrix-media-repo": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1648768263,
|
||||||
|
"narHash": "sha256-H1S9l5S4gcVU482qYCpDW+Ki0r8VkwBgkbUCk6k63sg=",
|
||||||
|
"owner": "turt2live",
|
||||||
|
"repo": "matrix-media-repo",
|
||||||
|
"rev": "3184dbc7720fc103aaf4704be894eac69535e887",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "turt2live",
|
||||||
|
"repo": "matrix-media-repo",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"miifox-net": {
|
"miifox-net": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
|
@ -64,6 +99,38 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1653581809,
|
||||||
|
"narHash": "sha256-Uvka0V5MTGbeOfWte25+tfRL3moECDh1VwokWSZUdoY=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "83658b28fe638a170a19b8933aa008b30640fbd1",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs-go116": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1653232931,
|
||||||
|
"narHash": "sha256-t9cmSEy9HRkQ3kO560qI75sDijkWk1k2U7DFa5C7uNY=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "dab5668f6be905a7f0de39a7d67fd8f78a13d600",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "dab5668f6be905a7f0de39a7d67fd8f78a13d600",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1654953433,
|
"lastModified": 1654953433,
|
||||||
"narHash": "sha256-TwEeh4r50NdWHFAHQSyjCk2cZxgwUfcCCAJOhPdXB28=",
|
"narHash": "sha256-TwEeh4r50NdWHFAHQSyjCk2cZxgwUfcCCAJOhPdXB28=",
|
||||||
|
@ -82,9 +149,27 @@
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"clean-s3-cache": "clean-s3-cache",
|
"clean-s3-cache": "clean-s3-cache",
|
||||||
"flake-utils": "flake-utils",
|
"flake-utils": "flake-utils",
|
||||||
|
"gomod2nix": "gomod2nix",
|
||||||
"mastodon": "mastodon",
|
"mastodon": "mastodon",
|
||||||
|
"matrix-media-repo": "matrix-media-repo",
|
||||||
"miifox-net": "miifox-net",
|
"miifox-net": "miifox-net",
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": "nixpkgs_2",
|
||||||
|
"nixpkgs-go116": "nixpkgs-go116"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"utils": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1653893745,
|
||||||
|
"narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -12,6 +12,10 @@
|
||||||
miifox-net.flake = false;
|
miifox-net.flake = false;
|
||||||
mastodon.url = "github:glitch-soc/mastodon";
|
mastodon.url = "github:glitch-soc/mastodon";
|
||||||
mastodon.flake = false;
|
mastodon.flake = false;
|
||||||
|
nixpkgs-go116.url = "github:NixOS/nixpkgs/dab5668f6be905a7f0de39a7d67fd8f78a13d600";
|
||||||
|
matrix-media-repo.url = "github:turt2live/matrix-media-repo";
|
||||||
|
matrix-media-repo.flake = false;
|
||||||
|
gomod2nix.url = "github:tweag/gomod2nix";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = {
|
outputs = {
|
||||||
|
@ -38,6 +42,7 @@
|
||||||
./web/miifox-net.nix
|
./web/miifox-net.nix
|
||||||
./minecraft/paper.nix
|
./minecraft/paper.nix
|
||||||
./mastodon
|
./mastodon
|
||||||
|
./matrix/matrix-media-repo
|
||||||
]);
|
]);
|
||||||
|
|
||||||
hydraJobs = {
|
hydraJobs = {
|
||||||
|
|
1179
matrix/matrix-media-repo/async-media.patch
Normal file
1179
matrix/matrix-media-repo/async-media.patch
Normal file
File diff suppressed because it is too large
Load diff
28
matrix/matrix-media-repo/default.nix
Normal file
28
matrix/matrix-media-repo/default.nix
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
{inputs, ...} @ args: let
|
||||||
|
pkgs = import inputs.nixpkgs-go116 {inherit (args.pkgs) system;};
|
||||||
|
buildGoApplication = pkgs.callPackage "${inputs.gomod2nix}/builder" {};
|
||||||
|
in {
|
||||||
|
matrix-media-repo = buildGoApplication rec {
|
||||||
|
pname = "matrix-media-repo";
|
||||||
|
version = inputs.matrix-media-repo.lastModifiedDate;
|
||||||
|
src = inputs.matrix-media-repo;
|
||||||
|
patches = [
|
||||||
|
./async-media.patch
|
||||||
|
];
|
||||||
|
go = pkgs.go_1_16;
|
||||||
|
proxyVendor = true;
|
||||||
|
modules = ./gomod2nix.toml;
|
||||||
|
nativeBuildInputs = [
|
||||||
|
pkgs.git
|
||||||
|
];
|
||||||
|
buildPhase = ''
|
||||||
|
GOBIN=$PWD/bin go install -v ./cmd/compile_assets
|
||||||
|
$PWD/bin/compile_assets
|
||||||
|
GOBIN=$PWD/bin go install -ldflags "-X github.com/turt2live/matrix-media-repo/common/version.GitCommit=$(git rev-list -1 HEAD) -X github.com/turt2live/matrix-media-repo/common/version.Version=$(git describe --tags)" -v ./cmd/...
|
||||||
|
'';
|
||||||
|
installPhase = ''
|
||||||
|
mkdir $out
|
||||||
|
cp -rv bin $out
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
1971
matrix/matrix-media-repo/gomod2nix.toml
Normal file
1971
matrix/matrix-media-repo/gomod2nix.toml
Normal file
File diff suppressed because it is too large
Load diff
22
matrix/matrix-media-repo/update.sh
Executable file
22
matrix/matrix-media-repo/update.sh
Executable file
|
@ -0,0 +1,22 @@
|
||||||
|
#!/usr/bin/env nix-shell
|
||||||
|
#! nix-shell -i bash -p nix-prefetch-git jq
|
||||||
|
set -e
|
||||||
|
|
||||||
|
WORK_DIR=$(mktemp -d)
|
||||||
|
URL=https://github.com/turt2live/matrix-media-repo
|
||||||
|
REVISION=$(jq -r '.nodes."matrix-media-repo".locked.rev' ../../flake.lock)
|
||||||
|
TARGET_DIR="$PWD"
|
||||||
|
|
||||||
|
function cleanup {
|
||||||
|
grep "fatal" $WORK_DIR/nix-prefetch-git.out >/dev/stderr || true
|
||||||
|
rm -rf "$WORK_DIR"
|
||||||
|
}
|
||||||
|
trap cleanup EXIT
|
||||||
|
|
||||||
|
echo "Fetching source code $REVISION from $URL"
|
||||||
|
JSON=$(nix-prefetch-git --url "$URL" --rev "$REVISION" 2> $WORK_DIR/nix-prefetch-git.out)
|
||||||
|
SHA=$(echo $JSON | jq -r .sha256)
|
||||||
|
SOURCE_DIR=$(grep '^path is' $WORK_DIR/nix-prefetch-git.out | sed 's/^path is //')
|
||||||
|
|
||||||
|
echo "Creating gomod2nix.toml"
|
||||||
|
nix run github:tweag/gomod2nix -- -dir $SOURCE_DIR -outdir $TARGET_DIR
|
Reference in a new issue