From 1443edf6f40fc847ecf9c1e5419eec62b958a522 Mon Sep 17 00:00:00 2001 From: Vivian Date: Mon, 18 Mar 2024 09:21:59 +0100 Subject: [PATCH] ci --- .forgejo/workflows/lint.yml | 22 ---------- .forgejo/workflows/nix.yml | 22 ---------- .forgejo/workflows/plex_update.yml | 1 + nixos/pkgs/default.nix | 2 +- nixos/pkgs/glitch-soc/README.md | 2 + nixos/pkgs/glitch-soc/default.nix | 17 ++++++-- nixos/pkgs/glitch-soc/gemset.nix | 68 +++++++++++++++--------------- nixos/pkgs/glitch-soc/source.nix | 20 ++------- 8 files changed, 53 insertions(+), 101 deletions(-) delete mode 100644 .forgejo/workflows/lint.yml delete mode 100644 .forgejo/workflows/nix.yml diff --git a/.forgejo/workflows/lint.yml b/.forgejo/workflows/lint.yml deleted file mode 100644 index 85b6863..0000000 --- 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 a67c489..0000000 --- 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 2d5a239..c73ba48 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/nixos/pkgs/default.nix b/nixos/pkgs/default.nix index 5f7180f..6878132 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 index 8e2dca9..200319e 100644 --- a/nixos/pkgs/glitch-soc/README.md +++ b/nixos/pkgs/glitch-soc/README.md @@ -1,5 +1,7 @@ # Mastodon Glitch Edition + + Mostly copied from [nixpkgs upstream](https://github.com/NixOS/nixpkgs/tree/master/pkgs/servers/mastodon). Modifications for the new yarn berry lockfiles in `default.nix`, `yarn.nix` and `yarn-typescript.patch` stolen (with permissions) from [catgirl.cloud](https://git.catgirl.cloud/999eagle/dotfiles-nix/-/tree/main/overlay/mastodon/glitch). diff --git a/nixos/pkgs/glitch-soc/default.nix b/nixos/pkgs/glitch-soc/default.nix index 9b08390..20beca2 100644 --- a/nixos/pkgs/glitch-soc/default.nix +++ b/nixos/pkgs/glitch-soc/default.nix @@ -7,8 +7,6 @@ https://git.catgirl.cloud/999eagle/dotfiles-nix/-/blob/main/overlay/mastodon/gli */ { lib, stdenv, nodejs-slim, bundlerEnv, nixosTests -, yarn, callPackage, ruby, writeShellScript -, fetchYarnDeps, prefetch-yarn-deps , yarn-berry, callPackage, imagemagick, ffmpeg, file, ruby, writeShellScript , brotli @@ -31,6 +29,18 @@ stdenv.mkDerivation rec { name = "${pname}-gems-${version}"; inherit version gemset ruby; 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 + ''; }; mastodonModules = stdenv.mkDerivation { @@ -97,8 +107,7 @@ stdenv.mkDerivation rec { ''; }; - propagatedBuildInputs = [ mastodonGems.wrappedRuby ]; - nativeBuildInputs = [ brotli ]; + propagatedBuildInputs = [ imagemagick ffmpeg file mastodonGems.wrappedRuby ]; buildInputs = [ mastodonGems nodejs-slim ]; buildPhase = '' diff --git a/nixos/pkgs/glitch-soc/gemset.nix b/nixos/pkgs/glitch-soc/gemset.nix index c2d87fe..1ca099d 100644 --- a/nixos/pkgs/glitch-soc/gemset.nix +++ b/nixos/pkgs/glitch-soc/gemset.nix @@ -399,10 +399,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "028qif22isxa5sg5gf1322d0qjhir5rr0jpkaiwcic4lspacdcnv"; + sha256 = "1srlq3gqirzdkhv12ljpnp5cb0f8jfrl3n8xs9iivyz2c7khvdyp"; type = "gem"; }; - version = "1.17.1"; + version = "1.18.3"; }; brakeman = { dependencies = ["racc"]; @@ -410,10 +410,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1ahkss5xpdw7vwykyd5kba74cs4r987fcn7ad5qvzhzhqdariqvy"; + sha256 = "1lylig4vgnw9l1ybwgxdi9nw9q2bc5dcplklg8nsbi7j32f7c5kp"; type = "gem"; }; - version = "6.1.1"; + version = "6.1.2"; }; browser = { groups = ["default"]; @@ -463,10 +463,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "114qm5f5vhwaaw9rj1h2lcamh46zl13v1m18jiw68zl961gwmw6n"; + sha256 = "1vxfah83j6zpw3v5hic0j70h519nvmix2hbszmjwm8cfawhagns2"; type = "gem"; }; - version = "3.39.2"; + version = "3.40.0"; }; case_transform = { dependencies = ["activesupport"]; @@ -505,10 +505,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0yff5kzjbkhpmylm21kfaal9bisxlwwby6yhj64zmim3d15h3g4c"; + sha256 = "1spadkppcgq4gj03sjdywqws1j0pb6whj6d4kyj608jz7lc9vmwc"; type = "gem"; }; - version = "7.5.0"; + version = "7.5.1"; }; chunky_png = { groups = ["default"]; @@ -582,15 +582,15 @@ version = "1.3.0"; }; crack = { - dependencies = ["rexml"]; + dependencies = ["bigdecimal" "rexml"]; groups = ["default" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1cr1kfpw3vkhysvkk3wg7c54m75kd68mbm9rs5azdjdq57xid13r"; + sha256 = "0r48q8csd1ld0yrzsp45wkfnpmkhk09gsldq8rlikarnmc51s9gf"; type = "gem"; }; - version = "0.4.5"; + version = "0.4.6"; }; crass = { groups = ["default" "development" "pam_authentication" "production" "test"]; @@ -1187,20 +1187,20 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "14cw4fmqix3ihnjcc3vyfdc778cs8w53lpbx1ba7gpqfv5lrnvpc"; + sha256 = "1xhrpba4m8qs311jxz1hn5g7srpw9wwg6rymj3n61ykqvk876hqa"; type = "gem"; }; - version = "0.55.0"; + version = "0.56.0"; }; hashdiff = { groups = ["default" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1nynpl0xbj0nphqx1qlmyggq58ms1phf5i03hk64wcc0a17x1m1c"; + sha256 = "1jf9dxgjz6z7fvymyz2acyvn9iyvwkn6d9sk7y4fxwbmfc75yimm"; type = "gem"; }; - version = "1.0.1"; + version = "1.1.0"; }; hashie = { groups = ["default"]; @@ -1374,10 +1374,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0hh8d5l4ki6vg2p5x3v000gkrdqi1kdjv4vk5v8lfz9gr4kdc007"; + sha256 = "1f8wms39b7z83x6pflq2sjh3sikpk0xjh680igbpkp1j3pl0fpx0"; type = "gem"; }; - version = "1.11.1"; + version = "1.11.2"; }; jmespath = { groups = ["default"]; @@ -1859,23 +1859,21 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1l8b0i24h4irivyhwy9xmkjbggw86cxkzkiqdqg0jpcp9qc8h4rl"; + sha256 = "173zavvxlwyi48lfskk48wcrdbkvjlhjhvy4jpcrfx72rpjjx4k8"; type = "gem"; }; - version = "1.16.0"; + version = "1.16.2"; }; 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"; + remotes = ["https://rubygems.org"]; + sha256 = "1narh0bj0c9pg8cb2jhpydfa9mnm3dclckzk5s6xrwa2gm99hnk4"; + type = "gem"; }; - version = "0.2.8"; + version = "0.3.0"; }; oj = { dependencies = ["bigdecimal"]; @@ -2042,10 +2040,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0pfj771p5a29yyyw58qacks464sl86d5m3jxjl5rlqqw2m3v5xq4"; + sha256 = "0s4vskbydg5k0z86v2g5drf03lslkr4b1l421vz29531jlrsljvy"; type = "gem"; }; - version = "1.5.4"; + version = "1.5.5"; }; pghero = { dependencies = ["activerecord"]; @@ -2053,10 +2051,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0ja2xlicfw13flw56nxbm46mvhv93fjrd5v8g4z6z305184rk24x"; + sha256 = "127s1qn4dl5cq0xfw6y3pl382wwcmda1ivxs5vi7vccs24l9i53z"; type = "gem"; }; - version = "3.4.0"; + version = "3.4.1"; }; posix-spawn = { groups = ["default"]; @@ -2845,10 +2843,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1qkhnmvkw6782vrvd9p03ifl2j206lr3kkljpccvmf18qgkrd356"; + sha256 = "1am17wfx023z1x9sxq90cyjarcmcwb95mi456mcf13m783r4n190"; type = "gem"; }; - version = "7.1.31"; + version = "7.1.33"; }; simple-navigation = { dependencies = ["activesupport"]; @@ -3159,10 +3157,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1v3k61zcbxfmf150d4vky6cbdmyrn3yljsl9na1y3i52v7zsbdnx"; + sha256 = "1rg1dmx6mknjazb8qq0j9sb9fah470my5sbjb6f3pa6si5018682"; type = "gem"; }; - version = "1.2023.4"; + version = "1.2024.1"; }; unf = { dependencies = ["unf_ext"]; @@ -3266,10 +3264,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0vfispr7wd2p1fs9ckn1qnby1yyp4i1dl7qz8n482iw977iyxrza"; + sha256 = "0rc3g9hhxi6v2l1cp9q3kcjd92bhmdbrb517l4v5pyzwq2nflcyc"; type = "gem"; }; - version = "3.19.1"; + version = "3.20.0"; }; webpacker = { dependencies = ["activesupport" "rack-proxy" "railties" "semantic_range"]; diff --git a/nixos/pkgs/glitch-soc/source.nix b/nixos/pkgs/glitch-soc/source.nix index 53f3ee3..6c0408e 100644 --- a/nixos/pkgs/glitch-soc/source.nix +++ b/nixos/pkgs/glitch-soc/source.nix @@ -1,33 +1,19 @@ # This file was generated by pkgs.mastodon.updateScript. { fetchFromGitHub, applyPatches, patches ? [] }: let -<<<<<<< HEAD - version = "bc39b3196db8c79719c5a6c920c780284b8266a"; -======= - version = "5bc39b3"; - revision = "5bc39b3196db8c79719c5a6c920c780284b8266a"; ->>>>>>> 8ec4a162da27435bf9deb68fa41bbfaf0c7d3f49 + version = "d7d4770"; + revision = "d7d477047eba7cb88df54dd78f42095ed0fbea76"; in ( applyPatches { src = fetchFromGitHub { owner = "glitch-soc"; repo = "mastodon"; -<<<<<<< HEAD - rev = "v${version}"; - hash = "sha256-6ipYkF0PP3D15PD7vyN1cGqnxoBRrXEaRsrto7ZXej0="; - }; - patches = patches ++ []; - }) // { - inherit version; - yarnHash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="; -======= rev = "${revision}"; - hash = "sha256-6ipYkF0PP3D15PD7vyN1cGqnxoBRrXEaRsrto7ZXej0="; + hash = "sha256-x1fqDtCOiNS61EhnpObUuxrdTd5n2mhjoGbIYGivbDg="; }; patches = patches ++ [./yarn-typescript.patch]; }) // { inherit version; yarnHash = "sha256-CIIz5wwWzvDKc/VbSIT7Z5D9kwOLoErXoO0WQWfV/g4="; ->>>>>>> 8ec4a162da27435bf9deb68fa41bbfaf0c7d3f49 }