Package Details: securefs 0.13.1-1

Git Clone URL: https://aur.archlinux.org/securefs.git (read-only, click to copy)
Package Base: securefs
Description: A better transparent encryption filesystem
Upstream URL: https://github.com/netheril96/securefs
Licenses: MIT
Submitter: mrxx
Maintainer: mrxx
Last Packager: mrxx
Votes: 8
Popularity: 0.000040
First Submitted: 2016-03-26 21:34 (UTC)
Last Updated: 2022-11-18 17:10 (UTC)

Dependencies (5)

Required by (3)

Sources (1)

Latest Comments

1 2 3 4 Next › Last »

ccorn commented on 2024-01-21 01:30 (UTC)

For an update, apply the following changes:

--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,14 +1,14 @@
 # Maintainer: mrxx <mrxx at cyberhome dot at>

 pkgname=securefs
-pkgver=0.13.1
+pkgver=0.14.3
 pkgrel=1
 pkgdesc="A better transparent encryption filesystem"
 arch=('i686' 'x86_64')
 url=https://github.com/netheril96/securefs
 license=('MIT')
-depends=('fuse' 'clang')
-makedepends=('cmake' 'git' 'python')
+depends=('abseil-cpp11' 'argon2' 'crypto++' 'fuse' 'jsoncpp' 'libutf8proc')
+makedepends=('cmake' 'doctest' 'git' 'pkgconf' 'python' 'tclap')
 source=("git+${url}.git#tag=${pkgver}")
 sha256sums=('SKIP')

@@ -20,19 +20,22 @@ prepare() {
 build() {
     cd "$pkgname"
     mkdir -p build && cd build
-    CC=clang CXX=clang++ cmake -DCMAKE_INSTALL_PREFIX=/usr -Dlibdir=/usr/lib ..
-
-    # fix regression in 0.13.0
-    sed -i 's/"-march=x86-64 -mtune=generic -O2 -pipe.*-fno-plt.*"//' external/cryptopp/CMakeFiles/{cryptest.dir/*.make,cryptopp-static.dir/*.make,cryptopp-object.dir/*.make}
+    export PKG_CONFIG_PATH=/usr/lib/abseil-cpp11/pkgconfig
+    cmake \
+        -DCMAKE_INSTALL_PREFIX=/usr \
+        -DSECUREFS_USE_VCPKG=OFF \
+        -DSECUREFS_ENABLE_INTEGRATION_TEST=OFF \
+        -Dabsl_DIR=/usr/lib/abseil-cpp11/cmake/absl \
+        -DCMAKE_INSTALL_RPATH_USE_LINK_PATH=ON \
+        ..

     make
-    # ctest
+    ctest
 }

 package() {
     cd "$pkgname"
-    install -Dm755 build/securefs "$pkgdir"/usr/bin/securefs
-    install -Dm755 build/securefs_test "$pkgdir"/usr/bin/securefs_test
+    DESTDIR="$pkgdir" cmake --install build
     install -Dm644 LICENSE.md ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
     install -Dm644 README.md ${pkgdir}/usr/share/doc/${pkgname}/README
 }

This depends on the AUR package abseil-cpp11 with the runpath patch.

mrxx commented on 2023-10-08 19:01 (UTC) (edited on 2023-10-08 19:03 (UTC) by mrxx)

v0.14.3 is out, but I get the following error with crypto++ and cryptopp either.

 CMake Error at CMakeLists.txt:83 (find_package):
   Could not find a package configuration file provided by "cryptopp" with any
   of the following names:

  cryptoppConfig.cmake
  cryptopp-config.cmake

 Add the installation prefix of "cryptopp" to CMAKE_PREFIX_PATH or set
 "cryptopp_DIR" to a directory containing one of the above files. If
 "cryptopp" provides a separate development package or SDK, be sure it has
 been installed.

emmieaur commented on 2022-12-01 05:54 (UTC)

Yeah, I think it will need a more generic regular expression. Just tried to build today and I got error: unknown target CPU 'native -O2 -pipe -fstack-protector-strong'. The * didn't work for me since mine lacked the -fno-plt.

mrxx commented on 2022-11-18 17:14 (UTC)

Thank you, wildcard added as suggested.

MCOfficer commented on 2022-11-09 23:43 (UTC)

Here's another edge case for the $CXX regex: unknown target CPU 'x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -fno-plt'.

Can confirm that just adding another wildcard works (...-pipe.*-fno-plt"), but perhaps an even more generic regex is needed at this point.

mrxx commented on 2022-06-15 23:42 (UTC)

Thank you for the suggestion, I've included the wildcard extension to the fix.

teras commented on 2022-06-11 09:47 (UTC) (edited on 2022-06-11 09:48 (UTC) by teras)

I found the problem. The fix provided by @mrxxm actually doesn't work on my system. Instead of replacing "-march=x86-64 -mtune=generic -O2 -pipe -fno-plt" on my system the string is "-march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS". Since this solution is already too hairy for me, I dared to replace with this: "-march=x86-64 -mtune=generic -O2 -pipe -fno-plt.*" (notice the wildcard) and of course it worked.

I am not sure if this should be the correct behavior, or understand why the CXX flag was messed up (and maybe report upstream to more Arch developers if they have an idea about it).

connesc commented on 2022-06-09 13:51 (UTC) (edited on 2022-06-09 13:51 (UTC) by connesc)

@teras: I observe the same behavior. I think the difference is that makepkg sets the CXXFLAGS environment variable. This is incorrectly handled somewhere and the variable gets duplicated with extraneous quotes.

teras commented on 2022-05-22 15:46 (UTC) (edited on 2022-05-22 16:02 (UTC) by teras)

I let some time to pass just in case it's another system-related problem, but unfortunately I have exactly the same problem. Interestingly, when I tried to compile by hand using the following commands, I didn't have any issues:

git clone --recurse-submodules https://github.com/netheril96/securefs.git
cd securefs/ && mkdir -p build && cd build
CC=clang CXX=clang++ cmake -DCMAKE_INSTALL_PREFIX=/usr -Dlibdir=/usr/lib ..
make

EDIT Some more comments: If I let makepkg to do the work, the package breaks indeed. If, on the same folder that PKGBUILD is, I do exactly the same commands manually, the package is compiled!

Should it be a problem of makepkg? Does it make any sense?

mrxx commented on 2022-05-16 20:28 (UTC)

@teras, I had noticed this upstream regression and included a fix.

I've extended it now to all .make files. Please clear your build directory and try again.