nixpkgs icon indicating copy to clipboard operation
nixpkgs copied to clipboard

securefs: 0.11.1 -> 0.13.0

Open aaftre opened this issue 1 year ago • 3 comments

Description of changes

Updated package version in pkgs/tools/filesystems/securefs/default.nix to version 0.13.0, removed dependency on back ported patch add-macfuse-support.patch.

version 0.12.0+ added support for Apple M1.

Things done
  • Built on platform(s)
    • [ ] x86_64-linux
    • [ ] aarch64-linux
    • [ ] x86_64-darwin
    • [x] aarch64-darwin
  • [ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • [ ] Tested, as applicable:
  • [ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • [x] Tested basic functionality of all binary files (usually in ./result/bin/)
  • 22.11 Release Notes (or backporting 22.05 Release notes)
    • [ ] (Package updates) Added a release notes entry if the change is major or breaking
    • [ ] (Module updates) Added a release notes entry if the change is significant
    • [ ] (Module addition) Added a release notes entry if adding a new NixOS module
    • [ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes
  • [ ] Fits CONTRIBUTING.md.

aaftre avatar Aug 12 '22 16:08 aaftre

Result of nixpkgs-review pr 186312 run on x86_64-darwin 1

1 package failed to build:
  • securefs

viraptor avatar Aug 13 '22 00:08 viraptor

darwin intel build fails with:

/tmp/nix-build-securefs-0.13.0.drv-0/source/sources/unix.cpp:150:20: error: no member named 'futimens' in the global namespace
        int rc = ::futimens(m_fd, ts);
                 ~~^
/tmp/nix-build-securefs-0.13.0.drv-0/source/sources/unix.cpp:405:16: error: no member named 'utimensat' in the global namespace
    int rc = ::utimensat(m_dir_fd, path.c_str(), ts, AT_SYMLINK_NOFOLLOW);
             ~~^
2 errors generated.
make[2]: *** [CMakeFiles/securefs-static.dir/build.make:370: CMakeFiles/securefs-static.dir/sources/unix.cpp.o] Error 1

Also the PR name should be securefs: 0.11.1 -> 0.13.0 according to https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md

viraptor avatar Aug 13 '22 04:08 viraptor

The compilation can be fixed by using:

darwin.apple_sdk_11_0.callPackage pkgs/tools/filesystems/securefs { }

in all-packages.nix. But the app still doesn't start then because of:

dyld[18747]: Library not loaded: /usr/local/lib/libfuse.2.dylib
  Referenced from: /nix/store/39lzarsp58z2xyl9kyp8blgq70pklhli-securefs-0.13.0/bin/securefs
  Reason: tried: '/usr/local/lib/libfuse.2.dylib' (no such file), '/usr/lib/libfuse.2.dylib' (no such file)
[1]    18747 abort      ./result/bin/securefs --help

It needs some rpath / install_name rewriting.

viraptor avatar Aug 13 '22 04:08 viraptor

The compilation can be fixed by using:

darwin.apple_sdk_11_0.callPackage pkgs/tools/filesystems/securefs { }

in all-packages.nix. But the app still doesn't start then because of:

dyld[18747]: Library not loaded: /usr/local/lib/libfuse.2.dylib
  Referenced from: /nix/store/39lzarsp58z2xyl9kyp8blgq70pklhli-securefs-0.13.0/bin/securefs
  Reason: tried: '/usr/local/lib/libfuse.2.dylib' (no such file), '/usr/lib/libfuse.2.dylib' (no such file)
[1]    18747 abort      ./result/bin/securefs --help

It needs some rpath / install_name rewriting.

That's expected, see https://github.com/NixOS/nixpkgs/blob/master/doc/builders/packages/fuse.section.md#fuse-sec-fuse.

wegank avatar Apr 19 '23 09:04 wegank

Superseded by #227032.

wegank avatar Apr 19 '23 09:04 wegank