diff --git a/.forgejo/workflows/lint.yml b/.forgejo/workflows/lint.yml
deleted file mode 100644
index 85b68639..00000000
--- a/.forgejo/workflows/lint.yml
+++ /dev/null
@@ -1,22 +0,0 @@
-name: Lint
-
-on: [push]
-
-jobs:
- lint:
- runs-on: docker
- env:
- container:
- image: ghcr.io/catthehacker/ubuntu:js-20.04
- steps:
- - uses: actions/checkout@v3
- - uses: https://github.com/cachix/install-nix-action@v22
- env:
- with:
- nix_path: nixpkgs=channel:nixos-unstable
- - run: |
- sed -i '/^access-tokens/ d' /etc/nix/nix.conf
- nix profile install 'nixpkgs#deadnix' 'nixpkgs#statix' 'nixpkgs#yamllint'
- statix check .
- deadnix -f
- yamllint .
diff --git a/.forgejo/workflows/nix.yml b/.forgejo/workflows/nix.yml
deleted file mode 100644
index a67c4890..00000000
--- a/.forgejo/workflows/nix.yml
+++ /dev/null
@@ -1,22 +0,0 @@
-name: Nix
-
-# on: [push]
-
-jobs:
- lint:
- runs-on: docker
- env:
- container:
- image: ghcr.io/catthehacker/ubuntu:js-20.04
- steps:
- - uses: actions/checkout@v3
- - name: Check Nix flake inputs
- uses: https://github.com/DeterminateSystems/flake-checker-action@v5
- - uses: https://github.com/cachix/install-nix-action@v22
- env:
- with:
- nix_path: nixpkgs=channel:nixos-unstable
- - name: Run `nix flake check`
- run: |
- sed -i '/^access-tokens/ d' /etc/nix/nix.conf
- nix run '.#' -- -V
diff --git a/.forgejo/workflows/plex_update.yml b/.forgejo/workflows/plex_update.yml
index 2d5a2393..c73ba489 100644
--- a/.forgejo/workflows/plex_update.yml
+++ b/.forgejo/workflows/plex_update.yml
@@ -21,6 +21,7 @@ jobs:
- env:
VAULT_ADDR: ${{ secrets.VAULT_ADDR }}
VAULT_TOKEN: ${{ secrets.VAULT_TOKEN }}
+ NIXPKGS_ALLOW_UNFREE: 1
run: |
git config user.name "Forgejo Actions Bot"
git config user.email "<>"
diff --git a/flake.lock b/flake.lock
index 27801f6a..8bcecbf9 100644
--- a/flake.lock
+++ b/flake.lock
@@ -41,28 +41,6 @@
"type": "github"
}
},
- "attic": {
- "inputs": {
- "crane": "crane",
- "flake-compat": "flake-compat",
- "flake-utils": "flake-utils",
- "nixpkgs": "nixpkgs",
- "nixpkgs-stable": "nixpkgs-stable"
- },
- "locked": {
- "lastModified": 1702969472,
- "narHash": "sha256-IJP9sC+/gLUdWhm6TsnWpw6A1zQWUfn53ym63KeLXvU=",
- "owner": "zhaofengli",
- "repo": "attic",
- "rev": "bdafd64910bb2b861cf90fa15f1fc93318b6fbf6",
- "type": "github"
- },
- "original": {
- "owner": "zhaofengli",
- "repo": "attic",
- "type": "github"
- }
- },
"blobs": {
"flake": false,
"locked": {
@@ -81,17 +59,18 @@
},
"colmena": {
"inputs": {
- "flake-compat": "flake-compat_2",
- "flake-utils": "flake-utils_2",
- "nixpkgs": "nixpkgs_2",
+ "flake-compat": "flake-compat",
+ "flake-utils": "flake-utils",
+ "nix-github-actions": "nix-github-actions",
+ "nixpkgs": "nixpkgs",
"stable": "stable"
},
"locked": {
- "lastModified": 1699171528,
- "narHash": "sha256-ZsN6y+tgN5w84oAqRQpMhIvQM39ZNSZoZvn2AK0QYr4=",
+ "lastModified": 1746816769,
+ "narHash": "sha256-ymQzXrfHVT8/RJiGbfrNjEeuzXQan46lUJdxEhgivdM=",
"owner": "zhaofengli",
"repo": "colmena",
- "rev": "665603956a1c3040d756987bc7a810ffe86a3b15",
+ "rev": "df694ee23be7ed7b2d8b42c245a640f0724eb06c",
"type": "github"
},
"original": {
@@ -102,17 +81,17 @@
},
"comma": {
"inputs": {
- "flake-compat": "flake-compat_3",
+ "flake-compat": "flake-compat_2",
"naersk": "naersk",
- "nixpkgs": "nixpkgs_3",
+ "nixpkgs": "nixpkgs_2",
"utils": "utils"
},
"locked": {
- "lastModified": 1703707084,
- "narHash": "sha256-27UMbdvgVu1A1zHnte+7RrNYyhtaQWy1yPm5WqLvX8A=",
+ "lastModified": 1742411560,
+ "narHash": "sha256-a793QMuHjVB8YB8q595rlnXqlOHbuiI7ybbrB6kuJbw=",
"owner": "nix-community",
"repo": "comma",
- "rev": "cbcec3d8288ade32c39b76cf5087417e5c517397",
+ "rev": "650c41b59b4ab16327ad0cdb995c3857b9583987",
"type": "github"
},
"original": {
@@ -122,18 +101,12 @@
}
},
"crane": {
- "inputs": {
- "nixpkgs": [
- "attic",
- "nixpkgs"
- ]
- },
"locked": {
- "lastModified": 1702918879,
- "narHash": "sha256-tWJqzajIvYcaRWxn+cLUB9L9Pv4dQ3Bfit/YjU5ze3g=",
+ "lastModified": 1746291859,
+ "narHash": "sha256-DdWJLA+D5tcmrRSg5Y7tp/qWaD05ATI4Z7h22gd1h7Q=",
"owner": "ipetkov",
"repo": "crane",
- "rev": "7195c00c272fdd92fc74e7d5a0a2844b9fadb2fb",
+ "rev": "dfd9a8dfd09db9aad544c4d3b6c47b12562544a5",
"type": "github"
},
"original": {
@@ -143,27 +116,6 @@
}
},
"crane_2": {
- "inputs": {
- "nixpkgs": [
- "lanzaboote",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1699218802,
- "narHash": "sha256-5l0W4Q7z7A4BCstaF5JuBqXOVrZ3Vqst5+hUnP7EdUc=",
- "owner": "ipetkov",
- "repo": "crane",
- "rev": "2d6c2aaff5a05e443eb15efddc21f9c73720340c",
- "type": "github"
- },
- "original": {
- "owner": "ipetkov",
- "repo": "crane",
- "type": "github"
- }
- },
- "crane_3": {
"flake": false,
"locked": {
"lastModified": 1670284777,
@@ -181,16 +133,16 @@
},
"deploy": {
"inputs": {
- "flake-compat": "flake-compat_4",
- "nixpkgs": "nixpkgs_4",
+ "flake-compat": "flake-compat_3",
+ "nixpkgs": "nixpkgs_3",
"utils": "utils_2"
},
"locked": {
- "lastModified": 1703087360,
- "narHash": "sha256-0VUbWBW8VyiDRuimMuLsEO4elGuUw/nc2WDeuO1eN1M=",
+ "lastModified": 1727447169,
+ "narHash": "sha256-3KyjMPUKHkiWhwR91J1YchF6zb6gvckCAY1jOE+ne0U=",
"owner": "serokell",
"repo": "deploy-rs",
- "rev": "b709d63debafce9f5645a5ba550c9e0983b3d1f7",
+ "rev": "aa07eb05537d4cd025e2310397a6adcedfe72c76",
"type": "github"
},
"original": {
@@ -219,9 +171,9 @@
"inputs": {
"alejandra": "alejandra",
"all-cabal-json": "all-cabal-json",
- "crane": "crane_3",
+ "crane": "crane_2",
"devshell": "devshell",
- "flake-parts": "flake-parts_2",
+ "flake-parts": "flake-parts_4",
"flake-utils-pre-commit": "flake-utils-pre-commit",
"ghc-utils": "ghc-utils",
"gomod2nix": "gomod2nix",
@@ -232,7 +184,7 @@
"nixpkgs"
],
"poetry2nix": "poetry2nix",
- "pre-commit-hooks": "pre-commit-hooks_2"
+ "pre-commit-hooks": "pre-commit-hooks"
},
"locked": {
"lastModified": 1670715183,
@@ -250,15 +202,15 @@
},
"essentials": {
"inputs": {
- "flake-utils": "flake-utils_3",
- "nixpkgs": "nixpkgs_5"
+ "flake-utils": "flake-utils_2",
+ "nixpkgs": "nixpkgs_4"
},
"locked": {
- "lastModified": 1704204809,
- "narHash": "sha256-O76nB41RyfedpCfcO4GU5i2Ng7ZUMbZnF+Ceq0e8LIs=",
+ "lastModified": 1704366612,
+ "narHash": "sha256-ZJDeq0JL13TvkqTDoVwC3yTN87YMC0X8Ee5xrgyRsGk=",
"owner": "jdonszelmann",
"repo": "essentials",
- "rev": "8209683dc3c5edd747efccd187f512771d8f3a0c",
+ "rev": "42d23d82bce3f9da85269f7f8aacdb95c0c0be72",
"type": "github"
},
"original": {
@@ -316,11 +268,11 @@
"flake-compat": {
"flake": false,
"locked": {
- "lastModified": 1673956053,
- "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
+ "lastModified": 1650374568,
+ "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=",
"owner": "edolstra",
"repo": "flake-compat",
- "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
+ "rev": "b4a34015c698c7793d592d66adbab377907a2be8",
"type": "github"
},
"original": {
@@ -332,11 +284,11 @@
"flake-compat_2": {
"flake": false,
"locked": {
- "lastModified": 1650374568,
- "narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=",
+ "lastModified": 1696426674,
+ "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
"owner": "edolstra",
"repo": "flake-compat",
- "rev": "b4a34015c698c7793d592d66adbab377907a2be8",
+ "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
"type": "github"
},
"original": {
@@ -364,11 +316,11 @@
"flake-compat_4": {
"flake": false,
"locked": {
- "lastModified": 1696426674,
- "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
+ "lastModified": 1733328505,
+ "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
"owner": "edolstra",
"repo": "flake-compat",
- "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
+ "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
"type": "github"
},
"original": {
@@ -380,11 +332,11 @@
"flake-compat_5": {
"flake": false,
"locked": {
- "lastModified": 1696426674,
- "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
+ "lastModified": 1747046372,
+ "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
"owner": "edolstra",
"repo": "flake-compat",
- "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
+ "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
"type": "github"
},
"original": {
@@ -396,43 +348,11 @@
"flake-compat_6": {
"flake": false,
"locked": {
- "lastModified": 1668681692,
- "narHash": "sha256-Ht91NGdewz8IQLtWZ9LCeNXMSXHUss+9COoqu6JLmXU=",
+ "lastModified": 1696426674,
+ "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
"owner": "edolstra",
"repo": "flake-compat",
- "rev": "009399224d5e398d03b22badca40a37ac85412a1",
- "type": "github"
- },
- "original": {
- "owner": "edolstra",
- "repo": "flake-compat",
- "type": "github"
- }
- },
- "flake-compat_7": {
- "flake": false,
- "locked": {
- "lastModified": 1673956053,
- "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
- "owner": "edolstra",
- "repo": "flake-compat",
- "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
- "type": "github"
- },
- "original": {
- "owner": "edolstra",
- "repo": "flake-compat",
- "type": "github"
- }
- },
- "flake-compat_8": {
- "flake": false,
- "locked": {
- "lastModified": 1673956053,
- "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
- "owner": "edolstra",
- "repo": "flake-compat",
- "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
+ "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
"type": "github"
},
"original": {
@@ -449,11 +369,11 @@
]
},
"locked": {
- "lastModified": 1698882062,
- "narHash": "sha256-HkhafUayIqxXyHH1X8d9RDl1M2CkFgZLjKD3MzabiEo=",
+ "lastModified": 1743550720,
+ "narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=",
"owner": "hercules-ci",
"repo": "flake-parts",
- "rev": "8c9fa2545007b49a5db5f650ae91f227672c3877",
+ "rev": "c621e8422220273271f52058f618c94e405bb0f5",
"type": "github"
},
"original": {
@@ -463,6 +383,48 @@
}
},
"flake-parts_2": {
+ "inputs": {
+ "nixpkgs-lib": [
+ "nixvim",
+ "nixpkgs"
+ ]
+ },
+ "locked": {
+ "lastModified": 1743550720,
+ "narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=",
+ "owner": "hercules-ci",
+ "repo": "flake-parts",
+ "rev": "c621e8422220273271f52058f618c94e405bb0f5",
+ "type": "github"
+ },
+ "original": {
+ "owner": "hercules-ci",
+ "repo": "flake-parts",
+ "type": "github"
+ }
+ },
+ "flake-parts_3": {
+ "inputs": {
+ "nixpkgs-lib": [
+ "nur",
+ "nixpkgs"
+ ]
+ },
+ "locked": {
+ "lastModified": 1733312601,
+ "narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
+ "owner": "hercules-ci",
+ "repo": "flake-parts",
+ "rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
+ "type": "github"
+ },
+ "original": {
+ "owner": "hercules-ci",
+ "repo": "flake-parts",
+ "type": "github"
+ }
+ },
+ "flake-parts_4": {
"inputs": {
"nixpkgs-lib": "nixpkgs-lib"
},
@@ -482,11 +444,11 @@
},
"flake-utils": {
"locked": {
- "lastModified": 1667395993,
- "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
+ "lastModified": 1659877975,
+ "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=",
"owner": "numtide",
"repo": "flake-utils",
- "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
+ "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0",
"type": "github"
},
"original": {
@@ -510,40 +472,7 @@
"type": "github"
}
},
- "flake-utils_10": {
- "inputs": {
- "systems": "systems_10"
- },
- "locked": {
- "lastModified": 1681202837,
- "narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=",
- "owner": "numtide",
- "repo": "flake-utils",
- "rev": "cfacdce06f30d2b68473a46042957675eebb3401",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "flake-utils",
- "type": "github"
- }
- },
"flake-utils_2": {
- "locked": {
- "lastModified": 1659877975,
- "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=",
- "owner": "numtide",
- "repo": "flake-utils",
- "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "flake-utils",
- "type": "github"
- }
- },
- "flake-utils_3": {
"inputs": {
"systems": "systems_3"
},
@@ -561,16 +490,34 @@
"type": "github"
}
},
- "flake-utils_4": {
+ "flake-utils_3": {
"inputs": {
"systems": "systems_4"
},
"locked": {
- "lastModified": 1701680307,
- "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
+ "lastModified": 1731533236,
+ "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
- "rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
+ "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
+ "type": "github"
+ },
+ "original": {
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "type": "github"
+ }
+ },
+ "flake-utils_4": {
+ "inputs": {
+ "systems": "systems_5"
+ },
+ "locked": {
+ "lastModified": 1731533236,
+ "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
+ "owner": "numtide",
+ "repo": "flake-utils",
+ "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
@@ -581,14 +528,14 @@
},
"flake-utils_5": {
"inputs": {
- "systems": "systems_5"
+ "systems": "systems_6"
},
"locked": {
- "lastModified": 1694529238,
- "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
+ "lastModified": 1731533236,
+ "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
- "rev": "ff7b65b44d01cf9ba6a71320833626af21126384",
+ "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
@@ -598,51 +545,15 @@
}
},
"flake-utils_6": {
- "inputs": {
- "systems": "systems_6"
- },
- "locked": {
- "lastModified": 1701680307,
- "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
- "owner": "numtide",
- "repo": "flake-utils",
- "rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "flake-utils",
- "type": "github"
- }
- },
- "flake-utils_7": {
- "inputs": {
- "systems": "systems_7"
- },
- "locked": {
- "lastModified": 1701680307,
- "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
- "owner": "numtide",
- "repo": "flake-utils",
- "rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "flake-utils",
- "type": "github"
- }
- },
- "flake-utils_8": {
"inputs": {
"systems": "systems_8"
},
"locked": {
- "lastModified": 1685518550,
- "narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=",
+ "lastModified": 1681202837,
+ "narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=",
"owner": "numtide",
"repo": "flake-utils",
- "rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef",
+ "rev": "cfacdce06f30d2b68473a46042957675eebb3401",
"type": "github"
},
"original": {
@@ -651,20 +562,6 @@
"type": "github"
}
},
- "flake-utils_9": {
- "locked": {
- "lastModified": 1678901627,
- "narHash": "sha256-U02riOqrKKzwjsxc/400XnElV+UtPUQWpANPlyazjH0=",
- "owner": "numtide",
- "repo": "flake-utils",
- "rev": "93a2b84fc4b70d9e089d029deacc3583435c2ed6",
- "type": "github"
- },
- "original": {
- "id": "flake-utils",
- "type": "indirect"
- }
- },
"flakeCompat": {
"flake": false,
"locked": {
@@ -697,6 +594,32 @@
"url": "https://gitlab.haskell.org/bgamari/ghc-utils"
}
},
+ "git-hooks": {
+ "inputs": {
+ "flake-compat": [
+ "mailserver",
+ "flake-compat"
+ ],
+ "gitignore": "gitignore_2",
+ "nixpkgs": [
+ "mailserver",
+ "nixpkgs"
+ ]
+ },
+ "locked": {
+ "lastModified": 1742649964,
+ "narHash": "sha256-DwOTp7nvfi8mRfuL1escHDXabVXFGT1VlPD1JHrtrco=",
+ "owner": "cachix",
+ "repo": "git-hooks.nix",
+ "rev": "dcf5072734cb576d2b0c59b2ac44f5050b5eac82",
+ "type": "github"
+ },
+ "original": {
+ "owner": "cachix",
+ "repo": "git-hooks.nix",
+ "type": "github"
+ }
+ },
"gitignore": {
"inputs": {
"nixpkgs": [
@@ -706,11 +629,11 @@
]
},
"locked": {
- "lastModified": 1660459072,
- "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=",
+ "lastModified": 1709087332,
+ "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
"owner": "hercules-ci",
"repo": "gitignore.nix",
- "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73",
+ "rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
"type": "github"
},
"original": {
@@ -722,17 +645,17 @@
"gitignore_2": {
"inputs": {
"nixpkgs": [
- "nixvim",
- "pre-commit-hooks",
+ "mailserver",
+ "git-hooks",
"nixpkgs"
]
},
"locked": {
- "lastModified": 1660459072,
- "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=",
+ "lastModified": 1709087332,
+ "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
"owner": "hercules-ci",
"repo": "gitignore.nix",
- "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73",
+ "rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
"type": "github"
},
"original": {
@@ -743,15 +666,15 @@
},
"gnome-autounlock-keyring": {
"inputs": {
- "flake-utils": "flake-utils_4",
- "nixpkgs": "nixpkgs_6"
+ "flake-utils": "flake-utils_3",
+ "nixpkgs": "nixpkgs_5"
},
"locked": {
- "lastModified": 1702994344,
- "narHash": "sha256-aJPjexHm6bLo+ky1Rw9nDStgXBYuxuWPmo5DSdjj23s=",
+ "lastModified": 1734975080,
+ "narHash": "sha256-MkI4Ow73kPlPyYA0SZ1izaxhtGAiaVtRy8Yv1H7n9hI=",
"ref": "refs/heads/main",
- "rev": "db96c4a4ebc05c8e4f1b427074fc5fe61c026998",
- "revCount": 8,
+ "rev": "e0d291465b5993a9da6e22b96defd34621f99b0d",
+ "revCount": 11,
"type": "git",
"url": "https://git.0x76.dev/v/gnome-autounlock-keyring.git"
},
@@ -783,11 +706,11 @@
]
},
"locked": {
- "lastModified": 1703838268,
- "narHash": "sha256-SRg5nXcdPnrsQR2MTAp7en0NyJnQ2wB1ivmsgEbvN+o=",
+ "lastModified": 1747978958,
+ "narHash": "sha256-pQQnbxWpY3IiZqgelXHIe/OAE/Yv4NSQq7fch7M6nXQ=",
"owner": "nix-community",
"repo": "home-manager",
- "rev": "2aff324cf65f5f98f89d878c056b779466b17db8",
+ "rev": "7419250703fd5eb50e99bdfb07a86671939103ea",
"type": "github"
},
"original": {
@@ -796,12 +719,39 @@
"type": "github"
}
},
+ "ixx": {
+ "inputs": {
+ "flake-utils": [
+ "nixvim",
+ "nuschtosSearch",
+ "flake-utils"
+ ],
+ "nixpkgs": [
+ "nixvim",
+ "nuschtosSearch",
+ "nixpkgs"
+ ]
+ },
+ "locked": {
+ "lastModified": 1737371634,
+ "narHash": "sha256-fTVAWzT1UMm1lT+YxHuVPtH+DATrhYfea3B0MxG/cGw=",
+ "owner": "NuschtOS",
+ "repo": "ixx",
+ "rev": "a1176e2a10ce745ff8f63e4af124ece8fe0b1648",
+ "type": "github"
+ },
+ "original": {
+ "owner": "NuschtOS",
+ "ref": "v0.0.7",
+ "repo": "ixx",
+ "type": "github"
+ }
+ },
"lanzaboote": {
"inputs": {
- "crane": "crane_2",
- "flake-compat": "flake-compat_5",
+ "crane": "crane",
+ "flake-compat": "flake-compat_4",
"flake-parts": "flake-parts",
- "flake-utils": "flake-utils_5",
"nixpkgs": [
"nixpkgs"
],
@@ -809,11 +759,11 @@
"rust-overlay": "rust-overlay"
},
"locked": {
- "lastModified": 1703712542,
- "narHash": "sha256-317EoHaQ5OwRLEjwjQUY57FpLDl75kEBbrohH7zbfRQ=",
+ "lastModified": 1747056319,
+ "narHash": "sha256-qSKcBaISBozadtPq6BomnD+wIYTZIkiua3UuHLaD52c=",
"owner": "nix-community",
"repo": "lanzaboote",
- "rev": "7229dd85f98341520b02fd46662f38d0af511d6d",
+ "rev": "2e425f3da6ce7f5b34fa6eaf7a2a7f78dbabcc85",
"type": "github"
},
"original": {
@@ -822,22 +772,6 @@
"type": "github"
}
},
- "lowdown-src": {
- "flake": false,
- "locked": {
- "lastModified": 1633514407,
- "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=",
- "owner": "kristapsdz",
- "repo": "lowdown",
- "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8",
- "type": "github"
- },
- "original": {
- "owner": "kristapsdz",
- "repo": "lowdown",
- "type": "github"
- }
- },
"mach-nix": {
"flake": false,
"locked": {
@@ -856,20 +790,19 @@
"mailserver": {
"inputs": {
"blobs": "blobs",
- "flake-compat": "flake-compat_6",
+ "flake-compat": "flake-compat_5",
+ "git-hooks": "git-hooks",
"nixpkgs": [
"nixpkgs"
],
- "nixpkgs-22_11": "nixpkgs-22_11",
- "nixpkgs-23_05": "nixpkgs-23_05",
- "utils": "utils_3"
+ "nixpkgs-25_05": "nixpkgs-25_05"
},
"locked": {
- "lastModified": 1703666786,
- "narHash": "sha256-SLPNpM/rI8XPyVJAxMYAe+n6NiYSpuXvdwPILHP4yZI=",
+ "lastModified": 1747965231,
+ "narHash": "sha256-BW3ktviEhfCN/z3+kEyzpDKAI8qFTwO7+S0NVA0C90o=",
"owner": "simple-nixos-mailserver",
"repo": "nixos-mailserver",
- "rev": "b5023b36a1f6628865cb42b4353bd2ddde0ea9f4",
+ "rev": "53007af63fade28853408370c4c600a63dd97f41",
"type": "gitlab"
},
"original": {
@@ -880,16 +813,16 @@
},
"microvm": {
"inputs": {
- "flake-utils": "flake-utils_6",
- "nixpkgs": "nixpkgs_7",
+ "flake-utils": "flake-utils_4",
+ "nixpkgs": "nixpkgs_6",
"spectrum": "spectrum"
},
"locked": {
- "lastModified": 1703769051,
- "narHash": "sha256-izOj8XRoHUXkWHpxznOaYHpj30J8/f3ynr7H6oYcNho=",
+ "lastModified": 1747859546,
+ "narHash": "sha256-tDu6JFzM86y5L2eLAkkw5Aklzz0DwfohtcxRXw+fCHA=",
"owner": "astro",
"repo": "microvm.nix",
- "rev": "c39a472523d3c99ddfa88df62223a21b19793490",
+ "rev": "91ba136db1a3dd73168639c185fa802eb1157ec1",
"type": "github"
},
"original": {
@@ -906,11 +839,11 @@
]
},
"locked": {
- "lastModified": 1697664192,
- "narHash": "sha256-nRTG3rYEGFV2+putRiC96+kNXDyKaPJgT6K/1FWN7yo=",
+ "lastModified": 1721727458,
+ "narHash": "sha256-r/xppY958gmZ4oTfLiHN0ZGuQ+RSTijDblVgVLFi1mw=",
"owner": "nix-community",
"repo": "naersk",
- "rev": "636a9b5dd7f2ad7d7c3af929ecf95e4d4fab9e97",
+ "rev": "3fb418eaf352498f6b6c30592e3beb63df42ef11",
"type": "github"
},
"original": {
@@ -941,23 +874,25 @@
"type": "github"
}
},
- "nix": {
+ "nix-github-actions": {
"inputs": {
- "lowdown-src": "lowdown-src",
- "nixpkgs": "nixpkgs_11",
- "nixpkgs-regression": "nixpkgs-regression"
+ "nixpkgs": [
+ "colmena",
+ "nixpkgs"
+ ]
},
"locked": {
- "lastModified": 1654239108,
- "narHash": "sha256-0JzuElxLe5DxM+R4tvBYfvQnMGCERZy4KMRf0JYxxS4=",
- "owner": "nixos",
- "repo": "nix",
- "rev": "1dd7253133c4dfd2e7a16ad6fe505442cef38a5b",
+ "lastModified": 1729742964,
+ "narHash": "sha256-B4mzTcQ0FZHdpeWcpDYPERtyjJd/NIuaQ9+BV1h+MpA=",
+ "owner": "nix-community",
+ "repo": "nix-github-actions",
+ "rev": "e04df33f62cdcf93d73e9a04142464753a16db67",
"type": "github"
},
"original": {
- "id": "nix",
- "type": "indirect"
+ "owner": "nix-community",
+ "repo": "nix-github-actions",
+ "type": "github"
}
},
"nix-pypi-fetcher": {
@@ -978,11 +913,11 @@
},
"nixlib": {
"locked": {
- "lastModified": 1693701915,
- "narHash": "sha256-waHPLdDYUOHSEtMKKabcKIMhlUOHPOOPQ9UyFeEoovs=",
+ "lastModified": 1736643958,
+ "narHash": "sha256-tmpqTSWVRJVhpvfSN9KXBvKEXplrwKnSZNAoNPf/S/s=",
"owner": "nix-community",
"repo": "nixpkgs.lib",
- "rev": "f5af57d3ef9947a70ac86e42695231ac1ad00c25",
+ "rev": "1418bc28a52126761c02dd3d89b2d8ca0f521181",
"type": "github"
},
"original": {
@@ -999,11 +934,11 @@
]
},
"locked": {
- "lastModified": 1701689616,
- "narHash": "sha256-ewnfgvRy73HoP5KnYmy1Rcr4m4yShvsb6TCCaKoW8pc=",
+ "lastModified": 1747663185,
+ "narHash": "sha256-Obh50J+O9jhUM/FgXtI3he/QRNiV9+J53+l+RlKSaAk=",
"owner": "nix-community",
"repo": "nixos-generators",
- "rev": "246219bc21b943c6f6812bb7744218ba0df08600",
+ "rev": "ee07ba0d36c38e9915c55d2ac5a8fb0f05f2afcc",
"type": "github"
},
"original": {
@@ -1014,11 +949,11 @@
},
"nixos-hardware": {
"locked": {
- "lastModified": 1703879120,
- "narHash": "sha256-oMJ5xtDswlBWxs0DT/aYKEUIhjEpGZJ9GbIxOclYP8I=",
+ "lastModified": 1747900541,
+ "narHash": "sha256-dn64Pg9xLETjblwZs9Euu/SsjW80pd6lr5qSiyLY1pg=",
"owner": "nixos",
"repo": "nixos-hardware",
- "rev": "22ae59fec26591ef72ce4ccb5538c42c5f090fe3",
+ "rev": "11f2d9ea49c3e964315215d6baa73a8d42672f06",
"type": "github"
},
"original": {
@@ -1029,48 +964,34 @@
},
"nixpkgs": {
"locked": {
- "lastModified": 1702539185,
- "narHash": "sha256-KnIRG5NMdLIpEkZTnN5zovNYc0hhXjAgv6pfd5Z4c7U=",
+ "lastModified": 1746461020,
+ "narHash": "sha256-7+pG1I9jvxNlmln4YgnlW4o+w0TZX24k688mibiFDUE=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "aa9d4729cbc99dabacb50e3994dcefb3ea0f7447",
+ "rev": "3730d8a308f94996a9ba7c7138ede69c1b9ac4ae",
"type": "github"
},
"original": {
"owner": "NixOS",
- "ref": "nixpkgs-unstable",
+ "ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
- "nixpkgs-22_11": {
+ "nixpkgs-25_05": {
"locked": {
- "lastModified": 1669558522,
- "narHash": "sha256-yqxn+wOiPqe6cxzOo4leeJOp1bXE/fjPEi/3F/bBHv8=",
+ "lastModified": 1747610100,
+ "narHash": "sha256-rpR5ZPMkWzcnCcYYo3lScqfuzEw5Uyfh+R0EKZfroAc=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "ce5fe99df1f15a09a91a86be9738d68fadfbad82",
+ "rev": "ca49c4304acf0973078db0a9d200fd2bae75676d",
"type": "github"
},
"original": {
- "id": "nixpkgs",
- "ref": "nixos-22.11",
- "type": "indirect"
- }
- },
- "nixpkgs-23_05": {
- "locked": {
- "lastModified": 1684782344,
- "narHash": "sha256-SHN8hPYYSX0thDrMLMWPWYulK3YFgASOrCsIL3AJ78g=",
"owner": "NixOS",
+ "ref": "nixos-25.05",
"repo": "nixpkgs",
- "rev": "8966c43feba2c701ed624302b6a935f97bcbdf88",
"type": "github"
- },
- "original": {
- "id": "nixpkgs",
- "ref": "nixos-23.05",
- "type": "indirect"
}
},
"nixpkgs-lib": {
@@ -1091,70 +1012,6 @@
"type": "github"
}
},
- "nixpkgs-regression": {
- "locked": {
- "lastModified": 1643052045,
- "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2",
- "type": "github"
- },
- "original": {
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2",
- "type": "github"
- }
- },
- "nixpkgs-stable": {
- "locked": {
- "lastModified": 1702780907,
- "narHash": "sha256-blbrBBXjjZt6OKTcYX1jpe9SRof2P9ZYWPzq22tzXAA=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "1e2e384c5b7c50dbf8e9c441a9e58d85f408b01f",
- "type": "github"
- },
- "original": {
- "owner": "NixOS",
- "ref": "nixos-23.11",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nixpkgs-stable_2": {
- "locked": {
- "lastModified": 1685801374,
- "narHash": "sha256-otaSUoFEMM+LjBI1XL/xGB5ao6IwnZOXc47qhIgJe8U=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "c37ca420157f4abc31e26f436c1145f8951ff373",
- "type": "github"
- },
- "original": {
- "owner": "NixOS",
- "ref": "nixos-23.05",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nixpkgs-stable_3": {
- "locked": {
- "lastModified": 1685801374,
- "narHash": "sha256-otaSUoFEMM+LjBI1XL/xGB5ao6IwnZOXc47qhIgJe8U=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "c37ca420157f4abc31e26f436c1145f8951ff373",
- "type": "github"
- },
- "original": {
- "owner": "NixOS",
- "ref": "nixos-23.05",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
"nixpkgs_10": {
"locked": {
"lastModified": 1686736559,
@@ -1173,27 +1030,11 @@
},
"nixpkgs_11": {
"locked": {
- "lastModified": 1645296114,
- "narHash": "sha256-y53N7TyIkXsjMpOG7RhvqJFGDacLs9HlyHeSTBioqYU=",
+ "lastModified": 1714656196,
+ "narHash": "sha256-kjQkA98lMcsom6Gbhw8SYzmwrSo+2nruiTcTZp5jK7o=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "530a53dcbc9437363471167a5e4762c5fcfa34a1",
- "type": "github"
- },
- "original": {
- "owner": "NixOS",
- "ref": "nixos-21.05-small",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nixpkgs_12": {
- "locked": {
- "lastModified": 1696165369,
- "narHash": "sha256-pd1cjFHCoEf9q5f9B0HhlOwwpBI9RP3HbUE6xjI7wAI=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "d7186d62bb68fac3c90f1d95515e613ef299e992",
+ "rev": "94035b482d181af0a0f8f77823a790b256b7c3cc",
"type": "github"
},
"original": {
@@ -1203,7 +1044,7 @@
"type": "github"
}
},
- "nixpkgs_13": {
+ "nixpkgs_12": {
"locked": {
"lastModified": 1682526928,
"narHash": "sha256-2cKh4O6t1rQ8Ok+v16URynmb0rV7oZPEbXkU0owNLQs=",
@@ -1219,7 +1060,7 @@
"type": "github"
}
},
- "nixpkgs_14": {
+ "nixpkgs_13": {
"locked": {
"lastModified": 1670507980,
"narHash": "sha256-riNZa0xzM1it3pzxciwALeMs+0CsBMWIW2FqulzK8vM=",
@@ -1237,27 +1078,11 @@
},
"nixpkgs_2": {
"locked": {
- "lastModified": 1696019113,
- "narHash": "sha256-X3+DKYWJm93DRSdC5M6K5hLqzSya9BjibtBsuARoPco=",
+ "lastModified": 1725194671,
+ "narHash": "sha256-tLGCFEFTB5TaOKkpfw3iYT9dnk4awTP/q4w+ROpMfuw=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "f5892ddac112a1e9b3612c39af1b72987ee5783a",
- "type": "github"
- },
- "original": {
- "owner": "NixOS",
- "ref": "nixos-unstable",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nixpkgs_3": {
- "locked": {
- "lastModified": 1697915759,
- "narHash": "sha256-WyMj5jGcecD+KC8gEs+wFth1J1wjisZf8kVZH13f1Zo=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "51d906d2341c9e866e48c2efcaac0f2d70bfd43e",
+ "rev": "b833ff01a0d694b910daca6e2ff4a3f26dee478c",
"type": "github"
},
"original": {
@@ -1267,7 +1092,7 @@
"type": "github"
}
},
- "nixpkgs_4": {
+ "nixpkgs_3": {
"locked": {
"lastModified": 1702272962,
"narHash": "sha256-D+zHwkwPc6oYQ4G3A1HuadopqRwUY/JkMwHz1YF7j4Q=",
@@ -1283,7 +1108,7 @@
"type": "github"
}
},
- "nixpkgs_5": {
+ "nixpkgs_4": {
"locked": {
"lastModified": 1703438236,
"narHash": "sha256-aqVBq1u09yFhL7bj1/xyUeJjzr92fXVvQSSEx6AdB1M=",
@@ -1299,13 +1124,13 @@
"type": "github"
}
},
- "nixpkgs_6": {
+ "nixpkgs_5": {
"locked": {
- "lastModified": 1702933230,
- "narHash": "sha256-xi8AZ3noIXrgmKLR+ij+CeYFoUTKiQuTLL+aA7FRdRQ=",
+ "lastModified": 1734973338,
+ "narHash": "sha256-E9JOCwppN3WX9oh6kV9w4nkN+6UPGNdzljscdJy5kTs=",
"owner": "nixos",
"repo": "nixpkgs",
- "rev": "4e2c5373180ecd17e41e879420be69dc642a6349",
+ "rev": "2b37ecedbb948e7607307c56e35aea5155eb65a7",
"type": "github"
},
"original": {
@@ -1314,13 +1139,13 @@
"type": "github"
}
},
- "nixpkgs_7": {
+ "nixpkgs_6": {
"locked": {
- "lastModified": 1702312524,
- "narHash": "sha256-gkZJRDBUCpTPBvQk25G0B7vfbpEYM5s5OZqghkjZsnE=",
+ "lastModified": 1746904237,
+ "narHash": "sha256-3e+AVBczosP5dCLQmMoMEogM57gmZ2qrVSrmq9aResQ=",
"owner": "nixos",
"repo": "nixpkgs",
- "rev": "a9bf124c46ef298113270b1f84a164865987a91c",
+ "rev": "d89fc19e405cb2d55ce7cc114356846a0ee5e956",
"type": "github"
},
"original": {
@@ -1330,13 +1155,13 @@
"type": "github"
}
},
- "nixpkgs_8": {
+ "nixpkgs_7": {
"locked": {
- "lastModified": 1703637592,
- "narHash": "sha256-8MXjxU0RfFfzl57Zy3OfXCITS0qWDNLzlBAdwxGZwfY=",
+ "lastModified": 1747744144,
+ "narHash": "sha256-W7lqHp0qZiENCDwUZ5EX/lNhxjMdNapFnbErcbnP11Q=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "cfc3698c31b1fb9cdcf10f36c9643460264d0ca8",
+ "rev": "2795c506fe8fb7b03c36ccb51f75b6df0ab2553f",
"type": "github"
},
"original": {
@@ -1345,17 +1170,33 @@
"type": "indirect"
}
},
- "nixpkgs_9": {
+ "nixpkgs_8": {
"locked": {
- "lastModified": 1703013332,
- "narHash": "sha256-+tFNwMvlXLbJZXiMHqYq77z/RfmpfpiI3yjL6o/Zo9M=",
+ "lastModified": 1747920628,
+ "narHash": "sha256-IlAuXnIi+ZmyS89tt1YOFDCv7FKs9bNBHd3MXMp8PxE=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "54aac082a4d9bb5bbc5c4e899603abfb76a3f6d6",
+ "rev": "e314d5c6d3b3a0f40ec5bcbc007b0cbe412f48ae",
"type": "github"
},
"original": {
"owner": "NixOS",
+ "ref": "nixpkgs-unstable",
+ "repo": "nixpkgs",
+ "type": "github"
+ }
+ },
+ "nixpkgs_9": {
+ "locked": {
+ "lastModified": 1747744144,
+ "narHash": "sha256-W7lqHp0qZiENCDwUZ5EX/lNhxjMdNapFnbErcbnP11Q=",
+ "owner": "nixos",
+ "repo": "nixpkgs",
+ "rev": "2795c506fe8fb7b03c36ccb51f75b6df0ab2553f",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
@@ -1363,11 +1204,11 @@
},
"nixpkgs_stable": {
"locked": {
- "lastModified": 1703351344,
- "narHash": "sha256-9FEelzftkE9UaJ5nqxidaJJPEhe9TPhbypLHmc2Mysc=",
+ "lastModified": 1704290814,
+ "narHash": "sha256-LWvKHp7kGxk/GEtlrGYV68qIvPHkU9iToomNFGagixU=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "7790e078f8979a9fcd543f9a47427eeaba38f268",
+ "rev": "70bdadeb94ffc8806c0570eb5c2695ad29f0e421",
"type": "github"
},
"original": {
@@ -1378,16 +1219,17 @@
},
"nixvim": {
"inputs": {
- "flake-utils": "flake-utils_7",
- "nixpkgs": "nixpkgs_9",
- "pre-commit-hooks": "pre-commit-hooks"
+ "flake-parts": "flake-parts_2",
+ "nixpkgs": "nixpkgs_8",
+ "nuschtosSearch": "nuschtosSearch",
+ "systems": "systems_7"
},
"locked": {
- "lastModified": 1703859882,
- "narHash": "sha256-wRXgap0eEuswF9xXUKDiWBh0tKuJ9vtmlJZ4iAX3K/E=",
+ "lastModified": 1748075723,
+ "narHash": "sha256-FiTU+0BpDvro+VPpoLs3KjebLe5qyGMWQG1xNB/oeCQ=",
"owner": "pta2002",
"repo": "nixvim",
- "rev": "1d8e7906c9606c956c6b40d8d088c8d2110dc0c0",
+ "rev": "764a9b8ddafcff877be16908447b7bd84204cca6",
"type": "github"
},
"original": {
@@ -1397,12 +1239,17 @@
}
},
"nur": {
+ "inputs": {
+ "flake-parts": "flake-parts_3",
+ "nixpkgs": "nixpkgs_9",
+ "treefmt-nix": "treefmt-nix"
+ },
"locked": {
- "lastModified": 1703938048,
- "narHash": "sha256-df8Lwe4k6QiyucOyZV0s6eoy6y7m2g4+/dOpEyYrZGU=",
+ "lastModified": 1748082384,
+ "narHash": "sha256-9xz59HYSe3p72s/mImv41sfE9AmXh7FzlqX8sfYSqZ4=",
"owner": "nix-community",
"repo": "NUR",
- "rev": "ae6fb319f88d5a995cb8dc4502c2d81c5fc1e578",
+ "rev": "c34543746275e849c494be5b222ad093e32b65f2",
"type": "github"
},
"original": {
@@ -1411,6 +1258,29 @@
"type": "github"
}
},
+ "nuschtosSearch": {
+ "inputs": {
+ "flake-utils": "flake-utils_5",
+ "ixx": "ixx",
+ "nixpkgs": [
+ "nixvim",
+ "nixpkgs"
+ ]
+ },
+ "locked": {
+ "lastModified": 1745046075,
+ "narHash": "sha256-8v4y6k16Ra/fiecb4DxhsoOGtzLKgKlS+9/XJ9z0T2I=",
+ "owner": "NuschtOS",
+ "repo": "search",
+ "rev": "066afe8643274470f4a294442aadd988356a478f",
+ "type": "github"
+ },
+ "original": {
+ "owner": "NuschtOS",
+ "repo": "search",
+ "type": "github"
+ }
+ },
"poetry2nix": {
"flake": false,
"locked": {
@@ -1429,62 +1299,6 @@
}
},
"pre-commit-hooks": {
- "inputs": {
- "flake-compat": "flake-compat_7",
- "flake-utils": "flake-utils_8",
- "gitignore": "gitignore_2",
- "nixpkgs": [
- "nixvim",
- "nixpkgs"
- ],
- "nixpkgs-stable": "nixpkgs-stable_3"
- },
- "locked": {
- "lastModified": 1702456155,
- "narHash": "sha256-I2XhXGAecdGlqi6hPWYT83AQtMgL+aa3ulA85RAEgOk=",
- "owner": "cachix",
- "repo": "pre-commit-hooks.nix",
- "rev": "007a45d064c1c32d04e1b8a0de5ef00984c419bc",
- "type": "github"
- },
- "original": {
- "owner": "cachix",
- "repo": "pre-commit-hooks.nix",
- "type": "github"
- }
- },
- "pre-commit-hooks-nix": {
- "inputs": {
- "flake-compat": [
- "lanzaboote",
- "flake-compat"
- ],
- "flake-utils": [
- "lanzaboote",
- "flake-utils"
- ],
- "gitignore": "gitignore",
- "nixpkgs": [
- "lanzaboote",
- "nixpkgs"
- ],
- "nixpkgs-stable": "nixpkgs-stable_2"
- },
- "locked": {
- "lastModified": 1699271226,
- "narHash": "sha256-8Jt1KW3xTjolD6c6OjJm9USx/jmL+VVmbooADCkdDfU=",
- "owner": "cachix",
- "repo": "pre-commit-hooks.nix",
- "rev": "ea758da1a6dcde6dc36db348ed690d09b9864128",
- "type": "github"
- },
- "original": {
- "owner": "cachix",
- "repo": "pre-commit-hooks.nix",
- "type": "github"
- }
- },
- "pre-commit-hooks_2": {
"inputs": {
"flake-utils": [
"webcord",
@@ -1511,6 +1325,32 @@
"type": "github"
}
},
+ "pre-commit-hooks-nix": {
+ "inputs": {
+ "flake-compat": [
+ "lanzaboote",
+ "flake-compat"
+ ],
+ "gitignore": "gitignore",
+ "nixpkgs": [
+ "lanzaboote",
+ "nixpkgs"
+ ]
+ },
+ "locked": {
+ "lastModified": 1746537231,
+ "narHash": "sha256-Wb2xeSyOsCoTCTj7LOoD6cdKLEROyFAArnYoS+noCWo=",
+ "owner": "cachix",
+ "repo": "pre-commit-hooks.nix",
+ "rev": "fa466640195d38ec97cf0493d6d6882bc4d14969",
+ "type": "github"
+ },
+ "original": {
+ "owner": "cachix",
+ "repo": "pre-commit-hooks.nix",
+ "type": "github"
+ }
+ },
"riff": {
"inputs": {
"fenix": "fenix",
@@ -1533,7 +1373,6 @@
},
"root": {
"inputs": {
- "attic": "attic",
"colmena": "colmena",
"comma": "comma",
"deploy": "deploy",
@@ -1545,7 +1384,7 @@
"microvm": "microvm",
"nixos-generators": "nixos-generators",
"nixos-hardware": "nixos-hardware",
- "nixpkgs": "nixpkgs_8",
+ "nixpkgs": "nixpkgs_7",
"nixpkgs_stable": "nixpkgs_stable",
"nixvim": "nixvim",
"nur": "nur",
@@ -1591,21 +1430,17 @@
},
"rust-overlay": {
"inputs": {
- "flake-utils": [
- "lanzaboote",
- "flake-utils"
- ],
"nixpkgs": [
"lanzaboote",
"nixpkgs"
]
},
"locked": {
- "lastModified": 1699409596,
- "narHash": "sha256-L3g1smIol3dGTxkUQOlNShJtZLvjLzvtbaeTRizwZBU=",
+ "lastModified": 1747017456,
+ "narHash": "sha256-C/U12fcO+HEF071b5mK65lt4XtAIZyJSSJAg9hdlvTk=",
"owner": "oxalica",
"repo": "rust-overlay",
- "rev": "58240e1ac627cef3ea30c7732fedfb4f51afd8e7",
+ "rev": "5b07506ae89b025b14de91f697eba23b48654c52",
"type": "github"
},
"original": {
@@ -1617,11 +1452,11 @@
"spectrum": {
"flake": false,
"locked": {
- "lastModified": 1703273931,
- "narHash": "sha256-CJ1Crdi5fXHkCiemovsp20/RC4vpDaZl1R6V273FecI=",
+ "lastModified": 1746869549,
+ "narHash": "sha256-BKZ/yZO/qeLKh9YqVkKB6wJiDQJAZNN5rk5NsMImsWs=",
"ref": "refs/heads/main",
- "rev": "97e2f3429ee61dc37664b4d096b2fec48a57b691",
- "revCount": 597,
+ "rev": "d927e78530892ec8ed389e8fae5f38abee00ad87",
+ "revCount": 862,
"type": "git",
"url": "https://spectrum-os.org/git/spectrum"
},
@@ -1632,16 +1467,16 @@
},
"stable": {
"locked": {
- "lastModified": 1696039360,
- "narHash": "sha256-g7nIUV4uq1TOVeVIDEZLb005suTWCUjSY0zYOlSBsyE=",
+ "lastModified": 1746557022,
+ "narHash": "sha256-QkNoyEf6TbaTW5UZYX0OkwIJ/ZMeKSSoOMnSDPQuol0=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "32dcb45f66c0487e92db8303a798ebc548cadedc",
+ "rev": "1d3aeb5a193b9ff13f63f4d9cc169fb88129f860",
"type": "github"
},
"original": {
"owner": "NixOS",
- "ref": "nixos-23.05",
+ "ref": "nixos-24.11",
"repo": "nixpkgs",
"type": "github"
}
@@ -1661,21 +1496,6 @@
"type": "github"
}
},
- "systems_10": {
- "locked": {
- "lastModified": 1681028828,
- "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
- "owner": "nix-systems",
- "repo": "default",
- "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
- "type": "github"
- },
- "original": {
- "owner": "nix-systems",
- "repo": "default",
- "type": "github"
- }
- },
"systems_2": {
"locked": {
"lastModified": 1681028828,
@@ -1781,18 +1601,24 @@
"type": "github"
}
},
- "systems_9": {
+ "treefmt-nix": {
+ "inputs": {
+ "nixpkgs": [
+ "nur",
+ "nixpkgs"
+ ]
+ },
"locked": {
- "lastModified": 1681028828,
- "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
- "owner": "nix-systems",
- "repo": "default",
- "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
+ "lastModified": 1733222881,
+ "narHash": "sha256-JIPcz1PrpXUCbaccEnrcUS8jjEb/1vJbZz5KkobyFdM=",
+ "owner": "numtide",
+ "repo": "treefmt-nix",
+ "rev": "49717b5af6f80172275d47a418c9719a31a78b53",
"type": "github"
},
"original": {
- "owner": "nix-systems",
- "repo": "default",
+ "owner": "numtide",
+ "repo": "treefmt-nix",
"type": "github"
}
},
@@ -1801,11 +1627,11 @@
"systems": "systems"
},
"locked": {
- "lastModified": 1694529238,
- "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
+ "lastModified": 1710146030,
+ "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"owner": "numtide",
"repo": "flake-utils",
- "rev": "ff7b65b44d01cf9ba6a71320833626af21126384",
+ "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"type": "github"
},
"original": {
@@ -1832,53 +1658,17 @@
"type": "github"
}
},
- "utils_3": {
- "locked": {
- "lastModified": 1605370193,
- "narHash": "sha256-YyMTf3URDL/otKdKgtoMChu4vfVL3vCMkRqpGifhUn0=",
- "owner": "numtide",
- "repo": "flake-utils",
- "rev": "5021eac20303a61fafe17224c087f5519baed54d",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "flake-utils",
- "type": "github"
- }
- },
- "utils_4": {
- "inputs": {
- "systems": "systems_9"
- },
- "locked": {
- "lastModified": 1694529238,
- "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
- "owner": "numtide",
- "repo": "flake-utils",
- "rev": "ff7b65b44d01cf9ba6a71320833626af21126384",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "flake-utils",
- "type": "github"
- }
- },
"vault-secrets": {
"inputs": {
- "flake-compat": "flake-compat_8",
- "flake-utils": "flake-utils_9",
- "nix": "nix",
- "nixpkgs": "nixpkgs_12",
- "utils": "utils_4"
+ "flake-compat": "flake-compat_6",
+ "nixpkgs": "nixpkgs_11"
},
"locked": {
- "lastModified": 1702898724,
- "narHash": "sha256-ypRLpx5VCTyE3mPKNRSOLMfqaOkyLXNU7opn0+dI/Jg=",
+ "lastModified": 1714988039,
+ "narHash": "sha256-ZYPX1Skhy9ZEfeRkAzdqO+MvjBdF4a7blrXcTJ3q/Yw=",
"owner": "serokell",
"repo": "vault-secrets",
- "rev": "9139484e388fe98e3facc097b66c018049d5e123",
+ "rev": "44ef2078d9149aa3b23fe132e8c8d8bbd624c06c",
"type": "github"
},
"original": {
@@ -1889,15 +1679,15 @@
},
"vault-unseal": {
"inputs": {
- "flake-utils": "flake-utils_10",
- "nixpkgs": "nixpkgs_13"
+ "flake-utils": "flake-utils_6",
+ "nixpkgs": "nixpkgs_12"
},
"locked": {
- "lastModified": 1683013874,
- "narHash": "sha256-B8bQb9IMkrDvtqFUoF/PuBma8Qa2jU7Xv7cFSchg9V8=",
+ "lastModified": 1729410873,
+ "narHash": "sha256-gWcGwGxRSsHtVXGEaCw1bhmqnJaVIjbxJkt98F9HxLE=",
"ref": "refs/heads/main",
- "rev": "91e7262e87878609c2d6619210988b241e8f8f62",
- "revCount": 11,
+ "rev": "f05093a8d608892d2e4499e02117428b405f82a1",
+ "revCount": 12,
"type": "git",
"url": "https://git.0x76.dev/v/vault-unseal.git"
},
@@ -1909,15 +1699,15 @@
"webcord": {
"inputs": {
"dream2nix": "dream2nix",
- "nixpkgs": "nixpkgs_14",
+ "nixpkgs": "nixpkgs_13",
"webcord": "webcord_2"
},
"locked": {
- "lastModified": 1670874335,
- "narHash": "sha256-nJ1LUVj3dIHP5B+XkZXUvY39OqaZn/MMHSFwsOSPnwI=",
+ "lastModified": 1707338607,
+ "narHash": "sha256-5UNW3kano8D4kbum+oRx18EjmJ1mLeOCwgGR1nWDwtg=",
"owner": "fufexan",
"repo": "webcord-flake",
- "rev": "b462d57c36d664b48f047c96b2f9de091bff6e8b",
+ "rev": "82ffefda8c5f663d895d24b7500d5f489b5d7d47",
"type": "github"
},
"original": {
diff --git a/flake.nix b/flake.nix
index 0667b2b5..669d4e80 100644
--- a/flake.nix
+++ b/flake.nix
@@ -43,8 +43,6 @@
vault-unseal.url = "git+https://git.0x76.dev/v/vault-unseal.git";
gnome-autounlock-keyring.url = "git+https://git.0x76.dev/v/gnome-autounlock-keyring.git";
- attic.url = "github:zhaofengli/attic";
-
# Website(s)
essentials.url = "github:jdonszelmann/essentials";
};
@@ -57,7 +55,6 @@
, colmena
, nixos-generators
, nur
- , attic
, deploy
, ...
}@inputs:
@@ -72,7 +69,7 @@
pkgs = import nixpkgs {
inherit system;
config.allowUnfree = true;
- overlays = [ (import ./nixos/pkgs) vault-secrets.overlay nur.overlay ];
+ overlays = [ (import ./nixos/pkgs) vault-secrets.overlays.default nur.overlay ];
};
pkgs_stable = import nixpkgs_stable {
@@ -115,6 +112,7 @@
};
}
nixHosts;
+ colmenaHive = colmena.lib.makeHive self.outputs.colmena;
packages.${system} = {
inherit apply-local;
@@ -141,16 +139,13 @@
devShells.${system}.default = pkgs.mkShell {
VAULT_ADDR = "http://vault.olympus:8200/";
buildInputs = with pkgs; [
- attic.packages.${pkgs.system}.attic
apply-local
colmena.packages.${system}.colmena
deploy.packages.${system}.deploy-rs
cachix
deadnix
statix
- nixfmt
nixpkgs-fmt
- nixUnstable
nil
vault
yamllint
diff --git a/nixos/common/default.nix b/nixos/common/default.nix
index 50e28ef5..a9e55a74 100644
--- a/nixos/common/default.nix
+++ b/nixos/common/default.nix
@@ -33,7 +33,7 @@
# https://src.fedoraproject.org/rpms/systemd/tree/acb90c49c42276b06375a66c73673ac3510255
systemd.oomd = {
enableRootSlice = true;
- enableUserServices = true;
+ enableUserSlices = true;
};
# security.polkit.enable = lib.mkDefault true;
@@ -43,7 +43,7 @@
nix = {
registry.nixpkgs.flake = inputs.nixpkgs;
nixPath = [ "nixpkgs=${inputs.nixpkgs}" ];
- package = pkgs.nixUnstable;
+ # package = pkgs.nixUnstable;
settings = {
auto-optimise-store = true;
trusted-users = [ "root" "vivian" ];
@@ -79,6 +79,11 @@
nixpkgs.config.allowUnfree = true;
+ nixpkgs.config.permittedInsecurePackages = [
+ "dotnet-sdk-6.0.428"
+ "aspnetcore-runtime-6.0.36"
+ ];
+
# Limit the systemd journal to 100 MB of disk or the
# last 7 days of logs, whichever happens first.
services.journald.extraConfig = ''
diff --git a/nixos/common/desktop/home.nix b/nixos/common/desktop/home.nix
index 7032f2d1..a76d17de 100644
--- a/nixos/common/desktop/home.nix
+++ b/nixos/common/desktop/home.nix
@@ -11,7 +11,6 @@ in {
btop
calibre
celluloid
- cinny-desktop
element-desktop
fusee-launcher
fractal-next
@@ -21,7 +20,9 @@ in {
helix
inputs.attic.packages.${pkgs.system}.attic
inputs.comma.packages.${pkgs.system}.default
- inputs.webcord.packages.${pkgs.system}.default
+ # inputs.webcord.packages.${pkgs.system}.default
+ discord
+ dogdns
jetbrains.clion
jetbrains.rust-rover
kdenlive
diff --git a/nixos/common/modules/dns.nix b/nixos/common/modules/dns.nix
index 056ea3aa..606d5b50 100644
--- a/nixos/common/modules/dns.nix
+++ b/nixos/common/modules/dns.nix
@@ -37,7 +37,7 @@ in {
};
mode = mkOption {
- type = enum [ "server" "laptop" ];
+ type = types.enum [ "server" "laptop" ];
default = "laptop";
description = ''
Whether to configure the DNS in server mode (listen on all interfaces) or laptop mode (just on localhost)
@@ -54,7 +54,6 @@ in {
enable = true;
inherit (cfg) openFirewall;
inherit (config.services.unbound) group;
- controlInterface = config.services.unbound.localControlSocketPath;
};
services.unbound = {
enable = true;
diff --git a/nixos/common/modules/flood.nix b/nixos/common/modules/flood.nix
index 64c20b33..57b5de70 100644
--- a/nixos/common/modules/flood.nix
+++ b/nixos/common/modules/flood.nix
@@ -1,8 +1,8 @@
{ config, pkgs, lib, ... }:
with lib;
-let cfg = config.services.flood;
+let cfg = config.services.v.flood;
in {
- options.services.flood = {
+ options.services.v.flood = {
enable = mkEnableOption "flood";
user = mkOption {
@@ -94,7 +94,7 @@ in {
type = types.bool;
default = false;
description = ''
- Enable SSL.
+ Enable SSL.
key.pem and fullchain.pem needed in runtime directory.
'';
};
diff --git a/nixos/common/modules/gnome/default.nix b/nixos/common/modules/gnome/default.nix
index 39fb375f..97cb8b17 100644
--- a/nixos/common/modules/gnome/default.nix
+++ b/nixos/common/modules/gnome/default.nix
@@ -58,7 +58,7 @@ in {
atomix # puzzle game
epiphany # web browser
geary # email reader
- gedit # text editor
+ pkgs.gedit # text editor
gnome-calendar
gnome-clocks
gnome-contacts
diff --git a/nixos/hosts/hades/bastion/configuration.nix b/nixos/hosts/hades/bastion/configuration.nix
index 4ad48e76..74804fa2 100644
--- a/nixos/hosts/hades/bastion/configuration.nix
+++ b/nixos/hosts/hades/bastion/configuration.nix
@@ -9,12 +9,5 @@
vault
];
- environment.noXlibs = lib.mkForce false;
-
system.stateVersion = "22.11";
-
- programs.gnupg.agent = {
- enable = true;
- pinentryFlavor = "curses";
- };
}
diff --git a/nixos/hosts/hades/default.nix b/nixos/hosts/hades/default.nix
index 82480c64..c2b43d4e 100644
--- a/nixos/hosts/hades/default.nix
+++ b/nixos/hosts/hades/default.nix
@@ -17,6 +17,7 @@
"unifi" = {
ip = "192.168.0.101";
mac = "5a:00:b7:6c:d1:e2";
+ nix = false;
};
"jellyfin" = {
ip = "192.168.0.102";
@@ -44,12 +45,9 @@
};
};
"tautulli" = {
+ nix = false;
ip = "192.168.0.106";
mac = "BE:30:DB:F8:C6:55";
- exposes.tautulli = {
- domain = "tautulli.xirion.net";
- port = 8080;
- };
};
"dns-1" = {
ip = "192.168.0.107";
@@ -83,10 +81,6 @@
mac = "00:50:56:91:0d:69";
type = "vm";
};
- "immich" = {
- ip = "192.168.0.116";
- mac = "06:8a:8e:3e:43:45";
- };
"mail" = {
ip = "192.168.0.118";
mac = "00:50:56:91:3b:03";
@@ -139,6 +133,7 @@
"attic" = {
ip = "192.168.0.128";
mac = "9E:AF:E9:FE:D4:D9";
+ nix = false;
exposes.attic = {
domain = "attic.xirion.net";
port = 8080;
@@ -158,16 +153,6 @@
"tudelft" = {
ip = "192.168.0.132";
mac = "AE:B3:93:4B:04:76";
- exposes = {
- grist = {
- domain = "grist.tud.0x76.dev";
- port = 8484;
- };
- dex = {
- domain = "dex.tud.0x76.dev";
- port = 8000;
- };
- };
nix = false;
};
"mastodon" = {
diff --git a/nixos/hosts/hades/dns/configuration.nix b/nixos/hosts/hades/dns/configuration.nix
index f9bc6c18..5c119927 100644
--- a/nixos/hosts/hades/dns/configuration.nix
+++ b/nixos/hosts/hades/dns/configuration.nix
@@ -34,6 +34,7 @@
"fedi.xirion.net typetransparent"
"grist.tud.0x76.dev typetransparent"
"dex.tud.0x76.dev typetransparent"
+ "queer.af typetransparent"
];
local-data = [
@@ -51,6 +52,7 @@
''"fedi.xirion.net A 192.168.0.122"''
''"grist.tud.0x76.dev A 192.168.0.122"''
''"dex.tud.0x76.dev A 192.168.0.122"''
+ ''"queer.af A 65.108.48.233"''
];
};
}
diff --git a/nixos/hosts/hades/jellyfin/configuration.nix b/nixos/hosts/hades/jellyfin/configuration.nix
index 46cc88d2..b1e4c609 100644
--- a/nixos/hosts/hades/jellyfin/configuration.nix
+++ b/nixos/hosts/hades/jellyfin/configuration.nix
@@ -51,6 +51,9 @@
WS_CRON_IMPORT = "1";
WS_CRON_EXPORT = "1";
WS_CRON_PROGRESS = "1";
+ WS_PUSH_ENABLED = "1";
+ WS_SYNC_PROGRESS = "1";
+ WS_API_AUTO = "1";
};
ports = [ "8080:8080" ];
volumes = [ "/var/lib/watchstate:/config:rw" ];
diff --git a/nixos/hosts/hades/lucy/configuration.nix b/nixos/hosts/hades/lucy/configuration.nix
index 09a364d1..0afd8bf7 100644
--- a/nixos/hosts/hades/lucy/configuration.nix
+++ b/nixos/hosts/hades/lucy/configuration.nix
@@ -3,28 +3,6 @@
# and in the NixOS manual (accessible by running `nixos-help`).
{ pkgs, ... }:
-# let
-# Redefining the package instead of overriding as overriding GoModules seems broken
-# see: https://github.com/NixOS/nixpkgs/issues/86349
-# _nuclei-latest = pkgs.buildGoModule rec {
-# pname = "nuclei";
-# version = "2.9.2";
-#
-# src = pkgs.fetchFromGitHub {
-# owner = "projectdiscovery";
-# repo = pname;
-# rev = "1f9a065713924b28b203e2108fc76d7a1ec49068";
-# hash = "sha256-QiegMoBy0gZMyQl2MRAwR14zXeh8wvVonyETdAzHbj0=";
-# };
-#
-# vendorHash = "sha256-0JNwoBqLKH1F/0Tr8o35gCSNT/2plIjIQvZRuzAZ5P8=";
-#
-# modRoot = "./v2";
-# subPackages = [ "cmd/nuclei/" ];
-#
-# doCheck = false;
-# };
-# in {
{
imports = [ ./hardware-configuration.nix ];
@@ -37,9 +15,13 @@
system.stateVersion = "23.05"; # Did you read the comment?
# Additional packages
- environment.systemPackages = with pkgs; [ jq wget jre8 ];
- boot.loader = {
+ environment.systemPackages = with pkgs; [
+ jq
+ wget
+ jdk17
+ ];
+ boot.loader = {
systemd-boot.enable = true;
efi.canTouchEfiVariables = true;
efi.efiSysMountPoint = "/boot";
@@ -49,28 +31,25 @@
enable = true;
allowedTCPPorts = [ 25565 ];
};
+
users = {
+ groups.mc = { };
+ groups.users = { };
extraUsers = {
-
laura.extraGroups = [ "wheel" ];
- vivian.extraGroups = [ "wheel" ];
-
- julia = {
+ vivian.extraGroups = [
+ "wheel"
+ "mc"
+ ];
+ julius = {
isNormalUser = true;
- shell = pkgs.zsh;
-
+ group = "users";
+ extraGroups = [ "wheel" ];
openssh.authorizedKeys.keys = [
- "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKTvqk+CJG4VwN8wg3H1ZdbUVj1JuX7RYKH1ewRKfCPv julia@juliadijkstraarch"
- # Below is Evelyn's keys
- "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDnZSVdqSybDwVooSZ+SGFM0YNu15sO/jgVqCBGDm33wj0fML5T4oviUrY6yABh+eAgy/NAztgM7+6L8Hlze5DBeMwNAvj9gr9QSzUetW0iqCscZJ8dDbW30O9449gw2JY/XZzcFMZAP5QEQGEgG/6QQ3yRwA3DMCsGhQQ37l/aS+RsKYq3ZSN4f1nFJCrm397QB8r+bhaexufXqwumxe8rlefoUNNVnmu54FA8Pc3jSdsWT4s/3mqF6NiRa53w13SBWyS+zopCy1tTSnRszgAkldpE7Vft/QnmpFavAWHzpfArv/uFXQ3fx5Cj5t70zB6VJEtaBxhdKXeQUFBCn7fmwfjV0Un9b8jLW94uDhDD3059trhMvJvqKebuqyZe74MTZH0IC3IobpSb9fHHvxuRwUQOMkkJmjv1p2y2R6v7s2tA1sZlIEBmRDvZcKo4hPBe6q13OePV3O8KAFzCmPBIfE6kQ/nLc+3k9OjFWFTshdDXUYpSVGjNrv/IanCXbEs="
- "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIA0KA0uOoLXUN4LhU7LgtSk0atWyPlEz5LA8dIXs9xTl"
-
- "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIfooZjMWXvXZu1ReOEACDZ0TMb2WJRBSOLlWE8y6fUh victor@aoife"
+ "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAJBY9eQlR/JRnjVC2wKWQ+o02wDlGUlSgN/4e3i6ans"
+ "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBt9ie9/XBVPnKo6wENKjEd32hhPqjiQFnn+okXZ0LRT"
];
-
- extraGroups = [ "mc" "wheel" ];
};
};
- groups.mc = { };
};
}
diff --git a/nixos/hosts/hades/mastodon/configuration.nix b/nixos/hosts/hades/mastodon/configuration.nix
index 4dde8175..ef981183 100644
--- a/nixos/hosts/hades/mastodon/configuration.nix
+++ b/nixos/hosts/hades/mastodon/configuration.nix
@@ -8,7 +8,6 @@ in {
networking.interfaces.eth0.useDHCP = true;
# Better cache hits
- environment.noXlibs = lib.mkForce false;
services = {
elasticsearch = {
enable = true;
@@ -29,6 +28,11 @@ in {
};
mastodon = {
+
+ extraEnvFiles = [
+ "${vs.mastodon}/active_record_secrets"
+ ];
+
enable = true;
package = pkgs.v.glitch-soc;
streamingProcesses = 3;
@@ -79,6 +83,8 @@ in {
AUTHORIZED_FETCH = "true";
+ MAX_TOOT_CHARS = "8192";
+
# https://github.com/cybrespace/cybrespace-meta/blob/master/s3.md;
# https://shivering-isles.com/Mastodon-and-Amazon-S3
S3_ENABLED = "true";
diff --git a/nixos/hosts/hades/nginx/configuration.nix b/nixos/hosts/hades/nginx/configuration.nix
index 713011d2..59b9f3ec 100644
--- a/nixos/hosts/hades/nginx/configuration.nix
+++ b/nixos/hosts/hades/nginx/configuration.nix
@@ -62,9 +62,6 @@ in {
};
};
- "peepeepoopoo.xirion.net" = proxy
- "http://tautulli.hades:8080"; # Deprecated but Ricardo has it bookmarked already!
-
"plex.xirion.net" = {
# Since we want a secure connection, we force SSL
forceSSL = true;
diff --git a/nixos/hosts/hades/overseerr/overseerr.nix b/nixos/hosts/hades/overseerr/overseerr.nix
index eee8ac42..d88314e5 100644
--- a/nixos/hosts/hades/overseerr/overseerr.nix
+++ b/nixos/hosts/hades/overseerr/overseerr.nix
@@ -2,7 +2,7 @@ _: {
networking.firewall.allowedTCPPorts = [ 5055 ];
# TODO: Write NixOS package https://github.com/NixOS/nixpkgs/issues/135885
virtualisation.oci-containers.containers.overseerr = {
- image = "ghcr.io/sct/overseerr:1.33.2";
+ image = "ghcr.io/sct/overseerr:1.34.0";
environment = { TZ = "Europe/Amsterdam"; };
ports = [ "5055:5055" ];
volumes = [ "/var/lib/overseerr/config:/app/config" ];
diff --git a/nixos/hosts/hades/overseerr/prowlarr.nix b/nixos/hosts/hades/overseerr/prowlarr.nix
index 0296a78d..1181178e 100644
--- a/nixos/hosts/hades/overseerr/prowlarr.nix
+++ b/nixos/hosts/hades/overseerr/prowlarr.nix
@@ -5,7 +5,7 @@ _: {
};
virtualisation.oci-containers.containers.flaresolverr = {
- image = "flaresolverr/flaresolverr:v3.3.10";
+ image = "flaresolverr/flaresolverr:v3.3.21";
ports = [ "8191:8191" ];
};
}
diff --git a/nixos/hosts/hades/rtorrent/configuration.nix b/nixos/hosts/hades/rtorrent/configuration.nix
index 26693094..fc9bf15a 100644
--- a/nixos/hosts/hades/rtorrent/configuration.nix
+++ b/nixos/hosts/hades/rtorrent/configuration.nix
@@ -47,7 +47,8 @@ in {
enable = true;
host = "0.0.0.0";
openFirewall = true;
- inherit (config.services.rtorrent) downloadDir;
+ extraArgs = [ ];
+ # inherit (config.services.rtorrent) downloadDir;
};
vault-secrets.secrets.rtorrent = { services = [ "wg-quick-wg0" ]; };
diff --git a/nixos/hosts/hades/storage/configuration.nix b/nixos/hosts/hades/storage/configuration.nix
index e2be5846..6b632346 100644
--- a/nixos/hosts/hades/storage/configuration.nix
+++ b/nixos/hosts/hades/storage/configuration.nix
@@ -6,9 +6,35 @@
./fs.nix
];
-
boot.loader.systemd-boot.enable = true;
services = {
+ scrutiny = {
+ enable = true;
+ openFirewall = true;
+ influxdb.enable = true;
+ collector.enable = true;
+ collector.settings = {
+ host.id = "storage-vm";
+ devices = [
+ {
+ device = "/dev/disk/by-id/ata-QEMU_HARDDISK_QM00013";
+ ignore = true;
+ }
+ {
+ device = "/dev/disk/by-id/ata-QEMU_HARDDISK_QM00015";
+ ignore = true;
+ }
+ {
+ device = "/dev/disk/by-id/ata-QEMU_HARDDISK_QM00017";
+ ignore = true;
+ }
+ {
+ device = "/dev/disk/by-id/ata-QEMU_HARDDISK_QM00019";
+ ignore = true;
+ }
+ ];
+ };
+ };
# Enable the OpenSSH daemon.
openssh.enable = true;
@@ -32,6 +58,7 @@
d5 = "/mnt/disk5";
d6 = "/mnt/disk6";
d7 = "/mnt/disk7";
+ # d8 = "/mnt/disk8";
};
contentFiles = [
"/var/lib/snapraid/snapraid.content"
@@ -54,6 +81,18 @@
};
};
+ users.groups.backup = {
+ gid = 10000;
+ members = [ "vivian" "syncthing" ];
+ };
+
+ services.syncthing = {
+ enable = true;
+ openDefaultPorts = true;
+ guiAddress = "0.0.0.0:8384";
+ group = "backup";
+ };
+
# Disable firewall, as NFS makes it annoying
networking.firewall.enable = false;
diff --git a/nixos/hosts/hades/storage/fs.nix b/nixos/hosts/hades/storage/fs.nix
index 6e63cfca..6e4bd75f 100644
--- a/nixos/hosts/hades/storage/fs.nix
+++ b/nixos/hosts/hades/storage/fs.nix
@@ -9,46 +9,60 @@
"/mnt/disk1" = {
fsType = "ext4";
device = "/dev/disk/by-partuuid/abbfc440-fb3d-4b33-92cb-948b2deeac53";
+ options = [ "nofail" ];
};
"/mnt/disk2" = {
fsType = "ext4";
device = "/dev/disk/by-partuuid/3a57ffa8-8a0f-4839-81df-7f34d99e9dbc";
+ options = [ "nofail" ];
};
"/mnt/disk3" = {
fsType = "ext4";
device = "/dev/disk/by-partuuid/0f72c5f8-b7db-4151-83f0-47e5f703aeb1";
+ options = [ "nofail" ];
};
"/mnt/disk4" = {
fsType = "ext4";
device = "/dev/disk/by-partuuid/b9c72b41-1538-436e-a595-49d1faa5ed01";
+ options = [ "nofail" ];
};
"/mnt/disk5" = {
fsType = "ext4";
device = "/dev/disk/by-partuuid/928d0200-eca1-4a69-b2d6-fbd23a5ee8cd";
+ options = [ "nofail" ];
};
"/mnt/disk6" = {
fsType = "ext4";
device = "/dev/disk/by-uuid/63381321-fe00-4838-8668-4d1decc94296";
+ options = [ "nofail" ];
};
"/mnt/disk7" = {
fsType = "ext4";
device = "/dev/disk/by-uuid/6c568887-9d2e-45ce-ab85-4c48cca2226a";
+ options = [ "nofail" ];
};
+ # "/mnt/disk8" = {
+ # fsType = "ext4";
+ # device = "/dev/disk/by-partuuid/73d8eea4-c648-4c91-99dc-19940832ffe7";
+ # };
+
"/mnt/parity1" = {
fsType = "ext4";
device = "/dev/disk/by-partuuid/7c9b88ed-b8f8-40c9-bbc3-b75d30e04e01";
+ options = [ "nofail" ];
};
"/mnt/parity2" = {
fsType = "ext4";
device = "/dev/disk/by-partuuid/5d2d7e3e-3730-4d9b-8759-dc14396f3357";
+ options = [ "nofail" ];
};
"/mnt/storage" = {
diff --git a/nixos/hosts/hades/tautulli/configuration.nix b/nixos/hosts/hades/tautulli/configuration.nix
deleted file mode 100644
index 9976ee2a..00000000
--- a/nixos/hosts/hades/tautulli/configuration.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-# Edit this configuration file to define what should be installed on
-# your system. Help is available in the configuration.nix(5) man page
-# and in the NixOS manual (accessible by running ‘nixos-help’).
-
-{ ... }:
-
-{
- imports = [ ];
-
- # This value determines the NixOS release from which the default
- # settings for stateful data, like file locations and database versions
- # on your system were taken. It‘s perfectly fine and recommended to leave
- # this value at the release version of the first install of this system.
- # Before changing this value read the documentation for this option
- # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
- system.stateVersion = "22.11"; # Did you read the comment?
-
- services.tautulli = {
- enable = true;
- port = 8080;
- openFirewall = true;
- };
-}
diff --git a/nixos/hosts/hades/unifi/configuration.nix b/nixos/hosts/hades/unifi/configuration.nix
index ef1aaecc..6d128dfb 100644
--- a/nixos/hosts/hades/unifi/configuration.nix
+++ b/nixos/hosts/hades/unifi/configuration.nix
@@ -11,10 +11,6 @@
openFirewall = true;
};
- # Required for Java
- # gets forced to true due the lxc profile
- environment.noXlibs = lib.mkForce false;
-
# Unifi Web Port
networking.firewall.allowedTCPPorts = [ 8443 ];
}
diff --git a/nixos/hosts/olympus/bastion/configuration.nix b/nixos/hosts/olympus/bastion/configuration.nix
index 3cb429d7..22014cfe 100644
--- a/nixos/hosts/olympus/bastion/configuration.nix
+++ b/nixos/hosts/olympus/bastion/configuration.nix
@@ -3,6 +3,22 @@
# and in the NixOS manual (accessible by running ‘nixos-help’).
{ pkgs, inputs, ... }: {
+let
+ fix-vscode = pkgs.writeScriptBin "fix-vscode" ''
+ #!${pkgs.stdenv.shell}
+ # Check if vscode-server dir exists
+ if [[ -d "$HOME/.vscode-server/bin" ]]; then
+ # For every bin folder within
+ for versiondir in "$HOME"/.vscode-server/bin/*; do
+ # Remove bundled node (dynamic links are borked for nix)
+ rm "$versiondir/node"
+ # symlink node form the nixpkg
+ ln -s "${pkgs.nodejs-slim}/bin/node" "$versiondir/node"
+ done
+ fi
+ '';
+in
+{
imports = [
# Include the results of the hardware scan.
./hardware-configuration.nix
diff --git a/nixos/hosts/olympus/ci/configuration.nix b/nixos/hosts/olympus/ci/configuration.nix
index 0c80aac0..162b3e24 100644
--- a/nixos/hosts/olympus/ci/configuration.nix
+++ b/nixos/hosts/olympus/ci/configuration.nix
@@ -61,7 +61,7 @@ in {
gitMinimal
gnused
jq
- nixUnstable
+ nix
nodejs
statix
vault
diff --git a/nixos/hosts/olympus/default.nix b/nixos/hosts/olympus/default.nix
index d8f7cb90..8f345560 100644
--- a/nixos/hosts/olympus/default.nix
+++ b/nixos/hosts/olympus/default.nix
@@ -19,7 +19,8 @@
ip = "10.42.42.4";
ip6 = "2001:41f0:9639:1:80f0:7cff:fecb:bd6d";
mac = "82:F0:7C:CB:BD:6D";
- type = "vm";
+ # type = "vm";
+ nix = false; # Now managed in the `new` branch
};
"vault" = {
ip = "10.42.42.6";
@@ -50,9 +51,7 @@
"kubernetes" = {
ip = "10.42.42.10";
mac = "6E:A5:25:99:FE:68";
- exposes = {
- flux.domain = "flux.0x76.dev";
- };
+ nix = false;
};
"dex" = {
ip = "10.42.42.11";
@@ -85,13 +84,19 @@
profile = "dns";
ip = "10.42.42.15";
mac = "5E:F6:36:23:16:E3";
- tags = [ "dns" "networking" ];
+ tags = [
+ "dns"
+ "networking"
+ ];
};
"dns-2" = {
profile = "dns";
ip = "10.42.42.16";
mac = "B6:04:0B:CD:0F:9F";
- tags = [ "dns" "networking" ];
+ tags = [
+ "dns"
+ "networking"
+ ];
};
"minio" = {
ip = "10.42.42.17";
@@ -118,6 +123,7 @@
"unifi" = {
ip = "10.42.42.20";
mac = "1A:88:A0:B0:65:B4";
+ nix = false;
};
"minecraft" = {
ip = "10.42.42.21";
@@ -156,19 +162,16 @@
"grist" = {
ip = "10.42.42.26";
mac = "B2:AA:AB:5D:2F:22";
- exposes.grist = {
- domain = "grist.0x76.dev";
- port = 8484;
- };
+ nix = false;
};
"bookwyrm" = {
ip = "10.42.42.27";
mac = "9E:8A:6C:39:27:DE";
nix = false;
- exposes.books = {
- domain = "books.meowy.tech";
- port = 8001;
- };
+ # exposes.books = {
+ # domain = "books.meowy.tech";
+ # port = 8001;
+ # };
};
"synapse" = {
ip = "10.42.42.28";
@@ -193,6 +196,7 @@
"ci" = {
ip = "10.42.42.33";
mac = "1E:24:DA:DB:4A:1A";
+ nix = false;
};
"nuc" = {
ip = "10.42.42.42";
diff --git a/nixos/hosts/olympus/gitea/configuration.nix b/nixos/hosts/olympus/gitea/configuration.nix
index fd471d38..2b90c2ed 100644
--- a/nixos/hosts/olympus/gitea/configuration.nix
+++ b/nixos/hosts/olympus/gitea/configuration.nix
@@ -21,8 +21,6 @@ in
# Additional packages
environment.systemPackages = with pkgs; [ ];
- environment.noXlibs = lib.mkForce false;
-
networking.firewall.allowedTCPPorts = [ port ];
services = {
@@ -59,7 +57,7 @@ in
"REPO_INDEXER_EXCLUDE" = "node_modules/**";
};
ui = {
- "THEMES" = "forgejo-auto,forgejo-light,forgejo-dark,auto,gitea,arc-green,agatheme";
+ "THEMES" = "forgejo-auto,forgejo-light,forgejo-dark,auto,gitea,arc-green";
"DEFAULT_THEME" = "forgejo-auto";
"USE_SERVICE_WORKER" = true;
};
@@ -96,10 +94,10 @@ in
group = "gitea";
};
- system.activationScripts.gitea-theme =
- let target_dir = "${config.services.gitea.stateDir}/custom/public/css/";
- in lib.stringAfter [ "var" ] ''
- mkdir -p ${target_dir}
- ln -sf ${pkgs.v.gitea-agatheme} "${target_dir}/theme-agatheme.css"
- '';
+ # system.activationScripts.gitea-theme =
+ # let target_dir = "${config.services.gitea.stateDir}/custom/public/css/";
+ # in lib.stringAfter [ "var" ] ''
+ # mkdir -p ${target_dir}
+ # ln -sf ${pkgs.v.gitea-agatheme} "${target_dir}/theme-agatheme.css"
+ # '';
}
diff --git a/nixos/hosts/olympus/hedgedoc/configuration.nix b/nixos/hosts/olympus/hedgedoc/configuration.nix
index 76defb5e..cb0a2d06 100644
--- a/nixos/hosts/olympus/hedgedoc/configuration.nix
+++ b/nixos/hosts/olympus/hedgedoc/configuration.nix
@@ -20,8 +20,6 @@ in
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "21.11"; # Did you read the comment?
- environment.noXlibs = lib.mkForce false;
-
networking.firewall.allowedTCPPorts = [ port ];
vault-secrets.secrets.hedgedoc = { };
diff --git a/nixos/hosts/olympus/mailserver/configuration.nix b/nixos/hosts/olympus/mailserver/configuration.nix
index c434d166..787ca2d2 100644
--- a/nixos/hosts/olympus/mailserver/configuration.nix
+++ b/nixos/hosts/olympus/mailserver/configuration.nix
@@ -3,8 +3,10 @@
# and in the NixOS manual (accessible by running ‘nixos-help’).
{ config, pkgs, ... }:
-let vs = config.vault-secrets.secrets;
-in {
+let
+ vs = config.vault-secrets.secrets;
+in
+{
imports = [ ];
# This value determines the NixOS release from which the default
@@ -15,19 +17,31 @@ in {
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "22.11"; # Did you read the comment?
- networking.firewall.allowedTCPPorts = [ 80 443 ];
+ networking.firewall.allowedTCPPorts = [
+ 80
+ 443
+ ];
# needed as the mailserver configures its down DNS resolver
networking.extraHosts = ''
10.42.42.6 vault.olympus
'';
- vault-secrets.secrets.mailserver = { services = [ "dovecot2" "postfix" ]; };
+ vault-secrets.secrets.mailserver = {
+ services = [
+ "dovecot2"
+ "postfix"
+ ];
+ };
mailserver = {
enable = true;
fqdn = "mail.0x76.dev";
- domains = [ "0x76.dev" "meowy.tech" "xirion.net" ];
+ domains = [
+ "0x76.dev"
+ "meowy.tech"
+ "xirion.net"
+ ];
certificateScheme = "acme-nginx";
enableManageSieve = true;
@@ -44,15 +58,19 @@ in {
# People
"v@0x76.dev" = {
hashedPasswordFile = "${vs.mailserver}/v@0x76.dev";
- catchAll = [ "xirion.net" "0x76.dev" ];
+ catchAll = [
+ "xirion.net"
+ "0x76.dev"
+ ];
aliases = [
"postmaster@0x76.dev"
"abuse@0x76.dev"
-
- "v@meowy.tech"
"abuse@meowy.tech"
"postmaster@meowy.tech"
+ "abuse@xirion.net"
+ "postmaster@xirion.net"
+ "@meowy.tech"
"@xirion.net"
"@0x76.dev"
];
@@ -95,21 +113,34 @@ in {
# index new email as they arrive
autoIndex = true;
# this only applies to plain text attachments, binary attachments are never indexed
- indexAttachments = true;
+ # indexAttachments = true;
enforced = "body";
memoryLimit = 2000;
autoIndexExclude = [ "\\Junk" ];
};
};
- services = {
- postfix.relayHost = "smtp.ziggozakelijk.nl";
- postfix.relayPort = 587;
+ services = {
+ postfix = {
+
+ relayHost = "smtp.ziggozakelijk.nl";
+ relayPort = 587;
+ };
+
+ rspamd = {
+ overrides."whitelist.conf".text = ''
+ whitelist_from {
+ fckn.gay = true;
+ }
+ '';
+ };
roundcube = {
enable = true;
- package = pkgs.roundcube.withPlugins
- (plugins: [ plugins.persistent_login pkgs.v.roundcube-swipe ]);
+ package = pkgs.roundcube.withPlugins (plugins: [
+ plugins.persistent_login
+ pkgs.v.roundcube-swipe
+ ]);
plugins = [
"archive"
"managesieve"
@@ -143,7 +174,9 @@ in {
'';
};
- nginx = { enable = true; };
+ nginx = {
+ enable = true;
+ };
};
security.acme.acceptTerms = true;
diff --git a/nixos/hosts/olympus/minecraft/configuration.nix b/nixos/hosts/olympus/minecraft/configuration.nix
index d052e3c7..4fd3cc5e 100644
--- a/nixos/hosts/olympus/minecraft/configuration.nix
+++ b/nixos/hosts/olympus/minecraft/configuration.nix
@@ -16,8 +16,6 @@
# Additional packages
environment.systemPackages = with pkgs; [ ];
- environment.noXlibs = lib.mkForce false;
-
networking.firewall.allowedTCPPorts = [ ];
services.minecraft-server = {
diff --git a/nixos/hosts/olympus/mosquitto/configuration.nix b/nixos/hosts/olympus/mosquitto/configuration.nix
index 56cb9b65..de79e2c9 100644
--- a/nixos/hosts/olympus/mosquitto/configuration.nix
+++ b/nixos/hosts/olympus/mosquitto/configuration.nix
@@ -3,8 +3,10 @@
# and in the NixOS manual (accessible by running ‘nixos-help’).
{ config, pkgs, ... }:
-let mosquittoPort = 1883;
-in {
+let
+ mosquittoPort = 1883;
+in
+{
imports = [ ];
# This value determines the NixOS release from which the default
@@ -20,15 +22,21 @@ in {
services.mosquitto = {
enable = true;
- listeners = [{
- port = mosquittoPort;
- settings.allow_anonymous = true;
- acl = [ "topic readwrite #" ];
- users = {
- vivian = { acl = [ "readwrite #" ]; };
- zigbee2mqtt = { acl = [ "readwrite #" ]; };
- };
- }];
+ listeners = [
+ {
+ port = mosquittoPort;
+ settings.allow_anonymous = true;
+ acl = [ "topic readwrite #" ];
+ users = {
+ vivian = {
+ acl = [ "readwrite #" ];
+ };
+ zigbee2mqtt = {
+ acl = [ "readwrite #" ];
+ };
+ };
+ }
+ ];
};
@@ -39,7 +47,9 @@ in {
homeassistant = true;
permit_join = false;
- serial = { port = "/dev/ttyUSB0"; };
+ serial = {
+ port = "/dev/ttyUSB0";
+ };
mqtt = {
base_topic = "zigbee2mqtt";
@@ -47,10 +57,14 @@ in {
user = "zigbee2mqtt";
};
- frontend = { port = 8080; };
+ frontend = {
+ port = 8080;
+ };
};
};
- networking.firewall.allowedTCPPorts =
- [ mosquittoPort config.services.zigbee2mqtt.settings.frontend.port ];
+ networking.firewall.allowedTCPPorts = [
+ mosquittoPort
+ config.services.zigbee2mqtt.settings.frontend.port
+ ];
}
diff --git a/nixos/hosts/olympus/nginx/configuration.nix b/nixos/hosts/olympus/nginx/configuration.nix
index b4f68c39..0b494a4f 100644
--- a/nixos/hosts/olympus/nginx/configuration.nix
+++ b/nixos/hosts/olympus/nginx/configuration.nix
@@ -5,7 +5,6 @@ let
base_url = "https://chat.meowy.tech";
server_name = "meowy.tech";
};
- "m.identity_server" = { };
};
serverConfig."m.server" = "chat.meowy.tech:443";
mkWellKnown = data: ''
@@ -13,7 +12,13 @@ let
add_header Access-Control-Allow-Origin *;
return 200 '${builtins.toJSON data}';
'';
-in {
+
+ website = builtins.fetchGit {
+ url = "https://git.0x76.dev/v/0x76.dev.git";
+ rev = "27baf03cdcd41a9ea4bd591071baf826f6950233";
+ };
+in
+{
# This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions
# on your system were taken. It‘s perfectly fine and recommended to leave
@@ -22,7 +27,10 @@ in {
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "21.05"; # Did you read the comment?
- networking.firewall.allowedTCPPorts = [ 80 443 ];
+ networking.firewall.allowedTCPPorts = [
+ 80
+ 443
+ ];
services = {
# Generates vhosts for all hosts that have an `exposes` section
@@ -35,7 +43,7 @@ in {
recommendedTlsSettings = true;
recommendedOptimisation = true;
recommendedBrotliSettings = true;
- clientMaxBodySize = "500m";
+ clientMaxBodySize = "5000M";
package = pkgs.nginxMainline;
@@ -70,20 +78,21 @@ in {
enableACME = true;
forceSSL = true;
- locations."/".extraConfig = ''
- add_header Content-Type 'text/html; charset=UTF-8';
- return 200 '
Under Construction
';
- '';
+ root = "${website}";
};
- "blog.xirion.net" = {
+ "vivian.is.fckn.gay" = {
enableACME = true;
forceSSL = true;
- locations."/".extraConfig = ''
- add_header Content-Type 'text/html; charset=UTF-8';
- return 200 'Under Construction
';
- '';
+ root = "${website}";
+ };
+
+ "immich.0x76.dev" = {
+ enableACME = true;
+ forceSSL = true;
+ locations."/".proxyPass = "http://10.42.42.4:2283";
+ locations."/".proxyWebsockets = true;
};
# Meow
@@ -95,10 +104,8 @@ in {
add_header Content-Type 'text/html; charset=UTF-8';
return 200 'meow
';
'';
- "= /.well-known/matrix/client".extraConfig =
- mkWellKnown clientConfig;
- "= /.well-known/matrix/server".extraConfig =
- mkWellKnown serverConfig;
+ "= /.well-known/matrix/client".extraConfig = mkWellKnown clientConfig;
+ "= /.well-known/matrix/server".extraConfig = mkWellKnown serverConfig;
};
};
"chat.meowy.tech" = {
@@ -106,8 +113,9 @@ in {
forceSSL = true;
locations = {
"/".extraConfig = ''
- return 307 https://element.chat.meowy.tech;
+ return 303 https://element.chat.meowy.tech;
'';
+ "= /.well-known/matrix/client".extraConfig = mkWellKnown clientConfig;
"/_matrix".proxyPass = "http://synapse.olympus:8008";
"/_synapse/client".proxyPass = "http://synapse.olympus:8008";
"/_synapse/admin" = {
@@ -116,9 +124,7 @@ in {
allow 127.0.0.1;
allow 10.42.42.0/23;
allow 192.168.0.0/23;
- allow 80.60.83.220;
- allow 83.128.154.23;
- allow 62.45.26.248;
+ allow 62.45.180.183;
allow 195.85.167.32/29;
deny all;
'';
@@ -138,11 +144,6 @@ in {
};
};
};
- "es.0x76.dev" = {
- enableACME = true;
- forceSSL = true;
- root = inputs.essentials.packages.${pkgs.system}.default;
- };
"cinny.chat.meowy.tech" = {
enableACME = true;
forceSSL = true;
@@ -155,6 +156,7 @@ in {
};
};
};
+
"admin.chat.meowy.tech" = {
enableACME = true;
forceSSL = true;
diff --git a/nixos/hosts/olympus/synapse/configuration.nix b/nixos/hosts/olympus/synapse/configuration.nix
index c2a87081..3116aec6 100644
--- a/nixos/hosts/olympus/synapse/configuration.nix
+++ b/nixos/hosts/olympus/synapse/configuration.nix
@@ -2,13 +2,17 @@
# your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running ‘nixos-help’).
+
{ config, pkgs, ... }:
+
let
vs = config.vault-secrets.secrets;
port = 8008;
+ slidingSyncPort = 8009;
metricsPort = 9000;
in
-{
+
+ {
imports = [ ];
# This value determines the NixOS release from which the default
@@ -19,7 +23,7 @@ in
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "22.11"; # Did you read the comment?
- networking.firewall.allowedTCPPorts = [ port metricsPort ];
+ networking.firewall.allowedTCPPorts = [ port metricsPort slidingSyncPort ];
vault-secrets.secrets.synapse = {
user = "matrix-synapse";
@@ -109,3 +113,5 @@ in
};
};
}
+
+
diff --git a/nixos/hosts/olympus/unifi/configuration.nix b/nixos/hosts/olympus/unifi/configuration.nix
index d67b079d..45f417ae 100644
--- a/nixos/hosts/olympus/unifi/configuration.nix
+++ b/nixos/hosts/olympus/unifi/configuration.nix
@@ -17,8 +17,6 @@
networking.firewall.allowedTCPPorts = [ 8443 ];
- environment.noXlibs = lib.mkForce false;
-
services.unifi = {
enable = true;
unifiPackage = pkgs.unifi;
diff --git a/nixos/hosts/olympus/victoriametrics/configuration.nix b/nixos/hosts/olympus/victoriametrics/configuration.nix
index 93573b84..c612b24e 100644
--- a/nixos/hosts/olympus/victoriametrics/configuration.nix
+++ b/nixos/hosts/olympus/victoriametrics/configuration.nix
@@ -26,7 +26,7 @@ in {
enable = true;
listenAddress = ":${toString vmPort}";
# Data Retention period in months
- retentionPeriod = 36;
+ retentionPeriod = "3y";
};
vmagent = {
diff --git a/nixos/hosts/olympus/wireguard/configuration.nix b/nixos/hosts/olympus/wireguard/configuration.nix
index 3e240290..e6187fd9 100644
--- a/nixos/hosts/olympus/wireguard/configuration.nix
+++ b/nixos/hosts/olympus/wireguard/configuration.nix
@@ -18,7 +18,6 @@ in {
# Additional packages
environment.systemPackages = with pkgs; [ wireguard-tools ];
- environment.noXlibs = lib.mkForce false;
networking = {
firewall.allowedUDPPorts =
diff --git a/nixos/hosts/thalassa/default.nix b/nixos/hosts/thalassa/default.nix
index 5b1e1db9..75de6e72 100644
--- a/nixos/hosts/thalassa/default.nix
+++ b/nixos/hosts/thalassa/default.nix
@@ -2,5 +2,6 @@
"aoife" = {
type = "local";
mac = "04:7b:cb:b6:2d:88";
+ nix = false;
};
}
diff --git a/nixos/pkgs/default.nix b/nixos/pkgs/default.nix
index 5f7180fc..68781322 100644
--- a/nixos/pkgs/default.nix
+++ b/nixos/pkgs/default.nix
@@ -1,5 +1,5 @@
# nix-build -E 'with import {}; callPackage ./default.nix {}'
-_final: prev: {
+final: prev: {
v = {
glitch-soc = prev.callPackage ./glitch-soc { };
diff --git a/nixos/pkgs/glitch-soc/README.md b/nixos/pkgs/glitch-soc/README.md
new file mode 100644
index 00000000..c811fa4c
--- /dev/null
+++ b/nixos/pkgs/glitch-soc/README.md
@@ -0,0 +1,21 @@
+# Mastodon Glitch Edition
+
+
+
+Based on [nixpkgs upstream](https://github.com/NixOS/nixpkgs/tree/master/pkgs/servers/mastodon).
+
+Modifications for the new yarn berry lockfiles and some other improvements stolen and adjusted (with permissions) from [catgirl.cloud](https://git.catgirl.cloud/999eagle/dotfiles-nix/-/tree/main/overlay/mastodon/glitch) (see also https://github.com/NixOS/nixpkgs/issues/277697).
+
+I've also made some further modifications myself to try and simplify the package and better understand it.
+
+## Updating
+
+The package can be updated to the latest glitch-soc commit with `update.sh`.
+
+- the `deps.patch` for the yarn lockfile will probably not work anymore
+- in that case, delete it before running `update.sh`
+- then try to build the package
+- when it fails again with a yarn error, run `nix log` to get the full yarn output
+- take the diff from there and adjust `deps.patch` accordingly
+- also, the yarn hash in `version_data.nix` has to be adjusted manually
+- build the package and paste the hash from the error message into `yarnHash`
diff --git a/nixos/pkgs/glitch-soc/default.nix b/nixos/pkgs/glitch-soc/default.nix
index ac4083fd..20a84ff2 100644
--- a/nixos/pkgs/glitch-soc/default.nix
+++ b/nixos/pkgs/glitch-soc/default.nix
@@ -1,84 +1,100 @@
-{ lib, stdenv, nodejs-slim, bundlerEnv, nixosTests
-, yarn, callPackage, imagemagick, ffmpeg, file, ruby, writeShellScript
-, fetchYarnDeps, prefetch-yarn-deps
-, brotli
-
- # Allow building a fork or custom version of Mastodon:
-, pname ? "mastodon"
-, version ? srcOverride.version
-, patches ? []
- # src is a package
-, srcOverride ? callPackage ./source.nix { inherit patches; }
-, gemset ? ./. + "/gemset.nix"
-, yarnHash ? srcOverride.yarnHash
+{ stdenv, nodejs-slim, bundlerEnv, defaultGemConfig
+, yarn-berry, callPackage, ruby, writeShellScript
+, brotli, openssl
}:
-stdenv.mkDerivation rec {
- inherit pname version;
+let
- src = srcOverride;
+ # optimally, updates only need to touch `version_data.nix`, and nothing else should be in there
+ versionData = import ./version_data.nix;
+ # use the first 7 characters of the glitch-soc commit hash as version string
+ version = builtins.substring 0 7 versionData.rev;
+
+ # the patched glitch-soc source
+ src = callPackage ./source.nix { };
+
+ # ruby gems, built from `gemset.nix`, which is generated by bundix in `update.sh` from the source Gemfile
mastodonGems = bundlerEnv {
- name = "${pname}-gems-${version}";
- inherit version gemset ruby;
+ name = "glitch-soc-gems-${version}"; # bundlerEnv breaks when pname is set instead
+ inherit version;
+ ruby = ruby;
+ gemset = ./gemset.nix;
gemdir = src;
- # This fix (copied from https://github.com/NixOS/nixpkgs/pull/76765) replaces the gem
- # symlinks with directories, resolving this error when running rake:
- # /nix/store/451rhxkggw53h7253izpbq55nrhs7iv0-mastodon-gems-3.0.1/lib/ruby/gems/2.6.0/gems/bundler-1.17.3/lib/bundler/settings.rb:6:in `': uninitialized constant Bundler::Settings (NameError)
- postBuild = ''
- for gem in "$out"/lib/ruby/gems/*/gems/*; do
- cp -a "$gem/" "$gem.new"
- rm "$gem"
- # needed on macOS, otherwise the mv yields permission denied
- chmod +w "$gem.new"
- mv "$gem.new" "$gem"
- done
- '';
+ /*
+ See:
+ - https://wiki.nixos.org/wiki/Packaging/Ruby#Adding_a_global_override_for_a_gem
+ - https://nixos.org/manual/nixpkgs/stable/#gem-specific-configurations-and-workarounds
+ */
+ gemConfig = defaultGemConfig // {
+ hiredis-client = attrs: {
+ buildInputs = [ openssl ];
+ };
+ };
};
+ # fetches JS dependencies via yarn based on the lockfile in the source
+ mastodonYarnDeps = yarn-berry.fetchYarnBerryDeps {
+ inherit src;
+ hash = versionData.yarnHash;
+ missingHashes = ./missing-hashes.json;
+ };
+
+ # builds the node modules for mastodon using the previously fetched yarn deps
mastodonModules = stdenv.mkDerivation {
- pname = "${pname}-modules";
- inherit src version;
+ pname = "glitch-soc-modules";
+ inherit version src;
- yarnOfflineCache = fetchYarnDeps {
- yarnLock = "${src}/yarn.lock";
- hash = yarnHash;
- };
+ yarnOfflineCache = mastodonYarnDeps;
+ missingHashes = ./missing-hashes.json;
- nativeBuildInputs = [ prefetch-yarn-deps nodejs-slim yarn mastodonGems mastodonGems.wrappedRuby brotli ];
+ nativeBuildInputs = [
+ nodejs-slim
+ yarn-berry
+ yarn-berry.yarnBerryConfigHook
+ brotli
+ mastodonGems
+ mastodonGems.wrappedRuby
+ ];
RAILS_ENV = "production";
NODE_ENV = "production";
+ /*
+ So it seems that somehow a change in Linux 6.9 changed something that broke libuv, an IO lib
+ used by Node. This undocumented env var disables the broken IO feature in libuv and it works
+ again.
+
+ - https://lore.kernel.org/lkml/d7003b6e-b8e3-41c4-9e6e-2b9abd0c5572@gmail.com/t/
+ - https://github.com/nodejs/node/issues/53051#issuecomment-2124940205
+ - https://github.com/nodejs/docker-node/issues/1912#issuecomment-1594233686
+ */
+ UV_USE_IO_URING = "0";
+
buildPhase = ''
runHook preBuild
- export HOME=$PWD
- # This option is needed for openssl-3 compatibility
- # Otherwise we encounter this upstream issue: https://github.com/mastodon/mastodon/issues/17924
- export NODE_OPTIONS=--openssl-legacy-provider
- fixup-yarn-lock ~/yarn.lock
- yarn config --offline set yarn-offline-mirror $yarnOfflineCache
- yarn install --offline --frozen-lockfile --ignore-engines --ignore-scripts --no-progress
+ export SECRET_KEY_BASE_DUMMY=1
- patchShebangs ~/bin
- patchShebangs ~/node_modules
+ patchShebangs bin
- # skip running yarn install
- rm -rf ~/bin/yarn
+ bundle exec rails assets:precompile
- OTP_SECRET=precompile_placeholder SECRET_KEY_BASE=precompile_placeholder \
- rails assets:precompile
- yarn cache clean --offline
- rm -rf ~/node_modules/.cache
+ rm -rf node_modules/.cache
+
+ # Remove workspace "package" as it contains broken symlinks
+ # See https://github.com/NixOS/nixpkgs/issues/380366
+ rm -rf node_modules/@mastodon
+
+ # Remove execute permissions
+ find public/assets -type f ! -perm 0555 \
+ -exec chmod 0444 {} ';'
# Create missing static gzip and brotli files
- gzip --best --keep ~/public/assets/500.html
- gzip --best --keep ~/public/packs/report.html
- find ~/public/assets -maxdepth 1 -type f -name '.*.json' \
- -exec gzip --best --keep --force {} ';'
- brotli --best --keep ~/public/packs/report.html
- find ~/public/assets -type f -regextype posix-extended -iregex '.*\.(css|js|json|html)' \
+ # see: https://git.catgirl.cloud/999eagle/dotfiles-nix/-/blob/5d0da33c4f6b52b48777b404593c68a13e292721/overlay/mastodon/glitch/default.nix#L30
+ # see: https://code.hackerspace.pl/ar/nibylandia/src/commit/7bbb773554204026644fb98c9463fd15726976e9/pkgs/glitch-soc/modules.nix#L52
+ find public/assets public/packs -type f -regextype posix-extended -iregex '.*\.(css|html|js|js.map|json|svg)' \
+ -exec gzip --best --keep --force {} ';' \
-exec brotli --best --keep {} ';'
runHook postBuild
@@ -96,7 +112,15 @@ stdenv.mkDerivation rec {
'';
};
- propagatedBuildInputs = [ imagemagick ffmpeg file mastodonGems.wrappedRuby ];
+# the actual main glitch-soc package
+
+in stdenv.mkDerivation {
+
+ pname = "glitch-soc";
+ inherit version src mastodonGems mastodonModules;
+
+ propagatedBuildInputs = [ mastodonGems.wrappedRuby ];
+ nativeBuildInputs = [ brotli ];
buildInputs = [ mastodonGems nodejs-slim ];
buildPhase = ''
@@ -153,17 +177,4 @@ stdenv.mkDerivation rec {
runHook postInstall
'';
- passthru = {
- tests.mastodon = nixosTests.mastodon;
- # run with: nix-shell ./maintainers/scripts/update.nix --argstr package mastodon
- updateScript = ./update.sh;
- };
-
- meta = with lib; {
- description = "Self-hosted, globally interconnected microblogging software based on ActivityPub";
- homepage = "https://joinmastodon.org";
- license = licenses.agpl3Plus;
- platforms = [ "x86_64-linux" "i686-linux" "aarch64-linux" ];
- maintainers = with maintainers; [ happy-river erictapen izorkin ghuntley ];
- };
}
diff --git a/nixos/pkgs/glitch-soc/gemset.nix b/nixos/pkgs/glitch-soc/gemset.nix
index 2f780a38..d15e4189 100644
--- a/nixos/pkgs/glitch-soc/gemset.nix
+++ b/nixos/pkgs/glitch-soc/gemset.nix
@@ -5,43 +5,43 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0zd3zjpmrx06jiiyrxmsj94mfcxraxr0h3qlk61860slakmn4sg9";
+ sha256 = "18496axh89kakw5f82mmmac3w9rwb0b0wq4j6la806p9cbgy5k3v";
type = "gem";
};
- version = "7.1.1";
+ version = "8.0.2";
};
actionmailbox = {
- dependencies = ["actionpack" "activejob" "activerecord" "activestorage" "activesupport" "mail" "net-imap" "net-pop" "net-smtp"];
+ dependencies = ["actionpack" "activejob" "activerecord" "activestorage" "activesupport" "mail"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "13n7178paqy2p2svsh21yfvzmpf4anwgmnxx6anyslr90zcyksg1";
+ sha256 = "1nyfwa1kj0cm1scqsbv723ypv69bzaxh886hliyjbrhk752v73rx";
type = "gem";
};
- version = "7.1.1";
+ version = "8.0.2";
};
actionmailer = {
- dependencies = ["actionpack" "actionview" "activejob" "activesupport" "mail" "net-imap" "net-pop" "net-smtp" "rails-dom-testing"];
+ dependencies = ["actionpack" "actionview" "activejob" "activesupport" "mail" "rails-dom-testing"];
groups = ["default" "development"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1nr7njlr6pccglqp36imc8mhff73agcdky57a9alrkyrbzdnll42";
+ sha256 = "1l3pnba14p0p7zsh366c31maxap030c97597vjimdv3nhnrnijdh";
type = "gem";
};
- version = "7.1.1";
+ version = "8.0.2";
};
actionpack = {
- dependencies = ["actionview" "activesupport" "nokogiri" "rack" "rack-session" "rack-test" "rails-dom-testing" "rails-html-sanitizer"];
+ dependencies = ["actionview" "activesupport" "nokogiri" "rack" "rack-session" "rack-test" "rails-dom-testing" "rails-html-sanitizer" "useragent"];
groups = ["default" "development" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0b2r4h30fybd064xicfjr38j3hpyqx622fb4fjl3rk5ya36b9r1d";
+ sha256 = "0y2b5ydiqy32jbd9g5bl6v4aw6d7pjn5f3w2rxf2j59q9w307rwk";
type = "gem";
};
- version = "7.1.1";
+ version = "8.0.2";
};
actiontext = {
dependencies = ["actionpack" "activerecord" "activestorage" "activesupport" "globalid" "nokogiri"];
@@ -49,10 +49,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "04wjw7iy43vh8dsavi2mka11nkv85nxs7bx8aw85w2mrc3y69jfz";
+ sha256 = "1grs41yr3nzw7zbnz0vkv8f4qd448a632saxkm3vnbzf68hb63d4";
type = "gem";
};
- version = "7.1.1";
+ version = "8.0.2";
};
actionview = {
dependencies = ["activesupport" "builder" "erubi" "rails-dom-testing" "rails-html-sanitizer"];
@@ -60,10 +60,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "02c51f3a2kan3s45m21sx08jjz9xm4l2kvk475ir06vgmgr3girn";
+ sha256 = "1fyfyxf2a798lxq6sfpnj94kmnpfp17xlhvjy428zhfzbi0f2f70";
type = "gem";
};
- version = "7.1.1";
+ version = "8.0.2";
};
active_model_serializers = {
dependencies = ["actionpack" "activemodel" "case_transform" "jsonapi-renderer"];
@@ -71,10 +71,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "13n1ipn0dg3k852xhfzdvkr1ljq76xvfnm79qzdix2ishiy1gphl";
+ sha256 = "0k0cig5ic38vfd7iba3rv3h7hs2lmycqp0wx4w286kmbhch5n9q8";
type = "gem";
};
- version = "0.10.14";
+ version = "0.10.15";
};
activejob = {
dependencies = ["activesupport" "globalid"];
@@ -82,10 +82,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1qhpzjlh8sm8gqi11yng1sxayfn13pw9j2pgjw57bcmifpav6rd5";
+ sha256 = "1jjk31di5kvcflc90wmgdd50jzhljhafi166h6hg67kbwd2qn8mh";
type = "gem";
};
- version = "7.1.1";
+ version = "8.0.2";
};
activemodel = {
dependencies = ["activesupport"];
@@ -93,10 +93,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "16m6szgwhs7xnrkbib7di872k40r2iffx06g4gjiy4bb2g1d6bqz";
+ sha256 = "0v35y2jzqlfy1wnrzlzj2cxylhnz09vykaa1l2dnkq7sl5zzpq8a";
type = "gem";
};
- version = "7.1.1";
+ version = "8.0.2";
};
activerecord = {
dependencies = ["activemodel" "activesupport" "timeout"];
@@ -104,10 +104,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "09b3x4g4b3ihx9mvahz6ysm8dv41l8vkdfhxg0bdcqm4yg007pgq";
+ sha256 = "02nrya34qviawdkssyahb3mg08kqdc461b320a6ikr245jwp0d3r";
type = "gem";
};
- version = "7.1.1";
+ version = "8.0.2";
};
activestorage = {
dependencies = ["actionpack" "activejob" "activerecord" "activesupport" "marcel"];
@@ -115,21 +115,21 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1400b9fa4zv39qs6ma0lirf840zdn7qp3v86l9vhgwjzzvhmkhhc";
+ sha256 = "0xr9cy6h8il61qq6w3rkvl56visms45ljm8f43r3ibh61wg24ggq";
type = "gem";
};
- version = "7.1.1";
+ version = "8.0.2";
};
activesupport = {
- dependencies = ["base64" "bigdecimal" "concurrent-ruby" "connection_pool" "drb" "i18n" "minitest" "mutex_m" "tzinfo"];
+ dependencies = ["base64" "benchmark" "bigdecimal" "concurrent-ruby" "connection_pool" "drb" "i18n" "logger" "minitest" "securerandom" "tzinfo" "uri"];
groups = ["default" "development" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "18jqxsjz9vs89v9jwz4f5vw9yj91cc2l2jwlzfgnxg8wmyjbqw47";
+ sha256 = "0pm40y64wfc50a9sj87kxvil2102rmpdcbv82zf0r40vlgdwsrc5";
type = "gem";
};
- version = "7.1.1";
+ version = "8.0.2";
};
addressable = {
dependencies = ["public_suffix"];
@@ -137,10 +137,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "05r1fwy487klqkya7vzia8hnklcxy4vr92m9dmni3prfwk6zpw33";
+ sha256 = "0cl2qpvwiffym62z991ynks7imsm87qmgxf0yfsmlwzkgi9qcaa6";
type = "gem";
};
- version = "2.8.5";
+ version = "2.8.7";
};
aes_key_wrap = {
groups = ["default"];
@@ -162,77 +162,56 @@
};
version = "0.3.0";
};
- annotate = {
- dependencies = ["activerecord" "rake"];
+ annotaterb = {
+ dependencies = ["activerecord" "activesupport"];
groups = ["development"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1lw0fxb5mirsdp3bp20gjyvs7clvi19jbxnrm2ihm20kzfhvlqcs";
+ sha256 = "1gdlas9fl9j7p7s6jvyakbidvg2almhbbk7a7px4fp6xma58yczh";
type = "gem";
};
- version = "3.2.0";
+ version = "4.17.0";
};
ast = {
groups = ["default" "development"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "04nc8x27hlzlrr5c2gn7mar4vdr0apw5xg22wp6m8dx3wqr04a0y";
+ sha256 = "10yknjyn0728gjn6b5syynvrvrwm66bhssbxq8mkhshxghaiailm";
type = "gem";
};
- version = "2.4.2";
- };
- attr_encrypted = {
- dependencies = ["encryptor"];
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "034x6mbrv9apd83v99v9pm8vl3d17w5bbwws26gr4wv95fylmgnc";
- type = "gem";
- };
- version = "4.0.0";
+ version = "2.4.3";
};
attr_required = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1g22axmi2rhhy7w8c3x6gppsawxqavbrnxpnmphh22fk7cwi0kh2";
+ sha256 = "16fbwr6nmsn97n0a6k1nwbpyz08zpinhd6g7196lz1syndbgrszh";
type = "gem";
};
- version = "1.0.1";
- };
- awrence = {
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "0gj8f8c54r9cabkm41s59sa1ca5wpbipw7gq3sfl87x9296227fx";
- type = "gem";
- };
- version = "1.2.1";
+ version = "1.0.2";
};
aws-eventstream = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1pyis1nvnbjxk12a43xvgj2gv0mvp4cnkc1gzw0v1018r61399gz";
+ sha256 = "1mvjjn8vh1c3nhibmjj9qcwxagj6m9yy961wblfqdmvhr9aklb3y";
type = "gem";
};
- version = "1.2.0";
+ version = "1.3.2";
};
aws-partitions = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0m2kha6ip4ynhvl1l8z4vg0j96ngq4f2v6jl4j2y27m2kzmgcxz5";
+ sha256 = "1y34xkflb4fd54k1cbrd9xw6ff2znwn1drbnvy9ywngiyynwff1i";
type = "gem";
};
- version = "1.809.0";
+ version = "1.1103.0";
};
aws-sdk-core = {
dependencies = ["aws-eventstream" "aws-partitions" "aws-sigv4" "jmespath"];
@@ -240,10 +219,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0xjw9cf6ldbw50xi5ric8d63r8kybpsvaqxh2v6n7374hfady73i";
+ sha256 = "1vmi65a22dq0rhjiydr94zwpn9hx3vib7vp922ccjg0vrih7mlzy";
type = "gem";
};
- version = "3.181.0";
+ version = "3.215.1";
};
aws-sdk-kms = {
dependencies = ["aws-sdk-core" "aws-sigv4"];
@@ -251,10 +230,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1zr5w2cjd895abyn7y5gifhq37bxcinssvdx2l1qmlkllbdxbwq0";
+ sha256 = "0xd3ddd9jiapkgv8im4pl9dcdy2ps7qjsssf2nz3q6sd1ca8x0di";
type = "gem";
};
- version = "1.71.0";
+ version = "1.96.0";
};
aws-sdk-s3 = {
dependencies = ["aws-sdk-core" "aws-sdk-kms" "aws-sigv4"];
@@ -262,10 +241,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0yymj15nwnvam95lw5fxwxx7b6xm4hkj8z7byzvjmx9aji1x245m";
+ sha256 = "10ziy8zslfjs0ihls7wiq6zvsncq89azh36rshmlylry1hhxjbxz";
type = "gem";
};
- version = "1.133.0";
+ version = "1.177.0";
};
aws-sigv4 = {
dependencies = ["aws-eventstream"];
@@ -273,42 +252,31 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0z889c4c1w7wsjm3szg64ay5j51kjl4pdf94nlr1yks2rlanm7na";
+ sha256 = "1nx1il781qg58nwjkkdn9fw741cjjnixfsh389234qm8j5lpka2h";
type = "gem";
};
- version = "1.6.0";
+ version = "1.11.0";
};
- azure-storage-blob = {
- dependencies = ["azure-storage-common" "nokogiri"];
+ azure-blob = {
+ dependencies = ["rexml"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0qq3knsy7nj7a0r8m19spg2bgzns9b3j5vjbs9mpg49whhc63dv1";
+ sha256 = "1zfl00vwx28a8s38spfxinicic1nd7q1phd3cmjxj8mwlfswc3j4";
type = "gem";
};
- version = "2.0.3";
- };
- azure-storage-common = {
- dependencies = ["faraday" "faraday_middleware" "net-http-persistent" "nokogiri"];
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "0swmsvvpmy8cdcl305p3dl2pi7m3dqjd7zywfcxmhsz0n2m4v3v0";
- type = "gem";
- };
- version = "2.0.4";
+ version = "0.5.8";
};
base64 = {
groups = ["default" "development" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0cydk9p2cv25qysm0sn2pb97fcpz1isa7n3c8xm1gd99li8x6x8c";
+ sha256 = "0yx9yn47a8lkfcjmigk79fykxvr80r4m1i35q82sxzynpbm7lcr7";
type = "gem";
};
- version = "0.1.1";
+ version = "0.3.0";
};
bcp47_spec = {
groups = ["default"];
@@ -325,10 +293,20 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "14crcsmcsyiskr9xzgzcfz2dr74zg1jvavrrxpf5vnn9q75fakz9";
+ sha256 = "16a0g2q40biv93i1hch3gw8rbmhp77qnnifj1k0a6m7dng3zh444";
type = "gem";
};
- version = "3.1.19";
+ version = "3.1.20";
+ };
+ benchmark = {
+ groups = ["default" "development" "pam_authentication" "production" "test"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1kicilpma5l0lwayqjb5577bm0hbjndj2gh150xz09xsgc1l1vyl";
+ type = "gem";
+ };
+ version = "0.4.1";
};
better_errors = {
dependencies = ["erubi" "rack" "rouge"];
@@ -341,36 +319,25 @@
};
version = "2.10.1";
};
- better_html = {
- dependencies = ["actionview" "activesupport" "ast" "erubi" "parser" "smart_properties"];
- groups = ["default" "development"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "1sk5s5lpwbd53s4a1xzm02nys3kfqdw5mh9i2qfn04hjsk8wk3gc";
- type = "gem";
- };
- version = "2.0.2";
- };
bigdecimal = {
- groups = ["default" "development" "pam_authentication" "production" "test"];
+ groups = ["default" "development" "opentelemetry" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "07y615s8yldk3k13lmkhpk1k190lcqvmxmnjwgh4bzjan9xrc36y";
+ sha256 = "1p2szbr4jdvmwaaj2kxlbv1rp0m6ycbgfyp0kjkkkswmniv5y21r";
type = "gem";
};
- version = "3.1.4";
+ version = "3.2.2";
};
bindata = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "04y4zgh4bbcb8wmkxwfqg4saky1d1f3xw8z6yk543q13h8ky8rz5";
+ sha256 = "0n4ymlgik3xcg94h52dzmh583ss40rl3sn0kni63v56sq8g6l62k";
type = "gem";
};
- version = "2.4.15";
+ version = "2.5.1";
};
binding_of_caller = {
dependencies = ["debug_inspector"];
@@ -378,20 +345,20 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "078n2dkpgsivcf0pr50981w95nfc2bsrp3wpf9wnxz1qsp8jbb9s";
+ sha256 = "16mjj15ks5ws53v2y31hxcmf46d0qjdvdaadpk7xsij2zymh4a9b";
type = "gem";
};
- version = "1.0.0";
+ version = "1.0.1";
};
blurhash = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "057afgqy73n8vm7k3cr4pbwm1hhqnm58lp4x7bgm5wzbs39m7xf8";
+ sha256 = "1wni86h2mlb7sj51nq3iwsvkrzlaggls9xlf4p9dzr1ns79dphca";
type = "gem";
};
- version = "0.1.7";
+ version = "0.1.8";
};
bootsnap = {
dependencies = ["msgpack"];
@@ -399,51 +366,41 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1vcg52gwl64xhhal6kwk1pc01y1klzdlnv1awyk89kb91z010x7q";
+ sha256 = "003xl226y120cbq1n99805jw6w75gcz1gs941yz3h7li3qy3kqha";
type = "gem";
};
- version = "1.16.0";
+ version = "1.18.6";
};
brakeman = {
+ dependencies = ["racc"];
groups = ["development"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1gliwnyma9f1mpr928c79i36q51yl68dwjd3jgwvsyr4piiiqr1r";
+ sha256 = "11ip6dgi7147wp8jgwk9g95k07323zh83q699d6wxif6rqdxj0mn";
type = "gem";
};
- version = "6.0.1";
+ version = "7.0.2";
};
browser = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0g4bcpax07kqqr9cp7cjc7i0pcij4nqpn1rdsg2wdwhzf00m6x32";
+ sha256 = "0bffb8dddrg6zn8c74swhy8mq2mysb195hi7chwwj9c8g2am4798";
type = "gem";
};
- version = "5.3.1";
- };
- brpoplpush-redis_script = {
- dependencies = ["concurrent-ruby" "redis"];
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "1nd5zj5yqmhv9lrsqz8s2dqq28v4ywy95qrw7nzhhf89dl4dq49l";
- type = "gem";
- };
- version = "0.1.3";
+ version = "6.2.0";
};
builder = {
groups = ["default" "development" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "045wzckxpwcqzrjr353cxnyaxgf0qg22jh00dcx7z38cys5g1jlr";
+ sha256 = "0pw3r2lyagsxkm71bf44v5b74f7l9r7di22brbyji9fwz791hya9";
type = "gem";
};
- version = "3.2.4";
+ version = "3.3.0";
};
bundler-audit = {
dependencies = ["thor"];
@@ -451,10 +408,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0gdx0019vj04n1512shhdx7hwphzqmdpw4vva2k551nd47y1dixx";
+ sha256 = "0j0h5cgnzk0ms17ssjkzfzwz65ggrs3lsp53a1j46p4616m1s1bk";
type = "gem";
};
- version = "0.9.1";
+ version = "0.9.2";
};
capybara = {
dependencies = ["addressable" "matrix" "mini_mime" "nokogiri" "rack" "rack-test" "regexp_parser" "xpath"];
@@ -462,10 +419,21 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "114qm5f5vhwaaw9rj1h2lcamh46zl13v1m18jiw68zl961gwmw6n";
+ sha256 = "1vxfah83j6zpw3v5hic0j70h519nvmix2hbszmjwm8cfawhagns2";
type = "gem";
};
- version = "3.39.2";
+ version = "3.40.0";
+ };
+ capybara-playwright-driver = {
+ dependencies = ["addressable" "capybara" "playwright-ruby-client"];
+ groups = ["test"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "09jyhmyngwbw2apc77z80kw4d4kd0wdvn46xxks7vjlzgywilipg";
+ type = "gem";
+ };
+ version = "0.5.6";
};
case_transform = {
dependencies = ["activesupport"];
@@ -483,20 +451,30 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0511idr8xps9625nh3kxr68sdy6l3xy2kcz7r57g47fxb1v18jj3";
+ sha256 = "1dsf9gjc2cj79vrnz2vgq573biqjw7ad4b0idm05xg6rb3y9gq4y";
type = "gem";
};
- version = "0.5.9.6";
+ version = "0.5.9.8";
+ };
+ cgi = {
+ groups = ["default"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1rj7agrnd1a4282vg13qkpwky0379svdb2z2lc0wl8588q6ikjx3";
+ type = "gem";
+ };
+ version = "0.4.2";
};
charlock_holmes = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0hybw8jw9ryvz5zrki3gc9r88jqy373m6v46ynxsdzv1ysiyr40p";
+ sha256 = "1c1dws56r7p8y363dhyikg7205z59a3bn4amnv2y488rrq8qm7ml";
type = "gem";
};
- version = "0.7.7";
+ version = "0.7.9";
};
chewy = {
dependencies = ["activesupport" "elasticsearch" "elasticsearch-dsl"];
@@ -504,10 +482,21 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0zca6v8i66jkxfdfjnn9xwg21pk95qn4ic8vzfvrx49d6sb8319y";
+ sha256 = "0kgqj7hcs09ln7i1rds1xify08rzjk02ryzvjdvnllg1fkh3vm2b";
type = "gem";
};
- version = "7.3.4";
+ version = "7.6.0";
+ };
+ childprocess = {
+ dependencies = ["logger"];
+ groups = ["default" "development" "test"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1v5nalaarxnfdm6rxb7q6fmc6nx097jd630ax6h9ch7xw95li3cs";
+ type = "gem";
+ };
+ version = "5.1.0";
};
chunky_png = {
groups = ["default"];
@@ -524,10 +513,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0q11v0iabvr6rif0d025xh078ili5frrihlj0m04zfg7lgvagxji";
+ sha256 = "198aswdyqlvcw9jkd95b7b8dp3fg0wx89kd1dx9wia1z36b1icin";
type = "gem";
};
- version = "0.2.0";
+ version = "1.2.0";
};
cocoon = {
groups = ["default"];
@@ -554,20 +543,20 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0krcwb6mn0iklajwngwsg850nk8k9b35dhmc2qkbdqvmifdi2y9q";
+ sha256 = "1ipbrgvf0pp6zxdk5ascp6i29aybz2bx9wdrlchjmpx6mhvkwfw1";
type = "gem";
};
- version = "1.2.2";
+ version = "1.3.5";
};
connection_pool = {
groups = ["default" "development" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1x32mcpm2cl5492kd6lbjbaf17qsssmpx9kdyr7z1wcif2cwyh0g";
+ sha256 = "0nrhsk7b3sjqbyl1cah6ibf1kvi3v93a7wf4637d355hp614mmyg";
type = "gem";
};
- version = "2.4.1";
+ version = "2.5.3";
};
cose = {
dependencies = ["cbor" "openssl-signature_algorithm"];
@@ -575,21 +564,21 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "00c6x4ha7qiaaf88qdbyf240mk146zz78rbm4qwyaxmwlmk7q933";
+ sha256 = "1rbdzl9n8ppyp38y75hw06s17kp922ybj6jfvhz52p83dg6xpm6m";
type = "gem";
};
- version = "1.3.0";
+ version = "1.3.1";
};
crack = {
- dependencies = ["rexml"];
+ dependencies = ["bigdecimal" "rexml"];
groups = ["default" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1cr1kfpw3vkhysvkk3wg7c54m75kd68mbm9rs5azdjdq57xid13r";
+ sha256 = "0jaa7is4fw1cxigm8vlyhg05bw4nqy4f91zjqxk7pp4c8bdyyfn8";
type = "gem";
};
- version = "0.4.5";
+ version = "1.0.0";
};
crass = {
groups = ["default" "development" "pam_authentication" "production" "test"];
@@ -607,10 +596,20 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "04q1vin8slr3k8mp76qz0wqgap6f9kdsbryvgfq9fljhrm463kpj";
+ sha256 = "1izp5vna86s7xivqzml4nviy01bv76arrd5is8wkncwp1by3zzbc";
type = "gem";
};
- version = "1.14.0";
+ version = "1.21.1";
+ };
+ csv = {
+ groups = ["default"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0gz7r2kazwwwyrwi95hbnhy54kwkfac5swh2gy5p5vw36fn38lbf";
+ type = "gem";
+ };
+ version = "3.3.5";
};
database_cleaner-active_record = {
dependencies = ["activerecord" "database_cleaner-core"];
@@ -618,10 +617,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "12hdsqnws9gyc9sxiyc8pjiwr0xa7136m1qbhmd1pk3vsrrvk13k";
+ sha256 = "1jxzgg3yccp3gjncl5ih0y13dcappmy0y8pq85wgjj0yx5fh0ixy";
type = "gem";
};
- version = "2.1.0";
+ version = "2.2.1";
};
database_cleaner-core = {
groups = ["default" "test"];
@@ -634,24 +633,35 @@
version = "2.0.1";
};
date = {
- groups = ["default" "development"];
+ groups = ["default" "development" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "03skfikihpx37rc27vr3hwrb057gxnmdzxhmzd4bf4jpkl0r55w1";
+ sha256 = "0kz6mc4b9m49iaans6cbx031j9y7ldghpi5fzsdh0n3ixwa8w9mz";
type = "gem";
};
- version = "3.3.3";
+ version = "3.4.1";
+ };
+ debug = {
+ dependencies = ["irb" "reline"];
+ groups = ["development" "test"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1wmfy5n5v2rzpr5vz698sqfj1gl596bxrqw44sahq4x0rxjdn98l";
+ type = "gem";
+ };
+ version = "1.11.0";
};
debug_inspector = {
groups = ["default" "development"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "01l678ng12rby6660pmwagmyg8nccvjfgs3487xna7ay378a59ga";
+ sha256 = "18k8x9viqlkh7dbmjzh8crbjy8w480arpa766cw1dnn3xcpa1pwv";
type = "gem";
};
- version = "1.1.0";
+ version = "1.2.0";
};
devise = {
dependencies = ["bcrypt" "orm_adapter" "railties" "responders" "warden"];
@@ -659,21 +669,21 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "121ljaaapil79dcsl5mkh5k613hv58z4z3g2lrnzb5qvqpb3h1j8";
+ sha256 = "1y57fpcvy1kjd4nb7zk7mvzq62wqcpfynrgblj558k3hbvz4404j";
type = "gem";
};
- version = "4.9.3";
+ version = "4.9.4";
};
devise-two-factor = {
- dependencies = ["activesupport" "attr_encrypted" "devise" "railties" "rotp"];
+ dependencies = ["activesupport" "devise" "railties" "rotp"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "15cbgb0hyq78myc6aaszzdrd9qll9n3qdhykmrx22qiyac3mnpy9";
+ sha256 = "041c6zrwm3za1scr07kdgmnlxj7lnrr1jcb832grkavf1sh9wf4h";
type = "gem";
};
- version = "4.1.1";
+ version = "6.1.0";
};
devise_pam_authenticatable2 = {
dependencies = ["devise" "rpam2"];
@@ -691,10 +701,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0rwvjahnp7cpmracd8x732rjgnilqv2sx7d1gfrysslc3h039fa9";
+ sha256 = "0qlrj2qyysc9avzlr4zs1py3x684hqm61n4czrsk1pyllz5x5q4s";
type = "gem";
};
- version = "1.5.0";
+ version = "1.6.2";
};
discard = {
dependencies = ["activerecord"];
@@ -702,31 +712,30 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1xavjhccyyzn9z6fz3034vgvzprc983mbrq6n9sc0drfw7m3vrip";
+ sha256 = "1l35bpwnxqd6pqqy315a1y6bi2n8y6cd69dqh4gpi5nz7njx5z3f";
type = "gem";
};
- version = "1.2.1";
+ version = "1.4.0";
};
docile = {
groups = ["default" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1lxqxgq71rqwj1lpl9q1mbhhhhhhdkkj7my341f2889pwayk85sz";
+ sha256 = "07pj4z3h8wk4fgdn6s62vw1lwvhj0ac0x10vfbdkr9xzk7krn5cn";
type = "gem";
};
- version = "1.4.0";
+ version = "1.4.1";
};
domain_name = {
- dependencies = ["unf"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0lcqjsmixjp52bnlgzh4lg9ppsk52x9hpwdjd53k8jnbah2602h0";
+ sha256 = "0cyr2xm576gqhqicsyqnhanni47408w2pgvrfi8pd13h2li3nsaz";
type = "gem";
};
- version = "0.5.20190701";
+ version = "0.6.20240107";
};
doorkeeper = {
dependencies = ["railties"];
@@ -734,52 +743,40 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1q2pywgyn6cbnm0fh3dln5z1qgd1g8hvb4x8rppjc1bpfxnfhi13";
+ sha256 = "1lsh9lzrglqlwm9icmn0ggrwjc9iy9308f9m59z1w2srmyp0fgd7";
type = "gem";
};
- version = "5.6.6";
+ version = "5.8.2";
};
dotenv = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1n0pi8x8ql5h1mijvm8lgn6bhq4xjb5a500p5r1krq4s6j9lg565";
+ sha256 = "1hwjsddv666wpp42bip3fqx7c5qq6s8lwf74dj71yn7d1h37c4cy";
type = "gem";
};
- version = "2.8.1";
- };
- dotenv-rails = {
- dependencies = ["dotenv" "railties"];
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "0v0gcbxzypcvy6fqq4gp80jb310xvdwj5n8qw9ci67g5yjvq2nxh";
- type = "gem";
- };
- version = "2.8.1";
+ version = "3.1.8";
};
drb = {
- dependencies = ["ruby2_keywords"];
groups = ["default" "development" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0h9c2qiam82y3caapa2x157j1lkk9954hrjg3p22hxcsk8fli3vb";
+ sha256 = "0wrkl7yiix268s2md1h6wh91311w95ikd8fy8m5gx589npyxc00b";
type = "gem";
};
- version = "2.1.1";
+ version = "2.2.3";
};
- ed25519 = {
+ dry-cli = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0zb2dr2ihb1qiknn5iaj1ha1w9p7lj9yq5waasndlfadz225ajji";
+ sha256 = "0nyrgj4a0ppk0qfp8cny4wb3hsr2cw55ynh2w973brhf54xxz5wc";
type = "gem";
};
- version = "1.3.0";
+ version = "1.2.0";
};
elasticsearch = {
dependencies = ["elasticsearch-api" "elasticsearch-transport"];
@@ -787,10 +784,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0havyxmvl157a653prspnbhgdchlx44xqxl170v1im5ggxwavcaq";
+ sha256 = "11pw5x7kg6f6m8rqy2kpbzdlnvijjpmbqkj2gz8237wkbl40y27d";
type = "gem";
};
- version = "7.13.3";
+ version = "7.17.11";
};
elasticsearch-api = {
dependencies = ["multi_json"];
@@ -798,10 +795,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0bmssarkk7lqkjdn8c9j7jvxcnn4hg1zcmhsky8bfvc99k33b3w8";
+ sha256 = "01wi43a3zylrq2vca08vir5va142g5m3jcsak3rprjck8jvggn7y";
type = "gem";
};
- version = "7.13.3";
+ version = "7.17.11";
};
elasticsearch-dsl = {
groups = ["default"];
@@ -814,35 +811,57 @@
version = "0.1.10";
};
elasticsearch-transport = {
- dependencies = ["faraday" "multi_json"];
+ dependencies = ["base64" "faraday" "multi_json"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0blfii8qvj0m6bg9sbfynxc40in7zfmw2wpi4clv7d9gclk053db";
+ sha256 = "00qgyyvjyyv7z22qjd408pby1h7902gdwkh8h3z3jk2y57amg06i";
type = "gem";
};
- version = "7.13.3";
+ version = "7.17.11";
};
- encryptor = {
+ email_spec = {
+ dependencies = ["htmlentities" "launchy" "mail"];
+ groups = ["test"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "049dhlyy2hcksp1wj9mx2fngk5limkm3afxysnizg1hi2dxbw8yz";
+ type = "gem";
+ };
+ version = "2.3.0";
+ };
+ email_validator = {
+ dependencies = ["activemodel"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0s8rvfl0vn8w7k1sgkc234060jh468s3zd45xa64p1jdmfa3zwmb";
+ sha256 = "0106y8xakq6frv2xc68zz76q2l2cqvhfjc7ji69yyypcbc4kicjs";
type = "gem";
};
- version = "3.0.0";
+ version = "2.2.4";
+ };
+ erb = {
+ groups = ["default" "development" "pam_authentication" "production" "test"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "08rc8pzri3g7c85c76x84j05hkk12jvalrm2m3n97k1n7f03j13n";
+ type = "gem";
+ };
+ version = "5.0.1";
};
erubi = {
groups = ["default" "development" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "08s75vs9cxlc4r1q2bjg4br8g9wc5lc5x5vl0vv4zq5ivxsdpgi7";
+ sha256 = "1naaxsqkv5b3vklab5sbb9sdpszrjzlfsbqpy7ncbnw510xi10m0";
type = "gem";
};
- version = "1.12.0";
+ version = "1.13.1";
};
et-orbi = {
dependencies = ["tzinfo"];
@@ -850,164 +869,86 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1d2z4ky2v15dpcz672i2p7lb2nc793dasq3yq3660h2az53kss9v";
+ sha256 = "0r6zylqjfv0xhdxvldr0kgmnglm57nm506pcm6085f0xqa68cvnj";
type = "gem";
};
- version = "1.2.7";
+ version = "1.2.11";
};
excon = {
+ dependencies = ["logger"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "08r6qgbpkxxsihjmlspk3l1sr69q5hx35p1l4wp7rmkbzys89867";
+ sha256 = "17asr18vawi08g3wbif0wdi8bnyj01d125saydl9j1f03fv0n16a";
type = "gem";
};
- version = "0.100.0";
+ version = "1.2.5";
};
fabrication = {
- groups = ["test"];
+ groups = ["development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0bxssmjp49whzq2zv7w751gr4nkdaiwcxd1vda0byigwyrnj6f5q";
+ sha256 = "1qrv8vvhjx9yi64bji6hrp08if14hmwdy08prg9qld3ij2nvz856";
type = "gem";
};
- version = "2.30.0";
+ version = "3.0.0";
};
faker = {
dependencies = ["i18n"];
- groups = ["test"];
+ groups = ["development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0ysiqlvyy1351bzx7h92r93a35s32l8giyf9bac6sgr142sh3cnn";
+ sha256 = "0wy4i4vl3h2v6scffx0zbp74vq1gfgq55m8x3n05kwp3na8h5a7r";
type = "gem";
};
- version = "3.2.1";
+ version = "3.5.2";
};
faraday = {
- dependencies = ["faraday-em_http" "faraday-em_synchrony" "faraday-excon" "faraday-httpclient" "faraday-multipart" "faraday-net_http" "faraday-net_http_persistent" "faraday-patron" "faraday-rack" "faraday-retry" "ruby2_keywords"];
+ dependencies = ["faraday-net_http" "json" "logger"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1c760q0ks4vj4wmaa7nh1dgvgqiwaw0mjr7v8cymy7i3ffgjxx90";
+ sha256 = "0xbv450qj2bx0qz9l2pjrd3kc057y6bglc3na7a78zby8ssiwlyc";
type = "gem";
};
- version = "1.10.3";
+ version = "2.13.1";
};
- faraday-em_http = {
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "12cnqpbak4vhikrh2cdn94assh3yxza8rq2p9w2j34bqg5q4qgbs";
- type = "gem";
- };
- version = "1.0.0";
- };
- faraday-em_synchrony = {
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "1vgrbhkp83sngv6k4mii9f2s9v5lmp693hylfxp2ssfc60fas3a6";
- type = "gem";
- };
- version = "1.0.0";
- };
- faraday-excon = {
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "0h09wkb0k0bhm6dqsd47ac601qiaah8qdzjh8gvxfd376x1chmdh";
- type = "gem";
- };
- version = "1.1.0";
- };
- faraday-httpclient = {
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "0fyk0jd3ks7fdn8nv3spnwjpzx2lmxmg2gh4inz3by1zjzqg33sc";
- type = "gem";
- };
- version = "1.0.1";
- };
- faraday-multipart = {
- dependencies = ["multipart-post"];
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "09871c4hd7s5ws1wl4gs7js1k2wlby6v947m2bbzg43pnld044lh";
- type = "gem";
- };
- version = "1.0.4";
- };
- faraday-net_http = {
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "1fi8sda5hc54v1w3mqfl5yz09nhx35kglyx72w7b8xxvdr0cwi9j";
- type = "gem";
- };
- version = "1.0.1";
- };
- faraday-net_http_persistent = {
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "0dc36ih95qw3rlccffcb0vgxjhmipsvxhn6cw71l7ffs0f7vq30b";
- type = "gem";
- };
- version = "1.2.0";
- };
- faraday-patron = {
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "19wgsgfq0xkski1g7m96snv39la3zxz6x7nbdgiwhg5v82rxfb6w";
- type = "gem";
- };
- version = "1.0.0";
- };
- faraday-rack = {
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "1h184g4vqql5jv9s9im6igy00jp6mrah2h14py6mpf9bkabfqq7g";
- type = "gem";
- };
- version = "1.0.0";
- };
- faraday-retry = {
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "153i967yrwnswqgvnnajgwp981k9p50ys1h80yz3q94rygs59ldd";
- type = "gem";
- };
- version = "1.0.3";
- };
- faraday_middleware = {
+ faraday-follow_redirects = {
dependencies = ["faraday"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1bw8mfh4yin2xk7138rg3fhb2p5g2dlmdma88k82psah9mbmvlfy";
+ sha256 = "1y87p3yk15bjbk0z9mf01r50lzxvp7agr56lbm9gxiz26mb9fbfr";
type = "gem";
};
- version = "1.2.0";
+ version = "0.3.0";
+ };
+ faraday-httpclient = {
+ dependencies = ["httpclient"];
+ groups = ["default"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0z6nv0cxxk9rm69x84861f5zn8jck99prmjpg4apxa75rihbwpyr";
+ type = "gem";
+ };
+ version = "2.0.2";
+ };
+ faraday-net_http = {
+ dependencies = ["net-http"];
+ groups = ["default"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0jp5ci6g40d6i50bsywp35l97nc2fpi9a592r2cibwicdb6y9wd1";
+ type = "gem";
+ };
+ version = "3.4.0";
};
fast_blank = {
groups = ["default"];
@@ -1024,20 +965,20 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1pd7pamzhdz2w0fbcvsfn2nyslznvphnwj16zw35g2b28zd2xyzx";
+ sha256 = "1s67b9n7ki3iaycypq8sh02377gjkaxadg4dq53bpgfk4xg3gkjz";
type = "gem";
};
- version = "2.2.7";
+ version = "2.4.0";
};
ffi = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1862ydmclzy1a0cjbvm8dz7847d9rch495ib0zb64y84d3xd4bkg";
+ sha256 = "19kdyjg3kv7x0ad4xsd4swy5izsbb1vl1rpb6qqcqisr5s23awi9";
type = "gem";
};
- version = "1.15.5";
+ version = "1.17.2";
};
ffi-compiler = {
dependencies = ["ffi" "rake"];
@@ -1045,10 +986,32 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0c2caqm9wqnbidcb8dj4wd3s902z15qmgxplwyfyqbwa0ydki7q1";
+ sha256 = "1844j58cdg2q6g0rqfwg4rrambnhf059h4yg9rfmrbrcs60kskx9";
type = "gem";
};
- version = "1.0.1";
+ version = "1.3.2";
+ };
+ flatware = {
+ dependencies = ["drb" "thor"];
+ groups = ["default" "test"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "06yllpzx5ib7cv1ar03279gm2qywnzsqfiz42g5y9fmp7z24yiik";
+ type = "gem";
+ };
+ version = "2.3.4";
+ };
+ flatware-rspec = {
+ dependencies = ["flatware" "rspec"];
+ groups = ["test"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1gqkjilaqbd6qq80rx3fbjppjbllndvhd629yyd29943lrp3m9nb";
+ type = "gem";
+ };
+ version = "2.3.4";
};
fog-core = {
dependencies = ["builder" "excon" "formatador" "mime-types"];
@@ -1056,10 +1019,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1agd6xgzk0rxrsjdpn94v4hy89s0nm2cs4zg2p880w2dan9xgrak";
+ sha256 = "1rjv4iqr64arxv07bh84zzbr1y081h21592b5zjdrk937al8mq1z";
type = "gem";
};
- version = "2.1.0";
+ version = "2.6.0";
};
fog-json = {
dependencies = ["fog-core" "multi_json"];
@@ -1073,25 +1036,35 @@
version = "1.2.0";
};
fog-openstack = {
- dependencies = ["fog-core" "fog-json" "ipaddress"];
+ dependencies = ["fog-core" "fog-json"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "11j18h61d3p0pcp9k5346lbj1lahab1dqybkrx9338932lmjn7ap";
+ sha256 = "0imx2c7yrwnd1jk6xzh5903cazymfvs3iq37dl49jss1a2d2lis6";
type = "gem";
};
- version = "0.3.10";
+ version = "1.1.5";
};
formatador = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0mprf1dwznz5ld0q1jpbyl59fwnwk6azspnd0am7zz7kfg3pxhv5";
+ sha256 = "1l06bv4avphbdmr1y4g0rqlczr38k6r65b3zghrbj2ynyhm3xqjl";
type = "gem";
};
- version = "0.3.0";
+ version = "1.1.0";
+ };
+ forwardable = {
+ groups = ["default"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1b5g1i3xdvmxxpq4qp0z4v78ivqnazz26w110fh4cvzsdayz8zgi";
+ type = "gem";
+ };
+ version = "1.3.3";
};
fugit = {
dependencies = ["et-orbi" "raabro"];
@@ -1099,21 +1072,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1cm2lrvhrpqq19hbdsxf4lq2nkb2qdldbdxh3gvi15l62dlb5zqq";
+ sha256 = "0s4qhq3mjl0gak5wl20w9d5jhq069mk1393dkj76s8i2pvkqb578";
type = "gem";
};
- version = "1.8.1";
- };
- fuubar = {
- dependencies = ["rspec-core" "ruby-progressbar"];
- groups = ["test"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "1028vn7j3kc5qqwswrf3has3qm4j9xva70xmzb3n29i89f0afwmj";
- type = "gem";
- };
- version = "2.5.1";
+ version = "1.11.1";
};
globalid = {
dependencies = ["activesupport"];
@@ -1126,16 +1088,38 @@
};
version = "1.2.1";
};
+ google-protobuf = {
+ dependencies = ["bigdecimal" "rake"];
+ groups = ["default" "opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "14a8pv6npmv3ppp5097rladsynk8fs4w6chlcylkls6xj9ngxdjd";
+ type = "gem";
+ };
+ version = "4.31.0";
+ };
+ googleapis-common-protos-types = {
+ dependencies = ["google-protobuf"];
+ groups = ["default" "opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0zyh9pxsw4zwv3iissirwqnx98qzkywqf3bwdrai6zpwph34ndsy";
+ type = "gem";
+ };
+ version = "1.20.0";
+ };
haml = {
dependencies = ["temple" "thor" "tilt"];
groups = ["default" "development"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "096yaxlbh89fzdhndrvqg6j3l9gsvys2sp0qvjxqikk7715fbxvi";
+ sha256 = "15yxph91zswbnfy7szpdcfbdfqqn595ff290hm4f6fcnhryvhvlf";
type = "gem";
};
- version = "6.2.0";
+ version = "6.3.0";
};
haml-rails = {
dependencies = ["actionpack" "activesupport" "haml" "railties"];
@@ -1154,20 +1138,20 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1rx8c71qf45v7r8188vj4hn86vq7qazp2f84y3fhdn6wg6wp6pkc";
+ sha256 = "1gvkhb18inkwkf9ja1i774975l259dzlvcvjii3zfyzmzylki5qb";
type = "gem";
};
- version = "0.51.0";
+ version = "0.64.0";
};
hashdiff = {
groups = ["default" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1nynpl0xbj0nphqx1qlmyggq58ms1phf5i03hk64wcc0a17x1m1c";
+ sha256 = "0xqsnx25lm1wwgchvrl5xla5zzk3d6gbkdfj062cwggdsvgfwc1c";
type = "gem";
};
- version = "1.0.1";
+ version = "1.1.2";
};
hashie = {
groups = ["default"];
@@ -1191,14 +1175,15 @@
version = "7.1.0";
};
highline = {
+ dependencies = ["reline"];
groups = ["default" "development"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1f8cr014j7mdqpdb9q17fp5vb5b8n1pswqaif91s3ylg5x3pygfn";
+ sha256 = "0jmvyhjp2v3iq47la7w6psrxbprnbnmzz0hxxski3vzn356x7jv7";
type = "gem";
};
- version = "2.1.0";
+ version = "3.1.2";
};
hiredis = {
groups = ["default"];
@@ -1210,6 +1195,17 @@
};
version = "0.6.3";
};
+ hiredis-client = {
+ dependencies = ["redis-client"];
+ groups = ["default"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "07sm9gp4l2khw8m259paw1xcy9yd1jabqnyjzsrgl3ndgqgrj6f8";
+ type = "gem";
+ };
+ version = "0.24.0";
+ };
hkdf = {
groups = ["default"];
platforms = [];
@@ -1221,7 +1217,7 @@
version = "0.3.0";
};
htmlentities = {
- groups = ["default"];
+ groups = ["default" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
@@ -1236,10 +1232,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1bzb8p31kzv6q5p4z5xq88mnqk414rrw0y5rkhpnvpl29x5c3bpw";
+ sha256 = "0z8x4c2bcg05x7ffrjy47cwarfqzlg8kcfxchk5jcfdyx7c04265";
type = "gem";
};
- version = "5.1.1";
+ version = "5.3.1";
};
http-cookie = {
dependencies = ["domain_name"];
@@ -1247,10 +1243,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "13rilvlv8kwbzqfb644qp6hrbsj82cbqmnzcvqip1p6vqx36sxbk";
+ sha256 = "19hsskzk5zpv14mnf07pq71hfk1fsjwfjcw616pgjjzjbi2f0kxi";
type = "gem";
};
- version = "1.0.5";
+ version = "1.0.8";
};
http-form_data = {
groups = ["default"];
@@ -1273,14 +1269,15 @@
version = "2.1.1";
};
httpclient = {
+ dependencies = ["mutex_m"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "19mxmvghp7ki3klsxwrlwr431li7hm1lczhhj8z4qihl2acy8l99";
+ sha256 = "1j4qwj1nv66v3n9s4xqf64x2galvjm630bwa5xngicllwic5jr2b";
type = "gem";
};
- version = "2.8.3";
+ version = "2.9.0";
};
httplog = {
dependencies = ["rack" "rainbow"];
@@ -1288,10 +1285,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0zjsgrlvwpqsnrza4ijlxjld4550c661sgbqp2j2wp638nlnls1a";
+ sha256 = "098n4dfmiydbm9if52h17kxglbli9gihjgzhcghv274ni2c9ab49";
type = "gem";
};
- version = "1.6.2";
+ version = "1.7.0";
};
i18n = {
dependencies = ["concurrent-ruby"];
@@ -1299,21 +1296,21 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0qaamqsh5f3szhcakkak8ikxlzxqnv49n2p7504hcz2l0f4nj0wx";
+ sha256 = "03sx3ahz1v5kbqjwxj48msw3maplpp2iyzs22l4jrzrqh4zmgfnf";
type = "gem";
};
- version = "1.14.1";
+ version = "1.14.7";
};
i18n-tasks = {
- dependencies = ["activesupport" "ast" "better_html" "erubi" "highline" "i18n" "parser" "rails-i18n" "rainbow" "terminal-table"];
+ dependencies = ["activesupport" "ast" "erubi" "highline" "i18n" "parser" "rails-i18n" "rainbow" "ruby-progressbar" "terminal-table"];
groups = ["development"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1s4kgpv7hmlg99cnpyvajba73vib67pdp1pa3g5rwkl838xgvnji";
+ sha256 = "0mpvpppwkzxal9k91lifafkwg676kqkg8ng6b1y7apfvwbhfkwvl";
type = "gem";
};
- version = "1.0.13";
+ version = "1.0.15";
};
idn-ruby = {
groups = ["default"];
@@ -1325,36 +1322,48 @@
};
version = "0.1.5";
};
+ inline_svg = {
+ dependencies = ["activesupport" "nokogiri"];
+ groups = ["default"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "03x1z55sh7cpb63g46cbd6135jmp13idcgqzqsnzinbg4cs2jrav";
+ type = "gem";
+ };
+ version = "1.10.0";
+ };
io-console = {
groups = ["default" "development" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0dikardh14c72gd9ypwh8dim41wvqmzfzf35mincaj5yals9m7ff";
+ sha256 = "18pgvl7lfjpichdfh1g50rpz0zpaqrpr52ybn9liv1v9pjn9ysnd";
type = "gem";
};
- version = "0.6.0";
- };
- ipaddress = {
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "1x86s0s11w202j6ka40jbmywkrx8fhq8xiy8mwvnkhllj57hqr45";
- type = "gem";
- };
- version = "0.8.3";
+ version = "0.8.0";
};
irb = {
- dependencies = ["rdoc" "reline"];
+ dependencies = ["pp" "rdoc" "reline"];
groups = ["default" "development" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "17p6arsklbzh2hvwwr8i4cfrpa7vhk8q88fhickhwmn7m80lxdw7";
+ sha256 = "1fpxa2m83rb7xlzs57daqwnzqjmz6j35xr7zb15s73975sak4br2";
type = "gem";
};
- version = "1.8.1";
+ version = "1.15.2";
+ };
+ jd-paperclip-azure = {
+ dependencies = ["addressable" "azure-blob" "hashie"];
+ groups = ["default"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1gcikrlqv6r9pqvw2kfyvmia3rikp9irhq1c10njz4z7i5za4xk9";
+ type = "gem";
+ };
+ version = "3.0.0";
};
jmespath = {
groups = ["default"];
@@ -1371,10 +1380,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0nalhin1gda4v8ybk6lq8f407cgfrj6qzn234yra4ipkmlbfmal6";
+ sha256 = "1x5b8ipv6g0z44wgc45039k04smsyf95h2m5m67mqq35sa5a955s";
type = "gem";
};
- version = "2.6.3";
+ version = "2.12.2";
};
json-canonicalization = {
groups = ["default"];
@@ -1387,26 +1396,26 @@
version = "1.0.0";
};
json-jwt = {
- dependencies = ["activesupport" "aes_key_wrap" "bindata" "httpclient"];
+ dependencies = ["activesupport" "aes_key_wrap" "base64" "bindata" "faraday" "faraday-follow_redirects"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "04315mf4p9qa97grdfqv922paghzdfrbb982ap0p99rqwla4znv6";
+ sha256 = "19bjs404inbydn40nampk5ij7vqkwpmqp3hp4dmjf50sdm6gzayc";
type = "gem";
};
- version = "1.15.3";
+ version = "1.16.7";
};
json-ld = {
- dependencies = ["htmlentities" "json-canonicalization" "link_header" "multi_json" "rack" "rdf"];
+ dependencies = ["htmlentities" "json-canonicalization" "link_header" "multi_json" "rack" "rdf" "rexml"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1carfj87p6cpd0xnysg5sj653rqmmwnnacsmjk42xdy40j15gp88";
+ sha256 = "09xbw6kc95qgmqcfjp0jjw8dnfm28lw9b5lf8bdh3p2vpy9ihlxr";
type = "gem";
};
- version = "3.3.1";
+ version = "3.3.2";
};
json-ld-preloaded = {
dependencies = ["json-ld" "rdf"];
@@ -1414,21 +1423,21 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "004s52m37b2kbw8dv4rdfm2d90h1023z1mw9zfcs0x87v8aq7zyn";
+ sha256 = "0l32rjawsxhgi59y7lmjwgmnk32585gih1ylvy08m3vx7cdbzmdg";
type = "gem";
};
- version = "3.2.2";
+ version = "3.3.1";
};
json-schema = {
- dependencies = ["addressable"];
+ dependencies = ["addressable" "bigdecimal"];
groups = ["test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "155rygs093i8i04i38a97hs5icmqk2jkkhx76w31yxyr3bxfbgx3";
+ sha256 = "16284slw1xqa2cf0g827hmqd3lb6kgn5z58xcrqpl7kpqj395wqy";
type = "gem";
};
- version = "4.0.0";
+ version = "5.2.1";
};
jsonapi-renderer = {
groups = ["default"];
@@ -1441,14 +1450,15 @@
version = "0.2.2";
};
jwt = {
+ dependencies = ["base64"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "16z11alz13vfc4zs5l3fk6n51n2jw9lskvc4h4prnww0y797qd87";
+ sha256 = "1i8wmzgb5nfhvkx1f6bhdwfm7v772172imh439v3xxhkv3hllhp6";
type = "gem";
};
- version = "2.7.1";
+ version = "2.10.1";
};
kaminari = {
dependencies = ["activesupport" "kaminari-actionview" "kaminari-activerecord" "kaminari-core"];
@@ -1499,31 +1509,31 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "14gnkcp924v8sbay7q6vz4kn37jylbnvrhi4y5c5jcffd51fbwid";
+ sha256 = "1j8z0757rb4kly4ghdzd6ihch6x5i0d53r543x2y9xa8cyrj7c4m";
type = "gem";
};
- version = "7.2.1";
+ version = "7.2.2";
};
language_server-protocol = {
groups = ["default" "development"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0gvb1j8xsqxms9mww01rmdl78zkd72zgxaap56bhv8j45z05hp1x";
+ sha256 = "1k0311vah76kg5m6zr7wmkwyk5p2f9d9hyckjpn3xgr83ajkj7px";
type = "gem";
};
- version = "3.17.0.3";
+ version = "3.17.0.5";
};
launchy = {
- dependencies = ["addressable"];
- groups = ["default" "development"];
+ dependencies = ["addressable" "childprocess" "logger"];
+ groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "06r43899384das2bkbrpsdxsafyyqa94il7111053idfalb4984a";
+ sha256 = "17h522xhwi5m4n6n9m22kw8z0vy8100sz5f3wbfqj5cnrjslgf3j";
type = "gem";
};
- version = "2.5.2";
+ version = "3.1.1";
};
letter_opener = {
dependencies = ["launchy"];
@@ -1531,10 +1541,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1y5d4ip4l12v58bgazadl45iv3a5j7jp2gwg96b6jy378zn42a1d";
+ sha256 = "1cnv3ggnzyagl50vzs1693aacv08bhwlprcvjp8jcg2w7cp3zwrg";
type = "gem";
};
- version = "1.8.1";
+ version = "1.10.0";
};
letter_opener_web = {
dependencies = ["actionmailer" "letter_opener" "railties" "rexml"];
@@ -1542,10 +1552,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0vvvaz2ngaxv0s6sj25gdvp73vd8pfl8q3jharadg18p3va0m1ik";
+ sha256 = "0q4qfi5wnn5bv93zjf10agmzap3sn7gkfmdbryz296wb1vz1wf9z";
type = "gem";
};
- version = "2.0.0";
+ version = "3.0.0";
};
link_header = {
groups = ["default"];
@@ -1557,16 +1567,47 @@
};
version = "0.0.8";
};
+ lint_roller = {
+ groups = ["default" "development"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "11yc0d84hsnlvx8cpk4cbj6a4dz9pk0r1k29p0n1fz9acddq831c";
+ type = "gem";
+ };
+ version = "1.1.0";
+ };
+ linzer = {
+ dependencies = ["cgi" "forwardable" "logger" "net-http" "openssl" "rack" "starry" "stringio" "uri"];
+ groups = ["default"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "09rjxsmmnahxsaw0hc4f0ffw4rcncjxa01xd9v5z4q9radfidr5j";
+ type = "gem";
+ };
+ version = "0.7.7";
+ };
llhttp-ffi = {
dependencies = ["ffi-compiler" "rake"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "00dh6zmqdj59rhcya0l4b9aaxq6n8xizfbil93k0g06gndyk5xz5";
+ sha256 = "1g57iw0l3y7x50132x6a1jyssxa6pw7srh69g0d6j7ri37yaf9cs";
type = "gem";
};
- version = "0.4.0";
+ version = "0.5.1";
+ };
+ logger = {
+ groups = ["default" "development" "pam_authentication" "production" "test"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "00q2zznygpbls8asz5knjvvj2brr3ghmqxgr83xnrdj4rk3xwvhr";
+ type = "gem";
+ };
+ version = "1.7.0";
};
lograge = {
dependencies = ["actionpack" "activesupport" "railties" "request_store"];
@@ -1585,14 +1626,14 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0d5p9vg2qkqfy60i93mpd3b25kw4bdxfai034y5a94pxp5fws61c";
+ sha256 = "0dx316q03x6rpdbl610rdaj2vfd5s8fanixk21j4gv3h5f230nk5";
type = "gem";
};
- version = "2.21.4";
+ version = "2.24.1";
};
mail = {
dependencies = ["mini_mime" "net-imap" "net-pop" "net-smtp"];
- groups = ["default" "development"];
+ groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
@@ -1606,10 +1647,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0kky3yiwagsk8gfbzn3mvl2fxlh3b39v6nawzm4wpjs6xxvvc4x0";
+ sha256 = "190n2mk8m1l708kr88fh6mip9sdsh339d2s6sgrik3sbnvz4jmhd";
type = "gem";
};
- version = "1.0.2";
+ version = "1.0.4";
};
mario-redis-lock = {
dependencies = ["redis"];
@@ -1632,47 +1673,36 @@
};
version = "0.4.2";
};
- md-paperclip-azure = {
- dependencies = ["addressable" "azure-storage-blob" "hashie"];
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "1hb1a06x3i8zrhl715jf46ha8r4iy0srcpdhnmp9l14qnnhzn0l5";
- type = "gem";
- };
- version = "2.2.0";
- };
memory_profiler = {
groups = ["development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1c81d68r4wx0ckbmqxlfqc2qpd94jwcmqdm0xgr0s46r48pv9k9q";
+ sha256 = "1y58ba08n4lx123c0hjcc752fc4x802mjy39qj1hq50ak3vpv8br";
type = "gem";
};
- version = "1.0.1";
+ version = "1.1.0";
};
mime-types = {
- dependencies = ["mime-types-data"];
- groups = ["default"];
+ dependencies = ["logger" "mime-types-data"];
+ groups = ["default" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0q8d881k1b3rbsfcdi3fx0b5vpdr5wcrhn88r2d9j7zjdkxp5mw5";
+ sha256 = "0mjyxl7c0xzyqdqa8r45hqg7jcw2prp3hkp39mdf223g4hfgdsyw";
type = "gem";
};
- version = "3.5.1";
+ version = "3.7.0";
};
mime-types-data = {
- groups = ["default"];
+ groups = ["default" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "17zdim7kzrh5j8c97vjqp4xp78wbyz7smdp4hi5iyzk0s9imdn5a";
+ sha256 = "0lnkfxcayx682rjjxmkjaaxq605akfka90m5rliw897sli6nprcj";
type = "gem";
};
- version = "3.2023.0808";
+ version = "3.2025.0514";
};
mini_mime = {
groups = ["default" "development" "test"];
@@ -1689,30 +1719,30 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "02mj8mpd6ck5gpcnsimx5brzggw5h5mmmpq2djdypfq16wcw82qq";
+ sha256 = "12f2830x7pq3kj0v8nz0zjvaw02sv01bqs1zwdrc04704kwcgmqc";
type = "gem";
};
- version = "2.8.4";
+ version = "2.8.9";
};
minitest = {
groups = ["default" "development" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0bkmfi9mb49m0fkdhl2g38i3xxa02d411gg0m8x0gvbwfmmg5ym3";
+ sha256 = "0mn7q9yzrwinvfvkyjiz548a4rmcwbmz2fn9nyzh4j1snin6q6rr";
type = "gem";
};
- version = "5.20.0";
+ version = "5.25.5";
};
msgpack = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "06n7556vxr3awh92xy1k5bli98bvq4pjm08mnl68ay4fzln7lcsg";
+ sha256 = "0cnpnbn2yivj9gxkh8mjklbgnpx6nf7b8j2hky01dl0040hy0k76";
type = "gem";
};
- version = "1.7.1";
+ version = "1.8.0";
};
multi_json = {
groups = ["default"];
@@ -1724,25 +1754,15 @@
};
version = "1.15.0";
};
- multipart-post = {
+ mutex_m = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0lgyysrpl50wgcb9ahg29i4p01z0irb3p9lirygma0kkfr5dgk9x";
+ sha256 = "0l875dw0lk7b2ywa54l0wjcggs94vb7gs8khfw9li75n2sn09jyg";
type = "gem";
};
- version = "2.3.0";
- };
- mutex_m = {
- groups = ["default" "development" "pam_authentication" "production" "test"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "1pkxnp7p44kvs460bbbgjarr7xy1j8kjjmhwkg1kypj9wgmwb6qa";
- type = "gem";
- };
- version = "0.1.2";
+ version = "0.3.0";
};
net-http = {
dependencies = ["uri"];
@@ -1750,46 +1770,35 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0y55ib1v2b8prqfi9ij7hca60b1j94s2bzr6vskwi3i5735472wq";
+ sha256 = "1ysrwaabhf0sn24jrp0nnp51cdv0jf688mh5i6fsz63q2c6b48cn";
type = "gem";
};
- version = "0.3.2";
- };
- net-http-persistent = {
- dependencies = ["connection_pool"];
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "0i1as2lgnw7b4jid0gw5glv5hnxz36nmfsbr9rmxbcap72ijgy03";
- type = "gem";
- };
- version = "4.0.2";
+ version = "0.6.0";
};
net-imap = {
dependencies = ["date" "net-protocol"];
- groups = ["default" "development"];
+ groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0d0r31b79appz95dd63wmasly1qjz3hn58ffxw6ix4mqk49jcbq2";
+ sha256 = "14zmzjy2sp87ac6iygkk3pz9snjvx4ks681vg4gxz8x8q7gmzajj";
type = "gem";
};
- version = "0.4.1";
+ version = "0.5.8";
};
net-ldap = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0xqcffn3c1564c4fizp10dzw2v5g2pabdzrcn25hq05bqhsckbar";
+ sha256 = "0g9gz39bs2iy4ky4fhjphimqd9m9wdsaz50anxgwg3yjrff3famy";
type = "gem";
};
- version = "0.18.0";
+ version = "0.19.0";
};
net-pop = {
dependencies = ["net-protocol"];
- groups = ["default" "development"];
+ groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
@@ -1800,35 +1809,35 @@
};
net-protocol = {
dependencies = ["timeout"];
- groups = ["default" "development"];
+ groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0dxckrlw4q1lcn3qg4mimmjazmg9bma5gllv72f8js3p36fb3b91";
+ sha256 = "1a32l4x73hz200cm587bc29q8q9az278syw3x6fkc9d1lv5y0wxa";
type = "gem";
};
- version = "0.2.1";
+ version = "0.2.2";
};
net-smtp = {
dependencies = ["net-protocol"];
- groups = ["default" "development"];
+ groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1rx3758w0bmbr21s2nsc6llflsrnp50fwdnly3ixra4v53gbhzid";
+ sha256 = "0dh7nzjp0fiaqq1jz90nv4nxhc2w359d7c199gmzq965cfps15pd";
type = "gem";
};
- version = "0.4.0";
+ version = "0.5.1";
};
nio4r = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0w9978zwjf1qhy3amkivab0f9syz6a7k0xgydjidaf7xc831d78f";
+ sha256 = "1a9www524fl1ykspznz54i0phfqya4x45hqaz67in9dvw1lfwpfr";
type = "gem";
};
- version = "2.5.9";
+ version = "2.7.4";
};
nokogiri = {
dependencies = ["mini_portile2" "racc"];
@@ -1836,33 +1845,21 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0k9w2z0953mnjrsji74cshqqp08q7m1r6zhadw1w0g34xzjh3a74";
+ sha256 = "0rb306hbky6cxfyc8vrwpvl40fdapjvhsk62h08gg9wwbn3n8x4c";
type = "gem";
};
- version = "1.15.4";
- };
- nsa = {
- dependencies = ["activesupport" "concurrent-ruby" "sidekiq" "statsd-ruby"];
- groups = ["default"];
- platforms = [];
- source = {
- fetchSubmodules = false;
- rev = "e020fcc3a54d993ab45b7194d89ab720296c111b";
- sha256 = "18pbm9qkancy38v0gpb6f5k0xd8r347jl4xvj4jn98ihfhzgwygj";
- type = "git";
- url = "https://github.com/jhawthorn/nsa.git";
- };
- version = "0.2.8";
+ version = "1.18.8";
};
oj = {
+ dependencies = ["bigdecimal" "ostruct"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0m4vsd6i093kmyz9gckvzpnws997laldaiaf86hg5lza1ir82x7n";
+ sha256 = "1cajn3ylwhby1x51d9hbchm964qwb5zp63f7sfdm55n85ffn1ara";
type = "gem";
};
- version = "3.16.1";
+ version = "3.16.11";
};
omniauth = {
dependencies = ["hashie" "rack" "rack-protection"];
@@ -1870,23 +1867,21 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "15xjsxis357np7dy1lak39x1n8g8wxljb08wplw5i4gxi743zr7j";
+ sha256 = "1hjnb5b5m549irs0h1455ipzsv82pikdagx9wjb6r4j1bkjy494d";
type = "gem";
};
- version = "2.1.1";
+ version = "2.1.3";
};
omniauth-cas = {
dependencies = ["addressable" "nokogiri" "omniauth"];
groups = ["default"];
platforms = [];
source = {
- fetchSubmodules = false;
- rev = "4211e6d05941b4a981f9a36b49ec166cecd0e271";
- sha256 = "1zs0xp062f6wk7xxy8w81838qr855kp7idbgpbrhpl319xzc1xkc";
- type = "git";
- url = "https://github.com/stanhu/omniauth-cas.git";
+ remotes = ["https://rubygems.org"];
+ sha256 = "1yynk95xhccvkb1j7rcb834ch80y85n2bhyimq946ib487z8wcx1";
+ type = "gem";
};
- version = "2.0.0";
+ version = "3.0.1";
};
omniauth-rails_csrf_protection = {
dependencies = ["actionpack" "omniauth"];
@@ -1894,10 +1889,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1kwswnkyl8ym6i4wv65qh3qchqbf2n0c6lbhfgbvkds3gpmnlm7w";
+ sha256 = "1q2zvkw34vk1vyhn5kp30783w1wzam9i9g5ygsdjn2gz59kzsw0i";
type = "gem";
};
- version = "1.0.1";
+ version = "1.0.2";
};
omniauth-saml = {
dependencies = ["omniauth" "ruby-saml"];
@@ -1905,10 +1900,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "01k9rkg97npcgm8r4x3ja8y20hsg4zy0dcjpzafx148q4yxbg74n";
+ sha256 = "1sznc4d2qhqmkw1vhpx2v5i9ndfb4k25cazhz74cbv18wyp4bk2s";
type = "gem";
};
- version = "2.1.0";
+ version = "2.2.4";
};
omniauth_openid_connect = {
dependencies = ["omniauth" "openid_connect"];
@@ -1916,31 +1911,31 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "08yl0x203k6nrshc70zawfqh79ap1c3fyka9zwwy61cvn7sih4sz";
+ sha256 = "099xg7s6450wlfzs77mbdx78g3dp0glx5q6f44i78akf7283hbqz";
type = "gem";
};
- version = "0.6.1";
+ version = "0.8.0";
};
openid_connect = {
- dependencies = ["activemodel" "attr_required" "json-jwt" "net-smtp" "rack-oauth2" "swd" "tzinfo" "validate_email" "validate_url" "webfinger"];
+ dependencies = ["activemodel" "attr_required" "email_validator" "faraday" "faraday-follow_redirects" "json-jwt" "mail" "rack-oauth2" "swd" "tzinfo" "validate_url" "webfinger"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1k9kdivp45v6vhzdrnl5fzhd378gjj2hl4w9bazbqnfm15rsnzc8";
+ sha256 = "10i13cn40jiiw8lslkv7bj1isinnwbmzlk6msgiph3gqry08702x";
type = "gem";
};
- version = "1.4.2";
+ version = "2.3.1";
};
openssl = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0c649921vg2l939z5cc3jwd8p1v49099pdhxfk7sb9qqx5wi5873";
+ sha256 = "0ygfbbs3c61d32ymja2k6sznj5pr540cip9z91lhzcvsr4zmffpz";
type = "gem";
};
- version = "3.1.0";
+ version = "3.3.0";
};
openssl-signature_algorithm = {
dependencies = ["openssl"];
@@ -1953,6 +1948,313 @@
};
version = "1.3.0";
};
+ opentelemetry-api = {
+ groups = ["default" "opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "15x9bq13k53k14r3h5r0pn7cnl3g7pdy0p0662k1s2x7mgkk7k4d";
+ type = "gem";
+ };
+ version = "1.5.0";
+ };
+ opentelemetry-common = {
+ dependencies = ["opentelemetry-api"];
+ groups = ["default" "opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "13c7qnqai6djfd6rjwdwcwbz9f77vcmy0chx1avpxmiqz2h9cpnf";
+ type = "gem";
+ };
+ version = "0.22.0";
+ };
+ opentelemetry-exporter-otlp = {
+ dependencies = ["google-protobuf" "googleapis-common-protos-types" "opentelemetry-api" "opentelemetry-common" "opentelemetry-sdk" "opentelemetry-semantic_conventions"];
+ groups = ["opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "15xssmviwsi7wqmrbx5khm2imvwsrzmxdli7rkvzqbbqpd309jq7";
+ type = "gem";
+ };
+ version = "0.30.0";
+ };
+ opentelemetry-helpers-sql = {
+ dependencies = ["opentelemetry-api"];
+ groups = ["default" "opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "13fvxvia6qxrdz06s5g4bs4fc1hdgkps7yz45s2n26wxqv163s0r";
+ type = "gem";
+ };
+ version = "0.1.1";
+ };
+ opentelemetry-helpers-sql-obfuscation = {
+ dependencies = ["opentelemetry-common"];
+ groups = ["default" "opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0jwyx8jk1faszd20s0qrvgvxs9ddvnfrqixy099pn9lqizandn7m";
+ type = "gem";
+ };
+ version = "0.3.0";
+ };
+ opentelemetry-instrumentation-action_mailer = {
+ dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-active_support" "opentelemetry-instrumentation-base"];
+ groups = ["default" "opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "18p9dvq4mb8s5f1ndabjng07yabv5xgl5d80fcvc1383faarbdg8";
+ type = "gem";
+ };
+ version = "0.4.0";
+ };
+ opentelemetry-instrumentation-action_pack = {
+ dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base" "opentelemetry-instrumentation-rack"];
+ groups = ["default" "opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1k09hr93fib38i6ajh0abkfvpvng6k2qsvds4jd08znfzyjs17jf";
+ type = "gem";
+ };
+ version = "0.12.1";
+ };
+ opentelemetry-instrumentation-action_view = {
+ dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-active_support" "opentelemetry-instrumentation-base"];
+ groups = ["default" "opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0qf5pklfyxrn2pskhmhd1gnp9i72yaqw114rmc5nrxhbcm24chsb";
+ type = "gem";
+ };
+ version = "0.9.0";
+ };
+ opentelemetry-instrumentation-active_job = {
+ dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"];
+ groups = ["opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0gb1snnd087nh8r5vvnl8ahg3k3bi2b9rb1m8r2aj7220m78hpcx";
+ type = "gem";
+ };
+ version = "0.8.0";
+ };
+ opentelemetry-instrumentation-active_model_serializers = {
+ dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-active_support" "opentelemetry-instrumentation-base"];
+ groups = ["opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1gjbdkamj147vd1hcjyyqir8z4nwmd05a8ac3h94y3n9n6phzzgx";
+ type = "gem";
+ };
+ version = "0.22.0";
+ };
+ opentelemetry-instrumentation-active_record = {
+ dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"];
+ groups = ["default" "opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0h01lq8xjjdaprprqzj6alq7gw9lwdkkakjjyyxsg3ylpwnvkg4w";
+ type = "gem";
+ };
+ version = "0.9.0";
+ };
+ opentelemetry-instrumentation-active_storage = {
+ dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-active_support" "opentelemetry-instrumentation-base"];
+ groups = ["default" "opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "00x7yjzflxmqiywczlih6vi301b1xm6rwbwlzv0hx87cpdm94m56";
+ type = "gem";
+ };
+ version = "0.1.1";
+ };
+ opentelemetry-instrumentation-active_support = {
+ dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"];
+ groups = ["default" "opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "16frcxhnb5vjihkff3wl6pnq0m4wkpii7la1d25d03j29qsh5qcv";
+ type = "gem";
+ };
+ version = "0.8.0";
+ };
+ opentelemetry-instrumentation-base = {
+ dependencies = ["opentelemetry-api" "opentelemetry-common" "opentelemetry-registry"];
+ groups = ["default" "opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0l0w7iya56y458mzws9q246whff2bf597553d5i3xkrcxb707qdk";
+ type = "gem";
+ };
+ version = "0.23.0";
+ };
+ opentelemetry-instrumentation-concurrent_ruby = {
+ dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"];
+ groups = ["opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "15v8khcyg9wz5v7kysagkbmdv895qahb0b6q7ajk2qznniaix9pv";
+ type = "gem";
+ };
+ version = "0.22.0";
+ };
+ opentelemetry-instrumentation-excon = {
+ dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"];
+ groups = ["opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "01rzi9d1hi402a8vdr439by4zy8x4rfq3vwnlzz3nzs50mxcbr9s";
+ type = "gem";
+ };
+ version = "0.23.0";
+ };
+ opentelemetry-instrumentation-faraday = {
+ dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"];
+ groups = ["opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0r25vvkxawngzm7an652npawjhir6zwics8635k5z7d60hfb2xi3";
+ type = "gem";
+ };
+ version = "0.27.0";
+ };
+ opentelemetry-instrumentation-http = {
+ dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"];
+ groups = ["opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0gxvhlgk1cvn51bvahyd93axg6zd4pj3r391m3q51y30z894qhkh";
+ type = "gem";
+ };
+ version = "0.25.1";
+ };
+ opentelemetry-instrumentation-http_client = {
+ dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"];
+ groups = ["opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1p4w5zd2b0ndzwwfc8np1xyp4kzd59k7hpcwpkk0ghlmbnsmbkwh";
+ type = "gem";
+ };
+ version = "0.23.0";
+ };
+ opentelemetry-instrumentation-net_http = {
+ dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"];
+ groups = ["opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "100a3kzk8ckifxaw0n6xpg6hxxw0yrqmfwjp47khgy2831r3n4li";
+ type = "gem";
+ };
+ version = "0.23.0";
+ };
+ opentelemetry-instrumentation-pg = {
+ dependencies = ["opentelemetry-api" "opentelemetry-helpers-sql" "opentelemetry-helpers-sql-obfuscation" "opentelemetry-instrumentation-base"];
+ groups = ["opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "09sgqwxavzgd7gsgr5w909p794g75602qsn6jvhs5qqj03bkldc5";
+ type = "gem";
+ };
+ version = "0.30.1";
+ };
+ opentelemetry-instrumentation-rack = {
+ dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"];
+ groups = ["opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1bbvp2mnbcrldcp3hzm2fv52zdsqf0i9kz4r12msq24f6l5r2mca";
+ type = "gem";
+ };
+ version = "0.26.0";
+ };
+ opentelemetry-instrumentation-rails = {
+ dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-action_mailer" "opentelemetry-instrumentation-action_pack" "opentelemetry-instrumentation-action_view" "opentelemetry-instrumentation-active_job" "opentelemetry-instrumentation-active_record" "opentelemetry-instrumentation-active_storage" "opentelemetry-instrumentation-active_support" "opentelemetry-instrumentation-base" "opentelemetry-instrumentation-concurrent_ruby"];
+ groups = ["opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "05xpiq4j17vcjnrxxb0zkb67c4y2b7q1g4qvf6ln83b6svx2c7pj";
+ type = "gem";
+ };
+ version = "0.36.0";
+ };
+ opentelemetry-instrumentation-redis = {
+ dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"];
+ groups = ["opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "183v8q8a74fc9dnb6ny44dsgq6142smic6x4ivz3v50casjznpii";
+ type = "gem";
+ };
+ version = "0.26.1";
+ };
+ opentelemetry-instrumentation-sidekiq = {
+ dependencies = ["opentelemetry-api" "opentelemetry-instrumentation-base"];
+ groups = ["opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1lpkc1ihifbjns2wf17kf9pmhx73j3i1in4fkar469k4i2fylfl5";
+ type = "gem";
+ };
+ version = "0.26.1";
+ };
+ opentelemetry-registry = {
+ dependencies = ["opentelemetry-api"];
+ groups = ["default" "opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "13wns85c08hjy7gqqjxqad9pp5shp0lxskrssz0w3si9mazscgwh";
+ type = "gem";
+ };
+ version = "0.4.0";
+ };
+ opentelemetry-sdk = {
+ dependencies = ["opentelemetry-api" "opentelemetry-common" "opentelemetry-registry" "opentelemetry-semantic_conventions"];
+ groups = ["opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1xqx6zxf6msrryz5hr2s3nwakin0nmxfgz9bkwpmpbf7lss7kngs";
+ type = "gem";
+ };
+ version = "1.8.0";
+ };
+ opentelemetry-semantic_conventions = {
+ dependencies = ["opentelemetry-api"];
+ groups = ["default" "opentelemetry"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1jzx18lmcv27pma1hbrccb9g6daadd6c4192r8w8x2nli3shkwl9";
+ type = "gem";
+ };
+ version = "1.11.0";
+ };
orm_adapter = {
groups = ["default" "pam_authentication"];
platforms = [];
@@ -1963,25 +2265,36 @@
};
version = "0.5.0";
};
- ox = {
+ ostruct = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1yq0h1niimm8z6z8p1yxb104kxqw69bvbrax84598zfjxifcxhxz";
+ sha256 = "05xqijcf80sza5pnlp1c8whdaay8x5dc13214ngh790zrizgp8q9";
type = "gem";
};
- version = "2.14.17";
+ version = "0.6.1";
+ };
+ ox = {
+ dependencies = ["bigdecimal"];
+ groups = ["default"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0rhv8qdnm3s34yvsvmrii15f2238rk3psa6pq6x5x367sssfv6ja";
+ type = "gem";
+ };
+ version = "2.14.23";
};
parallel = {
groups = ["default" "development"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0jcc512l38c0c163ni3jgskvq1vc3mr8ly5pvjijzwvfml9lf597";
+ sha256 = "0c719bfgcszqvk9z47w2p8j2wkz5y35k48ywwas5yxbbh3hm3haa";
type = "gem";
};
- version = "1.23.0";
+ version = "1.27.0";
};
parser = {
dependencies = ["ast" "racc"];
@@ -1989,10 +2302,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0r69dbh6h6j4d54isany2ir4ni4gf2ysvk3k44awi6amz18nggpd";
+ sha256 = "0i9w8msil4snx5w11ix9b0wf52vjc3r49khy3ddgl1xk890kcxi4";
type = "gem";
};
- version = "3.2.2.4";
+ version = "3.3.8.0";
};
parslet = {
groups = ["default"];
@@ -2020,10 +2333,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0pfj771p5a29yyyw58qacks464sl86d5m3jxjl5rlqqw2m3v5xq4";
+ sha256 = "1p2gqqrm895fzr9vi8d118zhql67bm8ydjvgqbq1crdnfggzn7kn";
type = "gem";
};
- version = "1.5.4";
+ version = "1.5.9";
};
pghero = {
dependencies = ["activerecord"];
@@ -2031,20 +2344,32 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0gzbgq392b0z7ma1jrdnzzfppdlgjdl9akc4iajq4g46raqd4899";
+ sha256 = "08pm154bx5zbpgcqhk7gq78qq1mb149s2l7y0fxniqfvjmq4kn58";
type = "gem";
};
- version = "3.3.4";
+ version = "3.7.0";
};
- posix-spawn = {
- groups = ["default"];
+ playwright-ruby-client = {
+ dependencies = ["concurrent-ruby" "mime-types"];
+ groups = ["default" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0cmb0svalqcxfzlzc5fvrci12b79x7bakasr8gkl3q5rz6di1q52";
+ sha256 = "114wkr2hj55c7n4xq30nb4g7kcm9a1mhsy0934jr9mzwfr0kyhaa";
type = "gem";
};
- version = "0.3.15";
+ version = "1.52.0";
+ };
+ pp = {
+ dependencies = ["prettyprint"];
+ groups = ["default" "development" "pam_authentication" "production" "test"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1zxnfxjni0r9l2x42fyq0sqpnaf5nakjbap8irgik4kg1h9c6zll";
+ type = "gem";
+ };
+ version = "0.6.2";
};
premailer = {
dependencies = ["addressable" "css_parser" "htmlentities"];
@@ -2052,10 +2377,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "10rzwdz43yy20lwzsr2as6aivhvwjvqh4nd48sa0ga57sizf1fb4";
+ sha256 = "1ryivdnij1990hcqqmq4s0x1vjvfl0awjc9b91f8af17v2639qhg";
type = "gem";
};
- version = "1.21.0";
+ version = "1.27.0";
};
premailer-rails = {
dependencies = ["actionmailer" "net-smtp" "premailer"];
@@ -2068,36 +2393,68 @@
};
version = "1.12.0";
};
- private_address_check = {
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "05phz0vscfh9chv90yc9091pifw3cpwkh76flnhrmvja1q3na4cy";
- type = "gem";
- };
- version = "0.5.0";
- };
- psych = {
- dependencies = ["stringio"];
+ prettyprint = {
groups = ["default" "development" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0qvzx3ddswgdx3ck48ak1wa18jai4s6ddv1a0cl59hm0dqrb737i";
+ sha256 = "14zicq3plqi217w6xahv7b8f7aj5kpxv1j1w98344ix9h5ay3j9b";
type = "gem";
};
- version = "5.1.1";
+ version = "0.2.0";
+ };
+ prism = {
+ groups = ["default" "development"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0gkhpdjib9zi9i27vd9djrxiwjia03cijmd6q8yj2q1ix403w3nw";
+ type = "gem";
+ };
+ version = "1.4.0";
+ };
+ prometheus_exporter = {
+ dependencies = ["webrick"];
+ groups = ["default"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "15vl8fw8vjnaj9g129dzrwk9nlrdqgffaj3rys4ba9ns2bqim9rq";
+ type = "gem";
+ };
+ version = "2.2.0";
+ };
+ propshaft = {
+ dependencies = ["actionpack" "activesupport" "rack" "railties"];
+ groups = ["default"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0sqg0xf46xd47zdpm8d12kfnwl0y5jb2hj10imzb3bk6mwgkd2fk";
+ type = "gem";
+ };
+ version = "1.1.0";
+ };
+ psych = {
+ dependencies = ["date" "stringio"];
+ groups = ["default" "development" "pam_authentication" "production" "test"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0vii1xc7x81hicdbp7dlllhmbw5w3jy20shj696n0vfbbnm2hhw1";
+ type = "gem";
+ };
+ version = "5.2.6";
};
public_suffix = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0n9j7mczl15r3kwqrah09cxj8hxdfawiqxa60kga2bmxl9flfz9k";
+ sha256 = "1543ap9w3ydhx39ljcd675cdz9cr948x9mp00ab8qvq6118wv9xz";
type = "gem";
};
- version = "5.0.3";
+ version = "6.0.2";
};
puma = {
dependencies = ["nio4r"];
@@ -2105,10 +2462,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1y8jcw80zcxvdq0id329lzmp5pzx7hpac227d7sgjkblc89s3pfm";
+ sha256 = "11xd3207k5rl6bz0qxhcb3zcr941rhx7ig2f19gxxmdk7s3hcp7j";
type = "gem";
};
- version = "6.4.0";
+ version = "6.6.0";
};
pundit = {
dependencies = ["activesupport"];
@@ -2116,10 +2473,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1wb03yzy1j41822rbfh9nn77im3zh1f5v8di05cd8rsrdpws542b";
+ sha256 = "1nmy0nkgayjifi2j38fn55nb7z1xq3ma2wp19d7c7rmz7ynvidjg";
type = "gem";
};
- version = "2.3.0";
+ version = "2.5.0";
};
raabro = {
groups = ["default"];
@@ -2136,20 +2493,20 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "11v3l46mwnlzlc371wr3x6yylpgafgwdf0q7hc7c1lzx6r414r5g";
+ sha256 = "0byn0c9nkahsl93y9ln5bysq4j31q8xkf2ws42swighxd4lnjzsa";
type = "gem";
};
- version = "1.7.1";
+ version = "1.8.1";
};
rack = {
groups = ["default" "development" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "15rdwbyk71c9nxvd527bvb8jxkcys8r3dj3vqra5b3sa63qs30vv";
+ sha256 = "0da64fq3w671qhp7ji1zs84m5lyhalq4khqhbfw5dz0y6mn61dgg";
type = "gem";
};
- version = "2.2.8";
+ version = "3.1.16";
};
rack-attack = {
dependencies = ["rack"];
@@ -2163,37 +2520,37 @@
version = "6.7.0";
};
rack-cors = {
- dependencies = ["rack"];
+ dependencies = ["logger" "rack"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "02lvkg1nb4z3zc2nry545dap7a64bb9h2k8waxfz0jkabkgnpimw";
+ sha256 = "0s1zymxhk7pkzsrgrn5ax862p07s0drbv0qvnq36jq1rvdhvx5bv";
type = "gem";
};
- version = "2.0.1";
+ version = "3.0.0";
};
rack-oauth2 = {
- dependencies = ["activesupport" "attr_required" "httpclient" "json-jwt" "rack"];
+ dependencies = ["activesupport" "attr_required" "faraday" "faraday-follow_redirects" "json-jwt" "rack"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1fknwsxz4429w1hndl6y30cmm2n34wmmaaj2hhp6jrm8ssfsfwjf";
+ sha256 = "19fi42hi9l474ki89y6cs8vrpfmc1h8zpd02iwjy4hw0a1yahfn7";
type = "gem";
};
- version = "1.21.3";
+ version = "2.2.1";
};
rack-protection = {
- dependencies = ["rack"];
+ dependencies = ["base64" "logger" "rack"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1a12m1mv8dc0g90fs1myvis8vsgr427k1arg1q4a9qlfw6fqyhis";
+ sha256 = "0sniswjyi0yn949l776h7f67rvx5w9f04wh69z5g19vlsnjm98ji";
type = "gem";
};
- version = "3.0.5";
+ version = "4.1.1";
};
rack-proxy = {
dependencies = ["rack"];
@@ -2201,21 +2558,21 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1a62439xwn5v6hsl9s11hdk4wj58czhcbg7lminv23mnkc0ca147";
+ sha256 = "12jw7401j543fj8cc83lmw72d8k6bxvkp9rvbifi88hh01blnsj4";
type = "gem";
};
- version = "0.7.6";
+ version = "0.7.7";
};
rack-session = {
- dependencies = ["rack"];
+ dependencies = ["base64" "rack"];
groups = ["default" "development" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "11w6yd60n8ng1ncs1ajlv42dg08yks09drlsgriydgpcjwz21d40";
+ sha256 = "1sg4laz2qmllxh1c5sqlj9n1r7scdn08p3m4b0zmhjvyx9yw0v8b";
type = "gem";
};
- version = "1.0.1";
+ version = "2.1.1";
};
rack-test = {
dependencies = ["rack"];
@@ -2223,21 +2580,21 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1ysx29gk9k14a14zsp5a8czys140wacvp91fja8xcja0j1hzqq8c";
+ sha256 = "0qy4ylhcfdn65a5mz2hly7g9vl0g13p5a0rmm6sc0sih5ilkcnh0";
type = "gem";
};
- version = "2.1.0";
+ version = "2.2.0";
};
rackup = {
- dependencies = ["rack" "webrick"];
+ dependencies = ["rack"];
groups = ["default" "development" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1wbr03334ba9ilcq25wh9913xciwj0j117zs60vsqm0zgwdkwpp9";
+ sha256 = "13brkq5xkj6lcdxj3f0k7v28hgrqhqxjlhd4y2vlicy5slgijdzp";
type = "gem";
};
- version = "1.0.0";
+ version = "2.2.1";
};
rails = {
dependencies = ["actioncable" "actionmailbox" "actionmailer" "actionpack" "actiontext" "actionview" "activejob" "activemodel" "activerecord" "activestorage" "activesupport" "railties"];
@@ -2245,21 +2602,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "05yw7n1fpnw2fslbyrsl081fwnki4ih8pz4qnnhmrfniq6n3drv6";
+ sha256 = "1ik4y7c545pb9lf70prv0n4drblwjlaxb22fhq18wf607slabypx";
type = "gem";
};
- version = "7.1.1";
- };
- rails-controller-testing = {
- dependencies = ["actionpack" "actionview" "activesupport"];
- groups = ["test"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "151f303jcvs8s149mhx2g5mn67487x0blrf9dzl76q1nb7dlh53l";
- type = "gem";
- };
- version = "1.0.5";
+ version = "8.0.2";
};
rails-dom-testing = {
dependencies = ["activesupport" "minitest" "nokogiri"];
@@ -2267,10 +2613,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0fx9dx1ag0s1lr6lfr34lbx5i1bvn3bhyf3w3mx6h7yz90p725g5";
+ sha256 = "07awj8bp7jib54d0khqw391ryw8nphvqgw4bb12cl4drlx9pkk4a";
type = "gem";
};
- version = "2.2.0";
+ version = "2.3.0";
};
rails-html-sanitizer = {
dependencies = ["loofah" "nokogiri"];
@@ -2278,10 +2624,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1pm4z853nyz1bhhqr7fzl44alnx4bjachcr6rh6qjj375sfz3sc6";
+ sha256 = "0q55i6mpad20m2x1lg5pkqfpbmmapk0sjsrvr1sqgnj2hb5f5z1m";
type = "gem";
};
- version = "1.6.0";
+ version = "1.6.2";
};
rails-i18n = {
dependencies = ["i18n" "railties"];
@@ -2289,23 +2635,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1k8jvm3l4gafw7hyvpky7yzjjnkr3iy7l59lyam8ah3kqhmzk7zf";
+ sha256 = "03dy8nmq2gxvkg8zqq6c0wwz98mdwp3i9krn0slcknhb8nak2c0m";
type = "gem";
};
- version = "7.0.8";
- };
- rails-settings-cached = {
- dependencies = ["rails"];
- groups = ["default"];
- platforms = [];
- source = {
- fetchSubmodules = false;
- rev = "86328ef0bd04ce21cc0504ff5e334591e8c2ccab";
- sha256 = "06r637gimh5miq2i6ywxn9gp7nqk8n8555yw8239mykalbzda69h";
- type = "git";
- url = "https://github.com/mastodon/rails-settings-cached.git";
- };
- version = "0.6.6";
+ version = "8.0.1";
};
railties = {
dependencies = ["actionpack" "activesupport" "irb" "rackup" "rake" "thor" "zeitwerk"];
@@ -2313,10 +2646,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "19zsl9svr67126r1lm35y7y40i16gpnz1ppapj2h5879cnrliwrw";
+ sha256 = "1yaw5sw9vxvvkkc335laxv2k34rs2nxx9hdsy604k9wvqi03yz0d";
type = "gem";
};
- version = "7.1.1";
+ version = "8.0.2";
};
rainbow = {
groups = ["default" "development"];
@@ -2329,25 +2662,25 @@
version = "3.1.1";
};
rake = {
- groups = ["default" "development" "pam_authentication" "production" "test"];
+ groups = ["default" "development" "opentelemetry" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "15whn7p9nrkxangbs9hh75q585yfn66lv0v2mhj6q6dl6x8bzr2w";
+ sha256 = "14s4jdcs1a4saam9qmzbsa2bsh85rj9zfxny5z315x3gg0nhkxcn";
type = "gem";
};
- version = "13.0.6";
+ version = "13.3.0";
};
rdf = {
- dependencies = ["bcp47_spec" "link_header"];
+ dependencies = ["bcp47_spec" "bigdecimal" "link_header"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0l515w395kbyz4n7lx102x1nv9yl6l72gvk67p35z4cqa74s59nx";
+ sha256 = "1mlalmbj1wkwvjha92f7v91v0pbjar9gdb2ddxdyqd24zcifn3ln";
type = "gem";
};
- version = "3.3.1";
+ version = "3.3.2";
};
rdf-normalize = {
dependencies = ["rdf"];
@@ -2355,34 +2688,34 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "12slrdq6xch5rqj1m79k1wv09264pmhs76nm300j1jsjpcfmdg0r";
+ sha256 = "1glyhg7lmzbq1w7bvvf84g7kvqxcn0mw3gsh1f8w4qfvvnbl8dwj";
type = "gem";
};
- version = "0.6.1";
+ version = "0.7.0";
};
rdoc = {
- dependencies = ["psych"];
+ dependencies = ["erb" "psych"];
groups = ["default" "development" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "05r2cxscapr9saqjw8dlp89as7jvc2mlz1h5kssrmkbz105qmfcm";
+ sha256 = "0ssi6b33bwr1b1qsssnyjkldwwy087z33yzl58jyz5njdiwzlplh";
type = "gem";
};
- version = "6.5.0";
+ version = "6.14.1";
};
redcarpet = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1sg9sbf9pm91l7lac7fs4silabyn0vflxwaa2x3lrzsm0ff8ilca";
+ sha256 = "0iglapqs4av4za9yfaac0lna7s16fq2xn36wpk380m55d8792i6l";
type = "gem";
};
- version = "3.6.0";
+ version = "3.6.1";
};
redis = {
- groups = ["default" "test"];
+ groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
@@ -2391,16 +2724,16 @@
};
version = "4.8.1";
};
- redis-namespace = {
- dependencies = ["redis"];
- groups = ["default"];
+ redis-client = {
+ dependencies = ["connection_pool"];
+ groups = ["default" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0f92i9cwlp6xj6fyn7qn4qsaqvxfw4wqvayll7gbd26qnai1l6p9";
+ sha256 = "1fsx10xg4n18w9sr1xa128y4yf0jv5zicrj5ff5n0f1crcwywrgf";
type = "gem";
};
- version = "1.11.0";
+ version = "0.24.0";
};
redlock = {
dependencies = ["redis"];
@@ -2418,10 +2751,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1d9a5s3qrjdy50ll2s32gg3qmf10ryp3v2nr5k718kvfadp50ray";
+ sha256 = "0qccah61pjvzyyg6mrp27w27dlv6vxlbznzipxjcswl7x3fhsvyb";
type = "gem";
};
- version = "2.8.2";
+ version = "2.10.0";
};
reline = {
dependencies = ["io-console"];
@@ -2429,10 +2762,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0187pj9k7d8kdvzjk6r6mf7z7wy18saxxhn7x7pqc840w6h4s0ja";
+ sha256 = "1yvm0svcdk6377ng6l00g39ldkjijbqg4whdg2zcsa8hrgbwkz0s";
type = "gem";
};
- version = "0.3.9";
+ version = "0.6.1";
};
request_store = {
dependencies = ["rack"];
@@ -2440,10 +2773,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "13ppgmsbrqah08j06bybd3cddv6dml79yzyjn7r8j1src78h98h7";
+ sha256 = "1jw89j9s5p5cq2k7ffj5p4av4j4fxwvwjs1a4i9g85d38r9mvdz1";
type = "gem";
};
- version = "1.5.1";
+ version = "1.7.0";
};
responders = {
dependencies = ["actionpack" "railties"];
@@ -2461,10 +2794,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "05i8518ay14kjbma550mv0jm8a6di8yp5phzrd8rj44z9qnrlrp0";
+ sha256 = "1jmbf6lf7pcyacpb939xjjpn1f84c3nw83dy3p1lwjx0l2ljfif7";
type = "gem";
};
- version = "3.2.6";
+ version = "3.4.1";
};
rotp = {
groups = ["default"];
@@ -2481,10 +2814,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0pym2zjwl6dwdfvbn7rbvmds32r70jx9qddhvvi6pqy6987ack1v";
+ sha256 = "18v8if3jix029rr3j8iwisv73facw223353n0h7avl39ibxk6hh3";
type = "gem";
};
- version = "4.1.2";
+ version = "4.5.2";
};
rpam2 = {
groups = ["default" "pam_authentication"];
@@ -2502,20 +2835,31 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1hggzz8i1l62pkkiybhiqv6ypxw7q844sddrrbbfczjcnj5sivi3";
+ sha256 = "1bwqy1iwbyn1091mg203is5ngsnvfparwa1wh89s1sgnfmirkmg2";
type = "gem";
};
- version = "2.2.0";
+ version = "3.1.0";
};
rqrcode_core = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "06ld6386hbdhy5h0k09axmgn424kavpc8f27k1vjhknjhbf8jjfg";
+ sha256 = "1ayrj7pwbv1g6jg5vvx6rq05lr1kbkfzbzqplj169aapmcivhh0y";
type = "gem";
};
- version = "1.2.0";
+ version = "2.0.0";
+ };
+ rspec = {
+ dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"];
+ groups = ["default" "test"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "14xrp8vq6i9zx37vh0yp4h9m0anx9paw200l1r5ad9fmq559346l";
+ type = "gem";
+ };
+ version = "3.13.0";
};
rspec-core = {
dependencies = ["rspec-support"];
@@ -2523,10 +2867,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0l95bnjxdabrn79hwdhn2q1n7mn26pj7y1w5660v5qi81x458nqm";
+ sha256 = "0n1rlagplpcgp41s3r68z01539aivwj0cn3v19hq4p3pgdmibnpr";
type = "gem";
};
- version = "3.12.2";
+ version = "3.13.4";
};
rspec-expectations = {
dependencies = ["diff-lcs" "rspec-support"];
@@ -2534,10 +2878,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "05j44jfqlv7j2rpxb5vqzf9hfv7w8ba46wwgxwcwd8p0wzi1hg89";
+ sha256 = "0dl8npj0jfpy31bxi6syc7jymyd861q277sfr6jawq2hv6hx791k";
type = "gem";
};
- version = "3.12.3";
+ version = "3.13.5";
};
rspec-github = {
dependencies = ["rspec-core"];
@@ -2545,10 +2889,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0kqjmd85v2fpb06d0rx43dc51f0igc1gmm8y3nz0wvmy7zg02njm";
+ sha256 = "1bv8b6ld7w3rccjnxqypfdg35i91wyv551sr41647r6krbc3rbs6";
type = "gem";
};
- version = "2.4.0";
+ version = "3.0.0";
};
rspec-mocks = {
dependencies = ["diff-lcs" "rspec-support"];
@@ -2556,10 +2900,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1hfm17xakfvwya236graj6c2arr4sb9zasp35q5fykhyz8mhs0w2";
+ sha256 = "10gajm8iscl7gb8q926hyna83bw3fx2zb4sqdzjrznjs51pqlcz4";
type = "gem";
};
- version = "3.12.5";
+ version = "3.13.5";
};
rspec-rails = {
dependencies = ["actionpack" "activesupport" "railties" "rspec-core" "rspec-expectations" "rspec-mocks" "rspec-support"];
@@ -2567,10 +2911,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "086qdyz7c4s5dslm6j06mq7j4jmj958whc3yinhabnqqmz7i463d";
+ sha256 = "01b5d37i3igh11v5y801gxzb1df2v0il0mfdqi4cdmxn1aqh0dqc";
type = "gem";
};
- version = "6.0.3";
+ version = "8.0.1";
};
rspec-sidekiq = {
dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks" "sidekiq"];
@@ -2578,120 +2922,122 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0dijmcwjn8k6lrld3yqbqfrqb5g73l57yx98y5frx54p5qxjzbzy";
+ sha256 = "0rr8229zd5ylwn78dxr4w43a07k58v4chr5lblws53llm7j1qrzd";
type = "gem";
};
- version = "4.0.1";
+ version = "5.1.0";
};
rspec-support = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1ky86j3ksi26ng9ybd7j0qsdf1lpr8mzrmn98yy9gzv801fvhsgr";
+ sha256 = "1xx3f4mgr84jz07fifd3r68hm6giqy91hqyzawmi0s59yqa1hjqq";
type = "gem";
};
- version = "3.12.1";
- };
- rspec_chunked = {
- groups = ["test"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "0h4bsj3m7vb47qnx5bry4v0xscrb3lhg1f1vyxl524znb3i2qqzv";
- type = "gem";
- };
- version = "0.6";
+ version = "3.13.4";
};
rubocop = {
- dependencies = ["base64" "json" "language_server-protocol" "parallel" "parser" "rainbow" "regexp_parser" "rexml" "rubocop-ast" "ruby-progressbar" "unicode-display_width"];
+ dependencies = ["json" "language_server-protocol" "lint_roller" "parallel" "parser" "rainbow" "regexp_parser" "rubocop-ast" "ruby-progressbar" "unicode-display_width"];
groups = ["development"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1izxvc9g6vfpx081rn68z900bql30bif4lnd038cz2lgj70ljm41";
+ sha256 = "1h3b1pl0wawm9w6jad2w333xijjxykvzflc8hzkd6kzb2bwscx4b";
type = "gem";
};
- version = "1.57.1";
+ version = "1.78.0";
};
rubocop-ast = {
- dependencies = ["parser"];
+ dependencies = ["parser" "prism"];
groups = ["default" "development"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "188bs225kkhrb17dsf3likdahs2p1i1sqn0pr3pvlx50g6r2mnni";
+ sha256 = "0gis8w51k5dsmzzlppvwwznqyfd73fa3zcrpl1xihzy1mm4jw14l";
type = "gem";
};
- version = "1.29.0";
+ version = "1.45.1";
};
rubocop-capybara = {
- dependencies = ["rubocop"];
+ dependencies = ["lint_roller" "rubocop"];
groups = ["development"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1jwwi5a05947q9zsk6i599zxn657hdphbmmbbpx17qsv307rwcps";
+ sha256 = "030wymq0jrblrdswl1lncj60dhcg5wszz6708qzsbziyyap8rn6f";
type = "gem";
};
- version = "2.19.0";
+ version = "2.22.1";
};
- rubocop-factory_bot = {
- dependencies = ["rubocop"];
- groups = ["default" "development"];
+ rubocop-i18n = {
+ dependencies = ["lint_roller" "rubocop"];
+ groups = ["development"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0kqchl8f67k2g56sq2h1sm2wb6br5gi47s877hlz94g5086f77n1";
+ sha256 = "1nib58p2kf7lbxz5dvjb80rajr6rmry3v9x3q3kc14i86y7j484n";
type = "gem";
};
- version = "2.23.1";
+ version = "3.2.3";
};
rubocop-performance = {
- dependencies = ["rubocop" "rubocop-ast"];
+ dependencies = ["lint_roller" "rubocop" "rubocop-ast"];
groups = ["development"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1pzsrnjmrachdjxzl9jpw47cydicn3408vgdg3a4bss4v5r42rjj";
+ sha256 = "1h9flnqk2f3llwf8g0mk0fvzzznfj7hsil3qg88m803pi9b06zbg";
type = "gem";
};
- version = "1.19.1";
+ version = "1.25.0";
};
rubocop-rails = {
- dependencies = ["activesupport" "rack" "rubocop"];
+ dependencies = ["activesupport" "lint_roller" "rack" "rubocop" "rubocop-ast"];
groups = ["development"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "05r46ds0dm44fb4p67hbz721zck8mdwblzssz2y25yh075hvs36j";
+ sha256 = "1404nfa0gw3p0xzmv4b9zg9v1da0nwc4m7796pl73zi2hwy65k4z";
type = "gem";
};
- version = "2.20.2";
+ version = "2.32.0";
};
rubocop-rspec = {
- dependencies = ["rubocop" "rubocop-capybara" "rubocop-factory_bot"];
+ dependencies = ["lint_roller" "rubocop"];
groups = ["development"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0ylwy4afnxhbrvlaf8an9nrizj78axnzggiyfcp8v531cv8six5f";
+ sha256 = "0ya4815sp8g13w7a86sm0605fx7xyldck77f9pjjfrvpf5c21r60";
type = "gem";
};
- version = "2.23.2";
+ version = "3.6.0";
+ };
+ rubocop-rspec_rails = {
+ dependencies = ["lint_roller" "rubocop" "rubocop-rspec"];
+ groups = ["development"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0i8zvzfj9gpq71zqkbmr05bfh66jg55hbwrfh551i896ibhpalvp";
+ type = "gem";
+ };
+ version = "2.31.0";
};
ruby-prof = {
+ dependencies = ["base64"];
groups = ["development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "13fsfw43zx9pcix1fzxb95g09yadqjvc8971k74krrjz81vbyh51";
+ sha256 = "0h23zjwma8car8jpq7af8gw39qi88rn24mass7r13ripmky28117";
type = "gem";
};
- version = "1.6.3";
+ version = "1.7.2";
};
ruby-progressbar = {
- groups = ["default" "development" "test"];
+ groups = ["default" "development"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
@@ -2706,30 +3052,31 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "18vnbzin5ypxrgcs9lllg7x311b69dyrdw2w1pwz84438hmxm79s";
+ sha256 = "0vgsvdaglz1spx9gxrr6xh7qqhi4qd8jd06h2ihwxmazj9ajld6y";
type = "gem";
};
- version = "1.15.0";
+ version = "1.18.0";
};
- ruby2_keywords = {
- groups = ["default" "development" "pam_authentication" "production" "test"];
+ ruby-vips = {
+ dependencies = ["ffi" "logger"];
+ groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1vz322p8n39hz3b4a9gkmz9y7a5jaz41zrm2ywf31dvkqm03glgz";
+ sha256 = "0j8wxbkl261nwg7jr6kdz0zlyim4zcnnb72ynky97grqid6d61d3";
type = "gem";
};
- version = "0.0.5";
+ version = "2.2.4";
};
rubyzip = {
- groups = ["default" "test"];
+ groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0grps9197qyxakbpw02pda59v45lfgbgiyw48i0mq9f2bn9y6mrz";
+ sha256 = "05an0wz87vkmqwcwyh5rjiaavydfn5f4q1lixcsqkphzvj7chxw5";
type = "gem";
};
- version = "2.3.2";
+ version = "2.4.1";
};
rufus-scheduler = {
dependencies = ["fugit"];
@@ -2737,10 +3084,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "14lr8c2sswn0sisvrfi4448pmr34za279k3zlxgh581rl1y0gjjz";
+ sha256 = "1f932ffh6v6gqpilm61rp9fcx6qcpax1fkw0ikrxfsgzn16rxyjm";
type = "gem";
};
- version = "3.9.1";
+ version = "3.9.2";
};
safety_net_attestation = {
dependencies = ["jwt"];
@@ -2759,10 +3106,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1kymrjdpbmn4yaml3aaqyj1dzj8gqmm9h030dc2rj5mvja7fpi28";
+ sha256 = "111r4xdcf6ihdnrs6wkfc6nqdzrjq0z69x9sf83r7ri6fffip796";
type = "gem";
};
- version = "6.0.2";
+ version = "7.0.0";
};
scenic = {
dependencies = ["activerecord" "railties"];
@@ -2770,42 +3117,42 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "04sd4jmgnwpilr3k061x87yyryya2mj15a8602fip49lfxza5548";
+ sha256 = "1nb3an8af7f08jnhhbn8bxvgfxqb43qc9d5hgrz16ams96h3mv3f";
type = "gem";
};
- version = "1.7.0";
+ version = "1.9.0";
};
- selenium-webdriver = {
- dependencies = ["rexml" "rubyzip" "websocket"];
+ securerandom = {
+ groups = ["default" "development" "pam_authentication" "production" "test"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1cd0iriqfsf1z91qg271sm88xjnfd92b832z49p1nd542ka96lfc";
+ type = "gem";
+ };
+ version = "0.4.1";
+ };
+ shoulda-matchers = {
+ dependencies = ["activesupport"];
groups = ["test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "037v9w6rwkdi9msydiyj31pxdlh4vcr8h8w3g1mzanbsas2m1b1a";
+ sha256 = "0i1zkr4rsvf8pz1x38wkb82nsjx28prmyb5blsmw86pd5cmmfszg";
type = "gem";
};
- version = "4.13.1";
- };
- semantic_range = {
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "1dlp97vg95plrsaaqj7x8l7z9vsjbhnqk4rw1l30gy26lmxpfrih";
- type = "gem";
- };
- version = "3.0.0";
+ version = "6.5.0";
};
sidekiq = {
- dependencies = ["connection_pool" "rack" "redis"];
+ dependencies = ["base64" "connection_pool" "logger" "rack" "redis-client"];
groups = ["default" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0zqr9is8y7mg5dfs1q8w5jl9spwvqkhbi9r6np8208n40hi3pydl";
+ sha256 = "19xm4s49hq0kpfbmvhnjskzmfjjxw5d5sm7350mh12gg3lp7220i";
type = "gem";
};
- version = "6.5.12";
+ version = "7.3.9";
};
sidekiq-bulk = {
dependencies = ["sidekiq"];
@@ -2824,21 +3171,21 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0p5jjs3x2pa2fy494xs39xbq642pri13809dcr1l3hjsm56qvp1h";
+ sha256 = "1gnm98hdw1ndw0sryjimp4a0805yhwhjxg6njhz8xmdh5ycgljda";
type = "gem";
};
- version = "5.0.3";
+ version = "5.0.6";
};
sidekiq-unique-jobs = {
- dependencies = ["brpoplpush-redis_script" "concurrent-ruby" "redis" "sidekiq" "thor"];
+ dependencies = ["concurrent-ruby" "sidekiq" "thor"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "02f91b24hrrn688wqvxb13lwvcgqb7g9k3sxylnydd6v89wr8mcg";
+ sha256 = "10g1y6258xsw89c831c16z7m66i37ivhrcbfirpi0pb48fwinik3";
type = "gem";
};
- version = "7.1.29";
+ version = "8.0.11";
};
simple-navigation = {
dependencies = ["activesupport"];
@@ -2857,10 +3204,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0z4df65w9qpri315lpvzazdxa9xb7yj0j3d77q06wf0jnpvw4mzs";
+ sha256 = "0q3lwin7pk5rsxy2a663x6lph5arax9lqqk12fgwdy57i5ma749q";
type = "gem";
};
- version = "5.2.0";
+ version = "5.3.1";
};
simplecov = {
dependencies = ["docile" "simplecov-html" "simplecov_json_formatter"];
@@ -2878,10 +3225,20 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0yx01bxa8pbf9ip4hagqkp5m0mqfnwnw2xk8kjraiywz4lrss6jb";
+ sha256 = "02zi3rwihp7rlnp9x18c9idnkx7x68w6jmxdhyc0xrhjwrz0pasx";
type = "gem";
};
- version = "0.12.3";
+ version = "0.13.1";
+ };
+ simplecov-lcov = {
+ groups = ["test"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1h8kswnshgb9zidvc88f4zjy4gflgz3854sx9wrw8ppgnwfg6581";
+ type = "gem";
+ };
+ version = "0.8.0";
};
simplecov_json_formatter = {
groups = ["default" "test"];
@@ -2893,57 +3250,26 @@
};
version = "0.1.4";
};
- smart_properties = {
- groups = ["default" "development"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "0jrqssk9qhwrpq41arm712226vpcr458xv6xaqbk8cp94a0kycpr";
- type = "gem";
- };
- version = "1.17.0";
- };
- sprockets = {
- dependencies = ["concurrent-ruby" "rack"];
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "182jw5a0fbqah5w9jancvfmjbk88h8bxdbwnl4d3q809rpxdg8ay";
- type = "gem";
- };
- version = "3.7.2";
- };
- sprockets-rails = {
- dependencies = ["actionpack" "activesupport" "sprockets"];
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "1b9i14qb27zs56hlcc2hf139l0ghbqnjpmfi0054dxycaxvk5min";
- type = "gem";
- };
- version = "3.4.2";
- };
stackprof = {
groups = ["development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0bhdgfb0pmw9mav1kw9fn0ka012sa0i3h5ppvqssw5xq48nhxnr8";
+ sha256 = "03788mbipmihq2w7rznzvv0ks0s9z1321k1jyr6ffln8as3d5xmg";
type = "gem";
};
- version = "0.2.25";
+ version = "0.2.27";
};
- statsd-ruby = {
+ starry = {
+ dependencies = ["base64"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "028136c463nbravckxb1qi5c5nnv9r6vh2cyhiry423lac4xz79n";
+ sha256 = "1c99sj460hdshiv2jps5d4mxcvz7nrvqznfpgcbnjhk9cnhv15i6";
type = "gem";
};
- version = "1.5.0";
+ version = "0.2.0";
};
stoplight = {
dependencies = ["redlock"];
@@ -2951,20 +3277,20 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1vhqx7q8qpq3x9ba504n7bp0r9dxcck0r0hd73cac2iqkix6khlv";
+ sha256 = "16j5w162pv45gjm0jah9hhy8q5fjplbka913c0qwxx209lbmsizd";
type = "gem";
};
- version = "3.0.2";
+ version = "4.1.1";
};
stringio = {
groups = ["default" "development" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0ix96dxbjqlpymdigb4diwrifr0bq7qhsrng95fkkp18av326nqk";
+ sha256 = "1yh78pg6lm28c3k0pfd2ipskii1fsraq46m6zjs5yc9a4k5vfy2v";
type = "gem";
};
- version = "3.0.8";
+ version = "3.1.7";
};
strong_migrations = {
dependencies = ["activerecord"];
@@ -2972,21 +3298,21 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0wz4zhsp4xia8zcpi98v4sgjlv2prd515l8jz4f7j0wk45dfkjs1";
+ sha256 = "0mg8z7ikc7rj53hy3c5n7pqdwd4m4h22k8ig36057nnchqa34d6v";
type = "gem";
};
- version = "0.8.0";
+ version = "2.4.0";
};
swd = {
- dependencies = ["activesupport" "attr_required" "httpclient"];
+ dependencies = ["activesupport" "attr_required" "faraday" "faraday-follow_redirects"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "12b3q2sw42nnilfb51nlqdv07f31vdv2j595kd99asnkw4cjlf5w";
+ sha256 = "0m86fzmwgw0vc8p6fwvnsdbldpgbqdz9cbp2zj9z06bc4jjf5nsc";
type = "gem";
};
- version = "1.3.0";
+ version = "2.0.3";
};
sysexits = {
groups = ["default" "development"];
@@ -3003,10 +3329,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "09p32vp94sa1mbr0if0adf02yzc4ns00lsmpwns2xbkncwpzrqm4";
+ sha256 = "0fwia5hvc1xz9w7vprzjnsym3v9j5l9ggdvy70jixbvpcpz4acfz";
type = "gem";
};
- version = "0.10.2";
+ version = "0.10.3";
};
terminal-table = {
dependencies = ["unicode-display_width"];
@@ -3014,10 +3340,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "14dfmfjppmng5hwj7c5ka6qdapawm3h6k9lhn8zj001ybypvclgr";
+ sha256 = "1lh18gwpksk25sbcjgh94vmfw2rz0lrq61n7lwp1n9gq0cr7j17m";
type = "gem";
};
- version = "3.0.2";
+ version = "4.0.0";
};
terrapin = {
dependencies = ["climate_control"];
@@ -3025,50 +3351,50 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0p18f05r0c5s70571gqig3z2ym74wx79s6rd45sprp207bqskzn9";
+ sha256 = "1mkmbw5z2ma4hkrg3i697bx0j8w7ggpxyj1d7kv7fgya8cdr15lx";
type = "gem";
};
- version = "0.6.0";
+ version = "1.1.0";
};
test-prof = {
groups = ["development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1mhzw33lv7h8d7pyh65lis5svnmm8m6fnszbsfg3j3xk9hcl0an5";
+ sha256 = "1vsk2ca9kfrxhyd2xiiyr28hmxkh9vd8j2vwl5f1yfnkv4z52n8s";
type = "gem";
};
- version = "1.2.3";
+ version = "1.4.4";
};
thor = {
groups = ["default" "development" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0k7j2wn14h1pl4smibasw0bp66kg626drxb59z7rzflch99cd4rg";
+ sha256 = "1nmymd86a0vb39pzj2cwv57avdrl6pl3lf5bsz58q594kqxjkw7f";
type = "gem";
};
- version = "1.2.2";
+ version = "1.3.2";
};
tilt = {
groups = ["default" "development"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0p3l7v619hwfi781l3r7ypyv1l8hivp09r18kmkn6g11c4yr1pc2";
+ sha256 = "0szpapi229v3scrvw1pgy0vpjm7z3qlf58m1198kxn70cs278g96";
type = "gem";
};
- version = "2.3.0";
+ version = "2.6.0";
};
timeout = {
groups = ["default" "development" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1d9cvm0f4zdpwa795v3zv4973y5zk59j7s1x3yn90jjrhcz1yvfd";
+ sha256 = "03p31w5ghqfsbz5mcjzvwgkw3h9lbvbknqvrdliy8pxmn9wz02cm";
type = "gem";
};
- version = "0.4.0";
+ version = "0.4.3";
};
tpm-key_attestation = {
dependencies = ["bindata" "openssl" "openssl-signature_algorithm"];
@@ -3076,10 +3402,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0v8y5dibsyskv1ncdgszhxwzq0gzmvb0zl7sgmx0xvsgy86dhcz1";
+ sha256 = "0gqr27hrmg35j7kcb6c2cx3xvkqfs42zpp9jcqw0mzbs79jy9m3z";
type = "gem";
};
- version = "0.12.0";
+ version = "0.14.1";
};
tty-color = {
groups = ["default"];
@@ -3128,10 +3454,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "18jr6s1cg8yb26wzkqa6874q0z93rq0y5aw092kdqazk71y6a235";
+ sha256 = "0l4vh6g333jxm9lakilkva2gn17j6gb052626r1pdbmy2lhnb460";
type = "gem";
};
- version = "0.8.1";
+ version = "0.8.2";
};
twitter-text = {
dependencies = ["idn-ruby" "unf"];
@@ -3161,10 +3487,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0m2d0gpsgqnv29j5h2d6g57g0rayvd460b8s2vjr8sn46bqf89m5";
+ sha256 = "0f898y35w60mkx3sd8ld2ryzkj4cld04qlgxi3z3hzdlzfhpa8x9";
type = "gem";
};
- version = "1.2023.3";
+ version = "1.2025.2";
};
unf = {
dependencies = ["unf_ext"];
@@ -3182,41 +3508,51 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1yj2nz2l101vr1x9w2k83a0fag1xgnmjwp8w8rw4ik2rwcz65fch";
+ sha256 = "1sf6bxvf6x8gihv6j63iakixmdddgls58cpxpg32chckb2l18qcj";
type = "gem";
};
- version = "0.0.8.2";
+ version = "0.0.9.1";
};
unicode-display_width = {
+ dependencies = ["unicode-emoji"];
groups = ["default" "development"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1d0azx233nags5jx3fqyr23qa2rhgzbhv8pxp46dgbg1mpf82xky";
+ sha256 = "1has87asspm6m9wgqas8ghhhwyf2i1yqrqgrkv47xw7jq3qjmbwc";
type = "gem";
};
- version = "2.5.0";
+ version = "3.1.4";
+ };
+ unicode-emoji = {
+ groups = ["default" "development"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0ajk6rngypm3chvl6r0vwv36q1931fjqaqhjjya81rakygvlwb1c";
+ type = "gem";
+ };
+ version = "4.0.4";
};
uri = {
- groups = ["default"];
+ groups = ["default" "development" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0fa49cdssxllj1j37a56kq27wsibx5lmqxkqdk1rz3452y0bsydy";
+ sha256 = "04bhfvc25b07jaiaf62yrach7khhr5jlr5bx6nygg8pf11329wp9";
type = "gem";
};
- version = "0.12.2";
+ version = "1.0.3";
};
- validate_email = {
- dependencies = ["activemodel" "mail"];
- groups = ["default"];
+ useragent = {
+ groups = ["default" "development" "pam_authentication" "production" "test"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1r1fz29l699arka177c9xw7409d1a3ff95bf7a6pmc97slb91zlx";
+ sha256 = "0i1q2xdjam4d7gwwc35lfnz0wyyzvnca0zslcfxm9fabml9n83kh";
type = "gem";
};
- version = "0.1.6";
+ version = "0.16.11";
};
validate_url = {
dependencies = ["activemodel" "public_suffix"];
@@ -3229,6 +3565,28 @@
};
version = "1.0.15";
};
+ vite_rails = {
+ dependencies = ["railties" "vite_ruby"];
+ groups = ["default"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "005mbcprdhjqx27561mb54kssjwxwij157x6wya1yp60gdkl8p0r";
+ type = "gem";
+ };
+ version = "3.0.19";
+ };
+ vite_ruby = {
+ dependencies = ["dry-cli" "logger" "mutex_m" "rack-proxy" "zeitwerk"];
+ groups = ["default"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "0wj9ia0s7vywn66pf2jn49pfsy5h5rncjjwhaymwq32r3f2pq2p1";
+ type = "gem";
+ };
+ version = "3.9.2";
+ };
warden = {
dependencies = ["rack"];
groups = ["default" "pam_authentication"];
@@ -3241,26 +3599,26 @@
version = "1.2.9";
};
webauthn = {
- dependencies = ["android_key_attestation" "awrence" "bindata" "cbor" "cose" "openssl" "safety_net_attestation" "tpm-key_attestation"];
+ dependencies = ["android_key_attestation" "bindata" "cbor" "cose" "openssl" "safety_net_attestation" "tpm-key_attestation"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1ri09bf640kkw4v6k2g90q2nw1mx2hsghhngaqgb7958q8id8xrz";
+ sha256 = "1sn399i804pg87b1j30x8lv2602qcndhvg0k0g4xqdfxg28zdipp";
type = "gem";
};
- version = "3.0.0";
+ version = "3.4.1";
};
webfinger = {
- dependencies = ["activesupport" "httpclient"];
+ dependencies = ["activesupport" "faraday" "faraday-follow_redirects"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "18jj50b44a471ig7hw1ax90wxaaz40acmrf6cm7m2iyshlffy53q";
+ sha256 = "0p39802sfnm62r4x5hai8vn6d1wqbxsxnmbynsk8rcvzwyym4yjn";
type = "gem";
};
- version = "1.2.0";
+ version = "2.1.3";
};
webmock = {
dependencies = ["addressable" "crack" "hashdiff"];
@@ -3268,21 +3626,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "0vfispr7wd2p1fs9ckn1qnby1yyp4i1dl7qz8n482iw977iyxrza";
+ sha256 = "08v374yrqqhjj3xjzmvwnv3yz21r22kn071yr0i67gmwaf9mv7db";
type = "gem";
};
- version = "3.19.1";
- };
- webpacker = {
- dependencies = ["activesupport" "rack-proxy" "railties" "semantic_range"];
- groups = ["default"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "0fh4vijqiq1h7w28llk67y9csc0m4wkdivrsl4fsxg279v6j5z3i";
- type = "gem";
- };
- version = "5.4.4";
+ version = "3.25.1";
};
webpush = {
dependencies = ["hkdf" "jwt"];
@@ -3290,43 +3637,33 @@
platforms = [];
source = {
fetchSubmodules = false;
- rev = "f14a4d52e201128b1b00245d11b6de80d6cfdcd9";
- sha256 = "1gz34809xwyaqprxmjdyvzsxc63rdnmxn8w44iqkhpi3dzmkacmp";
+ rev = "9631ac63045cfabddacc69fc06e919b4c13eb913";
+ sha256 = "01vqsj9162j0rzp455sggr8k4w4i9zq0igqb7x7hghp3c53ck1v6";
type = "git";
- url = "https://github.com/ClearlyClaire/webpush.git";
+ url = "https://github.com/mastodon/webpush.git";
};
- version = "0.3.8";
+ version = "1.1.0";
};
webrick = {
- groups = ["default" "development" "pam_authentication" "production" "test"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "13qm7s0gr2pmfcl7dxrmq38asaza4w0i2n9my4yzs499j731wh8r";
- type = "gem";
- };
- version = "1.8.1";
- };
- websocket = {
- groups = ["default" "test"];
- platforms = [];
- source = {
- remotes = ["https://rubygems.org"];
- sha256 = "1a4zc8d0d91c3xqwapda3j3zgpfwdbj76hkb69xn6qvfkfks9h9c";
- type = "gem";
- };
- version = "1.2.10";
- };
- websocket-driver = {
- dependencies = ["websocket-extensions"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1nyh873w4lvahcl8kzbjfca26656d5c6z3md4sbqg5y1gfz0157n";
+ sha256 = "12d9n8hll67j737ym2zw4v23cn4vxyfkb6vyv1rzpwv6y6a3qbdl";
type = "gem";
};
- version = "0.7.6";
+ version = "1.9.1";
+ };
+ websocket-driver = {
+ dependencies = ["base64" "websocket-extensions"];
+ groups = ["default"];
+ platforms = [];
+ source = {
+ remotes = ["https://rubygems.org"];
+ sha256 = "1d26l4qn55ivzahbc7fwc4k4z3j7wzym05i9n77i4mslrpr9jv85";
+ type = "gem";
+ };
+ version = "0.7.7";
};
websocket-extensions = {
groups = ["default"];
@@ -3374,10 +3711,9 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1gir0if4nryl1jhwi28669gjwhxb7gzrm1fcc8xzsch3bnbi47jn";
+ sha256 = "119ypabas886gd0n9kiid3q41w76gz60s8qmiak6pljpkd56ps5j";
type = "gem";
};
- version = "2.6.12";
+ version = "2.7.3";
};
}
-
diff --git a/nixos/pkgs/glitch-soc/missing-hashes.json b/nixos/pkgs/glitch-soc/missing-hashes.json
new file mode 100644
index 00000000..af1b796f
--- /dev/null
+++ b/nixos/pkgs/glitch-soc/missing-hashes.json
@@ -0,0 +1,75 @@
+{
+ "@esbuild/aix-ppc64@npm:0.25.5": "fb872b34a2843293dc60e809968fedf93e0d8f7174b062decffae6ba861eb56aaea0cd0aba87ba99162ceb2a690f0cde4fc29c000b52c035e40c91ec7861d43e",
+ "@esbuild/android-arm64@npm:0.25.5": "c818e799b19b5587466bf68a27b578ccaaf866c1d144573fbde7659e3fd3f555422ec3e67f5bd186a87648957d1b6e74df4f847edea7219c16979c9916f36e91",
+ "@esbuild/android-arm@npm:0.25.5": "a5384933f9f2ffcadce2be49da6ff43249fe42f32a04071316434e9f633fc20c8d4029072e9a53555620c3531045786297607b852579eee30b6dbc3bc9d98cd9",
+ "@esbuild/android-x64@npm:0.25.5": "8ce115dc7e1e6735f23b4aadb2dfca29c0abd8577ce34802ea3d017a64e388928949134fe225dfe190babdc5ec01be5fc7794eca84738cdefc12c5e3789ce43b",
+ "@esbuild/darwin-arm64@npm:0.25.5": "a009eab62f2bd284a6f2001d5e08217059186ffc16907bbe873e1de40fe9b5ed92c0db2f4c4d0dc41545838850a430c8f2f35d7bdb9cd01a1a04293acd97afca",
+ "@esbuild/darwin-x64@npm:0.25.5": "cac8021a7a0c549263e076913346b35a5bb81f76ffbc1abfad5e7b67303f013ac0c76f111bf624ea8447b327ec86c18a60c6ff307d743a2269f5d47313f5b2de",
+ "@esbuild/freebsd-arm64@npm:0.25.5": "d248e7103b7094eb4288db7c9a78b2905a25b4a957f2b945531ca88d3394f45ceca2343a7c84954734534af6159bc741eb3d5c1ed9df990f7395337a1b14192c",
+ "@esbuild/freebsd-x64@npm:0.25.5": "8a7be0740f07f5dbb3e24bf782ca6ef518a8ce9b53e5d864221722045713586d41774cbd531df97dc868b291b3b303c12e50ca8611c3cb7b5fe09a30b38285eb",
+ "@esbuild/linux-arm64@npm:0.25.5": "ce3c8fca47cf0a92148fb288eb35a5c4a4dcf7a700730b3a48fdd63c13e17c719eb6b350378203fba773477eb5be637f47a6d52c5d4ce5bdc0075ee917156006",
+ "@esbuild/linux-arm@npm:0.25.5": "cc81ea76ab86ed2a837c9da329f7c63412d288dc0aa608c8dcdf51705dc93d5b7f966a429be4896babe611074e5898c7e6c8e07ad7f50123a05478975294fbb4",
+ "@esbuild/linux-ia32@npm:0.25.5": "bfed6750923afd56148f658f6ec8995479f5115116dc212ecb9e4c556064422e22eda855177e7c02cbc945494e4db1167101918c5fa932278115db2c7025a3f6",
+ "@esbuild/linux-loong64@npm:0.25.5": "e5c20140bbbdba53f0d86dd72961ed73e6255d2ada2d3a626f390b352170605644822ad7592f695b6e520edcefe0c5f6ba19d10694b5d11d725745d9792bde01",
+ "@esbuild/linux-mips64el@npm:0.25.5": "6b3559517efd0dd1301debc7af7e275b055859c26facdda2e229b1aaab6ebea4c480a1da151c46211ee4035d95bfa7f0cdacf735b57ee99d41b69c77357310b9",
+ "@esbuild/linux-ppc64@npm:0.25.5": "a1a1af99d758efce928335637924dcd8ddec4201af51014e1f831b012d53a0a673b1e0c31036ec9e8c5a0311439283419ec8abdfc67ecb245fa7f7b653006ed0",
+ "@esbuild/linux-riscv64@npm:0.25.5": "6cd8dce6723b73e0f89898ab6cd52e0d009afdacdfc0d5529134de7b832c92c2e0421fbb5cbfc0e0c0b2b00a9b1ff2c4cdb9695b2c535ebc174960e986c727a7",
+ "@esbuild/linux-s390x@npm:0.25.5": "31b86dbc93d19eb362bad3353e65d6da771118346e723582d06c05f1b6ffad1c3765001b5215ef1e8f0c2bb29130d98815359bbc88e5c08304354d5a92e6ea94",
+ "@esbuild/linux-x64@npm:0.25.5": "f878a3e40edfd8a50de94bf982a9eaf03e636a0332af163a6c905490063aae652384fb392d4765c4338fb6f991034949c92ec768ee65c3b2fceeb494b89fe8b3",
+ "@esbuild/netbsd-arm64@npm:0.25.5": "941c5e28a63a93f19122271b5490e196db12815702c2266c6d66401b6909a4364ab889611ba81c5359624e3ce61f0505a680a1179ed9a555d1415fa1c485d75d",
+ "@esbuild/netbsd-x64@npm:0.25.5": "edbefdd88ca24a373497a7c8d1fdab418827ff89c6eee1c574159dbb4d9174552aa87753f35525a894964b77c14b012164ec5582b9f19dd4d6c1f5d45df411c7",
+ "@esbuild/openbsd-arm64@npm:0.25.5": "d44633a374c109d2fb9c678882016e3ec3d79f0c5f21a6e6fb0114ea709bc539200b037a4e3ec52304eea2f8c5957bf16c6f0a7af5cfde41b652c4bac604bba6",
+ "@esbuild/openbsd-x64@npm:0.25.5": "efc4641ea653dedc9886f0603c2e7cfc6fbe94c34d4cdaee9b060a8b9d8143d1192c45da93b3e802af2c26f72ab1ad3a3fad0e0cb297d06de55814fe83ccd32c",
+ "@esbuild/sunos-x64@npm:0.25.5": "29860663381b6098c0fda6f69235407654dfad953e83b3f9f06a270950d5c37da4ca60a4b5915b8e2606d468b560be6179870f64a22d5b046e8a930c31a7b554",
+ "@esbuild/win32-arm64@npm:0.25.5": "a77d395251c8a62ab0cec07d5230222823fa02fbf3ef008d94b5213a335c9f949872c3f1c2f947abaa28098b669018e429af42f59616e049860a0072f3b006de",
+ "@esbuild/win32-ia32@npm:0.25.5": "ff1b6cbe835082aef5b93c3e2012d51be431d05c6ae5f90a5bc89687c687e8e2340c262dedddd124b27b511616bbc4088b5a4a949d3147f677084dc6ec572629",
+ "@esbuild/win32-x64@npm:0.25.5": "266e69e8d37bd4deb77443588e49472e4e9791178cb39e1692eabb67cf65d8e85a932ac468e7ebb2072c8a9ee23ad413c8f0f7d954c474f643cedbbf7aad952a",
+ "@parcel/watcher-android-arm64@npm:2.5.0": "2d5d66f4e904546cff638d0b27a871d695dda1205e32902f917723dc1b09a5edef4ed8064fc5c85192a4e5e5b531eb4a2d3b349015ff6170c8228e3c098d5376",
+ "@parcel/watcher-darwin-arm64@npm:2.5.0": "bbdbaeb31ccea5ec172adab2bb2b1a5f4b2e18ed31054d7f6b1db718238f5880e3b8bc8ac1b55c00048c7a1973e75c0c86fa04c02679f99c0bb355145c8b685b",
+ "@parcel/watcher-darwin-x64@npm:2.5.0": "85089bf1c0f7fb0b4007d54f97e890bf2173d1a11166e9e601b9afe6e260e9cff2eed150ea80f51aae358436376c36af75a70523f53711f16a773987422cf93b",
+ "@parcel/watcher-freebsd-x64@npm:2.5.0": "1355a42a68beb177f9d15b8e379b63dd2e633494e0f09a7e28a778c6a5eb082206d6690e3776e79da5263ecc8791be047c33943cfd2d09019f8f545800ed583b",
+ "@parcel/watcher-linux-arm-glibc@npm:2.5.0": "3c78f9ab9e9d52745f3d44200e290a64843a9346bbe6628485cc6d777a1d329fd0345a5c919daad05fb436fda59143ec2f1810789c8e594a51c7f5d8099ac682",
+ "@parcel/watcher-linux-arm-musl@npm:2.5.0": "80f7f97115e4d98d95735149c6b210ed1902dbf0020d20b245801272a1459f3cef75307c124c1a947450dff9d7d62440ad85e46a98e06523523170fdffab5bf1",
+ "@parcel/watcher-linux-arm64-glibc@npm:2.5.0": "f82fb66b301754f9bf67c7abfe41b18c987ed47f8de05750395ac7453a2c396104d44090b20450d90d5af3e9de54e06aed1520e8401343b824f3c19747cf0aa1",
+ "@parcel/watcher-linux-arm64-musl@npm:2.5.0": "914ebc3387884a8948594fa91520726ef9a7dfbbf7663fd00e7c0de13e08a4e7a525c9132b5439b64b9deb9b62fdfb8c5e02148013cd2383d171334ea76641c0",
+ "@parcel/watcher-linux-x64-glibc@npm:2.5.0": "5db33f6a134d20e8bfd8bed6d13107e7d30947e832a4f677136abee8e1c2855ea19629ccf220e95056dbff753b55fe2b698dd936f31e492b095cc6434451e9d4",
+ "@parcel/watcher-linux-x64-musl@npm:2.5.0": "dbf3f903c4eb6014660f4c3c0d44dcef0e21ee16908288ad0149d6c1a5c9fd7f0405d8d0e91a2493fbeef83df5784bd43f7d1426a0150e00a415b6c0eab38c98",
+ "@parcel/watcher-win32-arm64@npm:2.5.0": "cff6516b1dad597ca1ec8c385cf8251f5050b32ab46fc15360f2eff3a40b61b7107eee56df73764007d9bd6b826960d2f3589c8e0ce270bb5b2a292313bd7a1b",
+ "@parcel/watcher-win32-ia32@npm:2.5.0": "ad9d2c9ae3a7031105fc90418050a910d4b679ead36e5fdcbb1b3e4afbaf56aec6566863e3a374c645c82f57073d8f643183f19c67c8c48b0aa62224c05fdb9d",
+ "@parcel/watcher-win32-x64@npm:2.5.0": "aa9660bdb2fe70de5163f9f8419e263711fd30612244fb7feb58fce49a653b88ac0e1e29646fb1fc76b86fd8215e62eea5ded0616725987dfca5372041925bd2",
+ "@rollup/rollup-android-arm-eabi@npm:4.40.2": "cb502d6933de94860f9d49a4b4e849a206d10d9b1a424847cb2545667f8937ac891a37854e2934992b39521dc8b8daa2ec6b683da6bb47ef893ab24f9424c887",
+ "@rollup/rollup-android-arm64@npm:4.40.2": "42e04ae6605f8a31cc7daf484f9104e6d2174a99e39d829c24d77780cd257a6dab67f5c6a38e84e5a967ad4a64a042f1e6dfbe75444aa03517e83d8436179726",
+ "@rollup/rollup-darwin-arm64@npm:4.40.2": "8e641fd8a888504c516e76e525a7fcc099d363a82ce8569a1a5bb2fdcf632fa262e1a73b47932a922d132e0c46fab6ba04490053f63e6e4fb30c313a499b139f",
+ "@rollup/rollup-darwin-x64@npm:4.40.2": "9dca62986fa2afef8c5addcb1eb4ee08afbd3aa03ece3c5372a82a785af67ae441b9782dd542018fa5bb39a6de34ea53f10795d6f6f801a0469ce7979c52c729",
+ "@rollup/rollup-freebsd-arm64@npm:4.40.2": "f21c73712c4cb74a797998e8adfa83bb7ff0d6cc3e7353eae5b213b4bb3f9f481e025d37dd67aeee7488b9fc9ecd0bc8f85a61469cfa6592ed9292d14ba868d0",
+ "@rollup/rollup-freebsd-x64@npm:4.40.2": "9f8b6abb5be2527e6cffdaf0dd95a8bbb6f4aa5599be2bfe919e8252f57558f0a06b66748d29cb1e42d0b65e1d2ef0ec2d6a429d3c8a1a85352269d88ffbda17",
+ "@rollup/rollup-linux-arm-gnueabihf@npm:4.40.2": "fc205b61c54ddaac7bb45768c3b4bbd79632df3f7bbe65532f5453d54e1a31c1d3f1e4508a00323cf0656d6c5a69f0793989d11fd0805dc2621053c8c6fbcaa3",
+ "@rollup/rollup-linux-arm-musleabihf@npm:4.40.2": "14fde6bac72d734462b9c2fa3594934454069d01422fe12e650ae6fc9e998daac3d43d1726a0aa040cac9d4de43cf75ca34d82932e0a2c3f564f49f0b6fba4af",
+ "@rollup/rollup-linux-arm64-gnu@npm:4.40.2": "1a7c361022d74025076d322cdeb741923f1d3e0d5e1a12fd4dcc678a7c3dc8a07002f6ec4d537b6f089c75b90273cd700580b9ac1b1d45fa68908eadb524f1c7",
+ "@rollup/rollup-linux-arm64-musl@npm:4.40.2": "2fbf7f6f28bfe5148b1a82b04569574bc865b65f6e8f874aa8b175ad3c3ee9197a9a22bc3693153f0d55ff2bd78938b15e162cafa4b77756d1933036b0520bf0",
+ "@rollup/rollup-linux-loongarch64-gnu@npm:4.40.2": "ae77d9e7a797868fbd6887b8b4a8a26bcd96ea632022ddc47c570d90ad6e47b2ac0b3a933885c06a0af5ad57b5f818f4531ff6961b351e9705f5af6dd26b2427",
+ "@rollup/rollup-linux-powerpc64le-gnu@npm:4.40.2": "867b6bc576e07110181f41c588b1a7ee22a6571bf5a3ceff0527c1e7c4540b5122d34b99f0c56c00d5c33a2e517fbb16c3e269cc4c08110e69dc0f0e4b2fbf26",
+ "@rollup/rollup-linux-riscv64-gnu@npm:4.40.2": "52f07f3e5e008cd0d277d5290524682c8ec5c03e08659b07a800fddc00b450dbf8df08612921b9fe6e4e16d60d5e282027d9b260ff520c40bf3e7c5e1efabb60",
+ "@rollup/rollup-linux-riscv64-musl@npm:4.40.2": "6483ab13ac5626c5b94d72aad3ffafe63a3572899824b1d37e59bc071b147f3d498864a0e19942e013a4488aa9262a92817232ca6c38339e3de62c3c4aca87e3",
+ "@rollup/rollup-linux-s390x-gnu@npm:4.40.2": "842ad92a20ff994091d4ba4c16f87e2f8a57e1eb9e3004c20aaeeb692bc2061619dd43ba4dd246712f8904fe1480e6211b43e9fd2e11a5faebbeebea0c79da63",
+ "@rollup/rollup-linux-x64-gnu@npm:4.40.2": "c440df4beca32d238b0a0f0b1017fb30da52c0f705946177c01a08d7d214ae190b2070885d93e15ff5fb5741e0964e1370bdd45f8a94e9a4689816f06f18c5a0",
+ "@rollup/rollup-linux-x64-musl@npm:4.40.2": "9874b4cce42573d460634443ddb730d348360089bf93667309e660301e4e389d8ae80abe7f33fa9a20db5e67984e107e17d1479bdfee278d74bc60dde6ab5f83",
+ "@rollup/rollup-win32-arm64-msvc@npm:4.40.2": "b61552ab831efde1ca4823cab1982d3d681e1be269d67d60558cd2ac86fe3802f6d569300d9ada084acebae27257b00c68f9d858261a579b5d8686956aa92ba0",
+ "@rollup/rollup-win32-ia32-msvc@npm:4.40.2": "13ad059483b26bbf12af5108207d66a98ae2aef7599f27a506b998c781921b653dacc63ee0db57bb6f37c920163fd8bc40072e0be0ec6b1e5f52eb3f1455efeb",
+ "@rollup/rollup-win32-x64-msvc@npm:4.40.2": "98ab8600ecbeab358c53ed563a7b586da0c5cdf26c03456a982a016b2f8eff6e2ec07055d15fe039b982a18a970744390d85a05970c9a8b1533c54702026f8df",
+ "@unrs/resolver-binding-darwin-arm64@npm:1.3.2": "c8c61120e2bead2e0fec054399107e1ebd39455a2b7d59a5446cafad86cca376e0010e65644c41da0958a065869dcbe0509a29394b52a469a48990d32bf7a6e8",
+ "@unrs/resolver-binding-darwin-x64@npm:1.3.2": "ee67a4043d2e297cb1362b7aa25be3f5defef9eb13f4e80358c3f22ffdef043ef905ac661fc9e70359383bafed5837a52bd001b49a8ea4f70372051d89ee6eff",
+ "@unrs/resolver-binding-freebsd-x64@npm:1.3.2": "5f19ef3991435a96e682d427a8d9b28886b4afc9ea5b723e51c4bca51f25bb24add8819ed91c9f228bd39e139d51625cc127ddd35efd6c3f6e1d88106808fad1",
+ "@unrs/resolver-binding-linux-arm-gnueabihf@npm:1.3.2": "f77b2345c2b572b569089092fa6c08b5a55fdb08d26e1db3cdfa0d195511a0efbe109c558e77bfd78d7aed4ffe47b6542890c9cad032cc00bb0fcd5f373f5090",
+ "@unrs/resolver-binding-linux-arm-musleabihf@npm:1.3.2": "8b7156d8c641994c39626522ba42e69eef8d868a69b319c9ea5f7584ef0c4ea98bc698c1a4417d209dd3a786630be404d459680cf5b5b2500d3c4b0eb1be894f",
+ "@unrs/resolver-binding-linux-arm64-gnu@npm:1.3.2": "93b28c2ea0dae2d452659e0afde6099107b70362043e19800e35b7ae86350856dfa0a4d6ba2be566c225965b458b5fba78a10219cf78e6fc0c581373cd2e2a52",
+ "@unrs/resolver-binding-linux-arm64-musl@npm:1.3.2": "49ed9f24838e876eb1bba9b5f3e283af0716ee23f7d11a799a6376a47fa59a2e28b724431ca165a3874d60b1ed5a6b6c7650fe207f0610a788c88baa7862688f",
+ "@unrs/resolver-binding-linux-ppc64-gnu@npm:1.3.2": "9fad22ffbf7aadf471a6d054c833a9b4cea74e2c38be40d546e6ba71058a6be10fa4e28947425ef33d42dc77de1c81b631fbff5a96a637c3a7652910f3e27d76",
+ "@unrs/resolver-binding-linux-s390x-gnu@npm:1.3.2": "dd28e351f19268c4735da984e96301d8433603cf109b2b6880aab9bb8f448242699b7f84c36c536ca4a9443f944153098a3d3e78fce26d0c56fe3406d73d4b55",
+ "@unrs/resolver-binding-linux-x64-gnu@npm:1.3.2": "e1cc70d8e012bc61bf5af85c2e9905aa1953c06daaab9b3857d780424c62807ccd0c5a20acb919e3accec7152badee426b1514ab9a4256b77945c3e7c8df3496",
+ "@unrs/resolver-binding-linux-x64-musl@npm:1.3.2": "e97b95e53d029e4ccaf7cf32072e644c495d8e1f097b6fdeb417860db4db4b752d84f5fa6310b9f170a1fbf0562696f0145005dda4a95d658ea0857fac6c51dd",
+ "@unrs/resolver-binding-wasm32-wasi@npm:1.3.2": "d3f16f36ba5dd714ef3eaf7bc57597e9f9a1fab7c6b5fb5dc5bf688d81a1bd4a574da16bd3e2b383181032a71001583b6534c21e5ffde1ee43fcfa95bc292f3b",
+ "@unrs/resolver-binding-win32-arm64-msvc@npm:1.3.2": "de65010d133e99a062827f698a7e50c30db15d9f6b9011d351762cc8809497e97c4617b7d6ca3052583ca3f6b8c3cb1f2857fd0c9afd944c7ebb65d5e1da74f6",
+ "@unrs/resolver-binding-win32-ia32-msvc@npm:1.3.2": "f214a8950e823c60656d2d113584c3cd20c6e92668f43f73c13c3ddfe38a7063615e42537645e2aa52a0652ace9c82e8fd5d9411043a6985ccb49d8dc8bb2595",
+ "@unrs/resolver-binding-win32-x64-msvc@npm:1.3.2": "38ca5f5912d7cddd3f3e1983ad8e79d084ab3f5990189ce8cdfcfc3b58d97cc0dd7b543cc78ff43eb1769d15a8c235339a5942c688ab680192caa4c97116a511"
+}
diff --git a/nixos/pkgs/glitch-soc/patches/placeholder.patch b/nixos/pkgs/glitch-soc/patches/placeholder.patch
new file mode 100644
index 00000000..e69de29b
diff --git a/nixos/pkgs/glitch-soc/source.nix b/nixos/pkgs/glitch-soc/source.nix
index 9fc7000d..d13ab2f0 100644
--- a/nixos/pkgs/glitch-soc/source.nix
+++ b/nixos/pkgs/glitch-soc/source.nix
@@ -1,18 +1,23 @@
-# This file was generated by pkgs.mastodon.updateScript.
-{ fetchFromGitHub, applyPatches, patches ? [] }:
+/*
+This fetches the glitch-soc source from GitHub and patches it.
+
+This needs to be a separately buildable package so that update.sh can build it during upgrading,
+because it needs it for generating `gemset.nix` from the Gemfile in the source.
+*/
+
+{
+ applyPatches,
+ fetchFromGitHub,
+ lib,
+}:
+
let
- version = "0e562916cce3241d98bd10f04a6aa7419700605";
-in
-(
- applyPatches {
- src = fetchFromGitHub {
- owner = "glitch-soc";
- repo = "mastodon";
- rev = "v${version}";
- hash = "sha256-fZH3zPEU5jnYFhLx8OKDNrvsSVT46Peu92L84Fg5YpQ=";
- };
- inherit patches;
- }) // {
- inherit version;
- yarnHash = "sha256-P7KswzsCusyiS4MxUFnC1HYMTQ6fLpIwd97AglCukIk=";
+ versionData = import ./version_data.nix;
+in applyPatches {
+ src = fetchFromGitHub {
+ owner = "glitch-soc";
+ repo = "mastodon";
+ inherit (versionData) rev hash;
+ };
+ patches = lib.filesystem.listFilesRecursive ./patches;
}
diff --git a/nixos/pkgs/glitch-soc/update.sh b/nixos/pkgs/glitch-soc/update.sh
index 8e835043..09a79a34 100755
--- a/nixos/pkgs/glitch-soc/update.sh
+++ b/nixos/pkgs/glitch-soc/update.sh
@@ -1,112 +1,48 @@
-#!/usr/bin/env nix-shell
-#! nix-shell -i bash -p bundix coreutils diffutils nix-prefetch-github gnused jq prefetch-yarn-deps
+#!/usr/bin/env -S nix shell nixpkgs#coreutils nixpkgs#bundix nixpkgs#nix-prefetch-github nixpkgs#jq nixpkgs-unstable#yarn-berry_4.yarn-berry-fetcher -c bash
+
set -e
-OWNER=mastodon
-REPO=mastodon
+cd "$(dirname "$0")" # cd to the script's directory
-POSITIONAL=()
-while [[ $# -gt 0 ]]; do
- key="$1"
+echo "Retrieving latest glitch-soc/mastodon commit..."
+commit="$(curl -SsL 'https://api.github.com/repos/glitch-soc/mastodon/branches/main')"
+rev="$(jq -r '.commit.sha' <<<"$commit")"
+echo "Latest commit is $rev."
- case $key in
- --owner)
- OWNER="$2"
- shift # past argument
- shift # past value
- ;;
- --repo)
- REPO="$2"
- shift # past argument
- shift # past value
- ;;
- --ver)
- VERSION="$2"
- shift # past argument
- shift # past value
- ;;
- --rev)
- REVISION="$2"
- shift # past argument
- shift # past value
- ;;
- --patches)
- PATCHES="$2"
- shift # past argument
- shift # past value
- ;;
- *) # unknown option
- POSITIONAL+=("$1")
- shift # past argument
- ;;
- esac
-done
+echo
+echo "Prefetching glitch-soc/mastodon source..."
+hash="$(nix-prefetch-github glitch-soc mastodon --rev $rev | jq -r '.hash')"
+echo "Source hash is $hash."
-if [[ -n "$POSITIONAL" ]]; then
- echo "Usage: update.sh [--owner OWNER] [--repo REPO] [--ver VERSION] [--rev REVISION] [--patches PATCHES]"
- echo "OWNER and REPO must be paths on github."
- echo "If REVISION is not provided, the latest tag from github.com/mastodon/mastodon is fetched and VERSION is calculated from it."
- echo "If OWNER and REPO are not provided, it defaults they default to mastodon and mastodon."
- echo "PATCHES, if provided, should be one or more Nix expressions separated by spaces."
- exit 1
-fi
+echo
+echo "Building source derivation..."
+srcdir="$(nix build --no-link --print-out-paths --no-warn-dirty ../..#glitch-soc-source)"
+echo "Source derivation is $srcdir."
-if [[ -z "$REVISION" ]]; then
- REVISION="$(curl ${GITHUB_TOKEN:+" -u \":$GITHUB_TOKEN\""} -s "https://api.github.com/repos/$OWNER/$REPO/releases" | jq -r 'map(select(.prerelease == false)) | .[0].tag_name')"
-fi
+echo
+echo "Generating gemset.nix using built source derivation..."
+rm -f gemset.nix
+bundix --quiet --lockfile $srcdir/Gemfile.lock --gemfile $srcdir/Gemfile
-VERSION="$(echo "$REVISION" | cut -c2-)"
+echo
+echo "Generating missing yarn hashes file..."
+rm -f missing-hashes.json
+yarn-berry-fetcher missing-hashes $srcdir/yarn.lock 2>/dev/null > missing-hashes.json
-rm -f gemset.nix source.nix
-cd "$(dirname "${BASH_SOURCE[0]}")" || exit 1
+echo
+echo "Prefetching yarn deps..."
+yarn_hash="$(yarn-berry-fetcher prefetch "$srcdir/yarn.lock" ./missing-hashes.json 2>/dev/null)"
-WORK_DIR=$(mktemp -d)
-
-# Check that working directory was created.
-if [[ -z "$WORK_DIR" || ! -d "$WORK_DIR" ]]; then
- echo "Could not create temporary directory"
- exit 1
-fi
-
-# Delete the working directory on exit.
-function cleanup {
- # Report errors, if any, from nix-prefetch-git
- grep "fatal" $WORK_DIR/nix-prefetch-git.out >/dev/stderr || true
- rm -rf "$WORK_DIR"
-}
-trap cleanup EXIT
-
-echo "Fetching source code $REVISION"
-JSON=$(nix-prefetch-github "$OWNER" "$REPO" --rev "$REVISION" 2> $WORK_DIR/nix-prefetch-git.out)
-HASH=$(echo "$JSON" | jq -r .hash)
-
-cat > source.nix << EOF
-# This file was generated by pkgs.mastodon.updateScript.
-{ fetchFromGitHub, applyPatches, patches ? [] }:
-let
- version = "$VERSION";
-in
-(
- applyPatches {
- src = fetchFromGitHub {
- owner = "$OWNER";
- repo = "$REPO";
- rev = "v\${version}";
- hash = "$HASH";
- };
- patches = patches ++ [$PATCHES];
- }) // {
- inherit version;
- yarnHash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=";
+echo
+echo "Generating version_data.nix..."
+cat > version_data.nix << EOF
+# This file was generated with update.sh.
+{
+ rev = "$rev";
+ hash = "$hash";
+ yarnHash = "$yarn_hash";
}
EOF
-SOURCE_DIR="$(nix-build --no-out-link -E '(import {}).callPackage ./source.nix {}')"
-echo "Creating gemset.nix"
-bundix --lockfile="$SOURCE_DIR/Gemfile.lock" --gemfile="$SOURCE_DIR/Gemfile"
-echo "" >> gemset.nix # Create trailing newline to please EditorConfig checks
-
-echo "Creating yarn-hash.nix"
-YARN_HASH="$(prefetch-yarn-deps "$SOURCE_DIR/yarn.lock")"
-YARN_HASH="$(nix hash to-sri --type sha256 "$YARN_HASH")"
-sed -i "s/sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=/$YARN_HASH/g" source.nix
+echo
+echo "Done."
diff --git a/nixos/pkgs/glitch-soc/version_data.nix b/nixos/pkgs/glitch-soc/version_data.nix
new file mode 100644
index 00000000..720e0ff9
--- /dev/null
+++ b/nixos/pkgs/glitch-soc/version_data.nix
@@ -0,0 +1,6 @@
+# This file was generated with update.sh.
+{
+ rev = "e4a22e8068ce7e6b4f252052ef613e15b946ee79";
+ hash = "sha256-GxlU0UibtvmfppW0y/FqQU5AgWPTyYvLa+IAt4KiW/0=";
+ yarnHash = "sha256-uLuNOjqjBJr7jjwEUQVA+jz2lTRVPKj9XDqzq5W9plM=";
+}
diff --git a/nixos/pkgs/plex-pass/sources.json b/nixos/pkgs/plex-pass/sources.json
index 542cae89..a1b8530c 100644
--- a/nixos/pkgs/plex-pass/sources.json
+++ b/nixos/pkgs/plex-pass/sources.json
@@ -1,14 +1,14 @@
[
{
- "version": "1.40.0.7775",
+ "version": "1.41.9.9961",
"platform": "aarch64-linux",
- "url": "https://downloads.plex.tv/plex-media-server-new/1.40.0.7775-456fbaf97/debian/plexmediaserver_1.40.0.7775-456fbaf97_arm64.deb",
- "hash": "0awannq36c5zgp2hln6g90yc44qf2sm0cq14wp7ck4yvs7wr5rwh"
+ "url": "https://downloads.plex.tv/plex-media-server-new/1.41.9.9961-46083195d/debian/plexmediaserver_1.41.9.9961-46083195d_arm64.deb",
+ "hash": "1gxiwzv799w2b18mlq1yx5z3x9k51f88yc9k7mmcn5a224a11kxf"
},
{
- "version": "1.40.0.7775",
+ "version": "1.41.9.9961",
"platform": "x86_64-linux",
- "url": "https://downloads.plex.tv/plex-media-server-new/1.40.0.7775-456fbaf97/debian/plexmediaserver_1.40.0.7775-456fbaf97_amd64.deb",
- "hash": "0zkz2w2rjngkdamsdp10j1gxd197kqrlqdm6z0sfvnzf7zvlr7v6"
+ "url": "https://downloads.plex.tv/plex-media-server-new/1.41.9.9961-46083195d/debian/plexmediaserver_1.41.9.9961-46083195d_amd64.deb",
+ "hash": "0hnwsh9x48xx9grgv4j30ymbr7v9bdfkl3dnfwjbqr0g3zb22av2"
}
]
diff --git a/nixos/util.nix b/nixos/util.nix
index 79fe2a0f..be8c54ff 100644
--- a/nixos/util.nix
+++ b/nixos/util.nix
@@ -1,4 +1,4 @@
-{ nixpkgs, home-manager, mailserver, lanzaboote, attic, ... }:
+{ nixpkgs, home-manager, mailserver, lanzaboote, ... }:
let
inherit (builtins) filter attrValues concatMap mapAttrs;
inherit (nixpkgs.lib.attrsets) mapAttrsToList;
@@ -6,7 +6,6 @@ let
./common
home-manager.nixosModules.home-manager
mailserver.nixosModules.mailserver
- attic.nixosModules.atticd
];
type_import =
let