Commit 1bd35044 authored by Motiejus Jakštys's avatar Motiejus Jakštys
Browse files

gitea: fix passthru.data-compressed

Fixes two bugs:
- pass a forgotten `{}` to `compressDrv`.
- remove incorrect usage of `lndir` in `compressDrv`. I added a brief
  comment on why, see [this comment][1] for more details.

Tested with:

```
$ nix build .#legacyPackages.x86_64-linux.gitea.passthru.data-compressed
$ ls -lh result/public/assets/licenses.txt*
lrwxrwxrwx 1 root root  90 Jan  1  1970 result/public/assets/licenses.txt -> /nix/store/p21irsr57hckd3x3ym18aa0cr9zmm3an-gitea-1.22.1-data/./public/assets/licenses.txt
-r--r--r-- 1 root root 30K Jan  1  1970 result/public/assets/licenses.txt.br
-r--r--r-- 1 root root 82K Jan  1  1970 result/public/assets/licenses.txt.gz
```

[1]: https://github.com/NixOS/nixpkgs/pull/332752#discussion_r1721043286
parent b2fbbdb4
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
{
  lib,
  xorg,
  runCommand,
}:
{ lib, runCommand }:
/**
  Compresses files of a given derivation, and returns a new derivation with
  compressed files
@@ -72,7 +68,11 @@ let
in
runCommand "${drv.name}-compressed" { } ''
  mkdir $out
  (cd $out; ${xorg.lndir}/bin/lndir ${drv})

  # cannot use lndir here, because it also symlinks directories,
  # which we do not need; we only need to symlink files.
  (cd ${drv}; find -L -type d -exec mkdir -p $out/{} ';')
  (cd ${drv}; find -L -type f -exec ln -s ${drv}/{} $out/{} ';')

  ${lib.concatStringsSep "\n\n" (lib.mapAttrsToList mkCmd compressors)}
''
+1 −1
Original line number Diff line number Diff line
@@ -88,7 +88,7 @@ in buildGoModule rec {
  '';

  passthru = {
    data-compressed = lib.warn "gitea.passthru.data-compressed is deprecated. Use \"compressDrvWeb gitea.data\"." (compressDrvWeb gitea.data);
    data-compressed = lib.warn "gitea.passthru.data-compressed is deprecated. Use \"compressDrvWeb gitea.data\"." (compressDrvWeb gitea.data {});

    tests = nixosTests.gitea;
  };