6 Commits

Author SHA256 Message Date
25abc77613 Accepting request 1303385 from devel:languages:go
- Update to version 2.6.1:
  * Fix warnings 'cipherSize X: incomplete last block (Y bytes),
    padding to Z bytes' (harmless but annoying, #951) (forwarded request 1303325 from munix9)

OBS-URL: https://build.opensuse.org/request/show/1303385
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gocryptfs?expand=0&rev=5
2025-09-09 18:30:55 +00:00
6abf95f0b5 - Update to version 2.6.1:
* Fix warnings 'cipherSize X: incomplete last block (Y bytes),
    padding to Z bytes' (harmless but annoying, #951)

OBS-URL: https://build.opensuse.org/package/show/devel:languages:go/gocryptfs?expand=0&rev=15
2025-09-09 16:09:08 +00:00
8bbbc03719 Accepting request 1295936 from devel:languages:go
- Update to version 2.6.0:
  * Upgrade to go-fuse v2.8.0
  * Switch to the new go-fuse directory API
  * Fix -force_owner not allowing file/dir create ( #783 )
  * Skip TestBtrfsQuirks if mkfs.btrfs is not installed ( #930 )
- Add fix-fusermount3-bin-name.patch
  * Redefine fusermount3 binary where appropriate
- Add tests (forwarded request 1295933 from munix9)

OBS-URL: https://build.opensuse.org/request/show/1295936
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gocryptfs?expand=0&rev=4
2025-07-27 14:27:59 +00:00
80a6fd9355 - Update to version 2.6.0:
* Upgrade to go-fuse v2.8.0
  * Switch to the new go-fuse directory API
  * Fix -force_owner not allowing file/dir create ( #783 )
  * Skip TestBtrfsQuirks if mkfs.btrfs is not installed ( #930 )
- Add fix-fusermount3-bin-name.patch
  * Redefine fusermount3 binary where appropriate
- Add tests

OBS-URL: https://build.opensuse.org/package/show/devel:languages:go/gocryptfs?expand=0&rev=13
2025-07-27 05:40:40 +00:00
fce5b8c6a7 Accepting request 1278074 from devel:languages:go
- switch to fuse 3 (boo#1242079). The go code supports run-time
  switching of both fusermount3 and fusermount (from fuse 2) (forwarded request 1277968 from AndreasStieger)

OBS-URL: https://build.opensuse.org/request/show/1278074
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gocryptfs?expand=0&rev=3
2025-05-20 07:35:38 +00:00
7a9b6c4566 - switch to fuse 3 (boo#1242079). The go code supports run-time
switching of both fusermount3 and fusermount (from fuse 2)

OBS-URL: https://build.opensuse.org/package/show/devel:languages:go/gocryptfs?expand=0&rev=11
2025-05-16 13:37:32 +00:00
7 changed files with 144 additions and 22 deletions

View File

@@ -0,0 +1,69 @@
diff -ruNp a/Documentation/gocryptfs.1 b/Documentation/gocryptfs.1
--- a/Documentation/gocryptfs.1 2025-07-14 21:41:51.000000000 +0200
+++ b/Documentation/gocryptfs.1 2025-07-26 15:38:36.355108334 +0200
@@ -11,7 +11,7 @@ gocryptfs \- create or mount an encrypte
.SS Mount
\f[CR]gocryptfs [OPTIONS] CIPHERDIR MOUNTPOINT [\-o COMMA\-SEPARATED\-OPTIONS]\f[R]
.SS Unmount
-\f[CR]fusermount \-u MOUNTPOINT\f[R]
+\f[CR]fusermount3 \-u MOUNTPOINT\f[R]
.SS Change password
\f[CR]gocryptfs \-passwd [OPTIONS] CIPHERDIR\f[R]
.SS Check consistency
diff -ruNp a/mount.go b/mount.go
--- a/mount.go 2025-07-14 21:38:59.000000000 +0200
+++ b/mount.go 2025-07-26 15:42:22.956028741 +0200
@@ -516,7 +516,7 @@ func initGoFuse(rootNode fs.InodeEmbedde
// haveFusermount2 finds out if the "fusermount" binary is from libfuse 2.x.
func haveFusermount2() bool {
- path, err := exec.LookPath("fusermount")
+ path, err := exec.LookPath("fusermount3")
if err != nil {
path = "/bin/fusermount"
}
@@ -554,7 +554,7 @@ func unmount(srv *fuse.Server, mountpoin
if runtime.GOOS == "linux" {
// MacOSX does not support lazy unmount
tlog.Info.Printf("Trying lazy unmount")
- cmd := exec.Command("fusermount", "-u", "-z", mountpoint)
+ cmd := exec.Command("fusermount3", "-u", "-z", mountpoint)
cmd.Stdout = os.Stdout
cmd.Stderr = os.Stderr
cmd.Run()
diff -ruNp a/tests/fuse-unmount.bash b/tests/fuse-unmount.bash
--- a/tests/fuse-unmount.bash 2025-07-14 21:38:59.000000000 +0200
+++ b/tests/fuse-unmount.bash 2025-07-26 15:39:16.404094278 +0200
@@ -12,7 +12,7 @@ fuse-unmount() {
exit 1
fi
if [[ $OSTYPE == linux* ]] ; then
- fusermount -u "$@"
+ fusermount3 -u "$@"
else
# Mountpoint is in last argument, ignore anything else
# (like additional flags for fusermount).
diff -ruNp a/vendor/github.com/hanwen/go-fuse/v2/fuse/mount_linux.go b/vendor/github.com/hanwen/go-fuse/v2/fuse/mount_linux.go
--- a/vendor/github.com/hanwen/go-fuse/v2/fuse/mount_linux.go 2025-07-14 21:41:51.000000000 +0200
+++ b/vendor/github.com/hanwen/go-fuse/v2/fuse/mount_linux.go 2025-07-26 15:36:34.659151045 +0200
@@ -153,7 +153,7 @@ func callFusermount(mountPoint string, o
return
}
if !w.Success() {
- err = fmt.Errorf("fusermount exited with code %v\n", w.Sys())
+ err = fmt.Errorf("fusermount3 exited with code %v\n", w.Sys())
return
}
diff -ruNp a/vendor/github.com/hanwen/go-fuse/v2/fuse/server.go b/vendor/github.com/hanwen/go-fuse/v2/fuse/server.go
--- a/vendor/github.com/hanwen/go-fuse/v2/fuse/server.go 2025-07-14 21:41:51.000000000 +0200
+++ b/vendor/github.com/hanwen/go-fuse/v2/fuse/server.go 2025-07-26 15:35:57.921163937 +0200
@@ -121,7 +121,7 @@ func (ms *Server) Unmount() (err error)
return nil
}
if parseFuseFd(ms.mountPoint) >= 0 {
- return fmt.Errorf("Cannot unmount magic mountpoint %q. Please use `fusermount -u REALMOUNTPOINT` instead.", ms.mountPoint)
+ return fmt.Errorf("Cannot unmount magic mountpoint %q. Please use `fusermount3 -u REALMOUNTPOINT` instead.", ms.mountPoint)
}
delay := time.Duration(0)
for try := 0; try < 5; try++ {

View File

@@ -1,3 +1,29 @@
-------------------------------------------------------------------
Tue Sep 9 09:30:27 UTC 2025 - munix9@googlemail.com
- Update to version 2.6.1:
* Fix warnings 'cipherSize X: incomplete last block (Y bytes),
padding to Z bytes' (harmless but annoying, #951)
-------------------------------------------------------------------
Sat Jul 26 12:56:21 UTC 2025 - munix9@googlemail.com
- Update to version 2.6.0:
* Upgrade to go-fuse v2.8.0
* Switch to the new go-fuse directory API
* Fix -force_owner not allowing file/dir create ( #783 )
* Skip TestBtrfsQuirks if mkfs.btrfs is not installed ( #930 )
- Add fix-fusermount3-bin-name.patch
* Redefine fusermount3 binary where appropriate
- Add tests
-------------------------------------------------------------------
Fri May 16 07:04:04 UTC 2025 - Andreas Stieger <andreas.stieger@gmx.de>
- switch to fuse 3 (boo#1242079). The go code supports run-time
switching of both fusermount3 and fusermount (from fuse 2)
-------------------------------------------------------------------
Sun Apr 27 17:04:09 UTC 2025 - munix9@googlemail.com

View File

@@ -1,7 +1,8 @@
#
# spec file for package gocryptfs
#
# Copyright (c) 2025 SUSE LLC
# Copyright (c) 2025 SUSE LLC and contributors
# Copyright (c) 2025 Andreas Stieger <Andreas.Stieger@gmx.de>
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -16,8 +17,18 @@
#
%if 0%{?suse_version} < 1600
%bcond_with tests
%else
%ifarch riscv64
%bcond_with tests
%else
%bcond_without tests
%endif
%endif
Name: gocryptfs
Version: 2.5.4
Version: 2.6.1
Release: 0
Summary: Encrypted overlay filesystem written in Go
License: MIT
@@ -26,12 +37,19 @@ Source0: https://github.com/rfjakob/gocryptfs/releases/download/v%{versio
Source1: https://github.com/rfjakob/gocryptfs/releases/download/v%{version}/%{name}_v%{version}_src-deps.tar.gz.asc
Source2: https://nuetzlich.net/gocryptfs-signing-key.pub#/%{name}.keyring
Source3: %{name}.rpmlintrc
# PATCH-FIX-OPENSUSE fix-fusermount3-bin-name.patch munix9@googlemail.com -- Redefine fusermount3 binary where appropriate
Patch0: fix-fusermount3-bin-name.patch
BuildRequires: golang-packaging
BuildRequires: pkgconfig
BuildRequires: pkgconfig(libssl)
Requires: fuse
Requires: %{_bindir}/fusermount3
Requires: util-linux-systemd
Suggests: %{name}-doc = %{version}
%if %{with tests}
#BuildRequires: ShellCheck
BuildRequires: fuse3
BuildRequires: util-linux-systemd
%endif
%description
gocryptfs is built on top the excellent go-fuse FUSE library.
@@ -67,6 +85,15 @@ rm Documentation/MANPAGE* Documentation/*.1
%check
./%{name} --version
%if %{with tests}
# fix "/usr/bin/fusermount3: option allow_other only allowed if 'user_allow_other' is set in /etc/fuse3.conf"
rm -r tests/root_test
for test in TestDirectMount TestForceOwner ; do
awk -i inplace '/^func.*'"$test"'\(/ { print; print "\tt.Skip(\"disabled failing test\")"; next}1' $(grep -rl $test)
done
#./test.bash
go test -count 1 ./...
%endif
%files
%license LICENSE

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0db47fe41f46d1ff5b3ff4f1cc1088ab324a95af03995348435dcc20a5ff0282
size 3147352

View File

@@ -1,16 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEE//PgFET+18MWo1RaiV9bwSOgJ0AFAmf7ixgACgkQiV9bwSOg
J0AHpg/8CT9tSEf99xHrxWWDFXzblbjKps03B90w8eDZ/GhJNRYKJ3U1rdwi7OET
nl8/tT8fZaetFcfU1pPuB/utChGWM2KLGk1KG3sZ8Tcd/BVY05/8z/KM9aVXCByi
KQi3xhAmVh/nQhUFwUmUABSzik0/XDGuzXTqZR+4jrhSeqrYCnOd2tfRPnTHPCT+
JsOcIvLJkD7ZsNlwU2SSRhlTSi1jRtsp/UwvbTONzGaBkhMTtGjBbTksg+xLmjhF
Fb7esVt53qsMMp3yDG+0iDSrBBG/BkVRXQBLMVW5bhOGtc/xMIncmlmJ3ad6ZLQ+
fhEW9vyZc/lmHVofkvoYovqYMpPW29nPLL9BXbE+EoUGWiz2bfE1rdMKbCGBQd+P
7HzB82wrpUxbbOguOQqxmuJJ/SqPpHE8goE4ZfeKsMfwMhoUbxjo9P6S8z2r0/QY
1DeUCCIRwxDS9/gqDTCgB/EbyXTwb43Lki9xFhxHWwbqD5dBv4LP2AwDvxAKucJR
2NvoMOrgHdAckuEAKNiV/qs4iQSbwYBoXpcTJYtd7tvA3o8hQuygaQ86GOdzlXC1
auQBGLrC3G7437XPGkfqOeRkxfh6JTLCj3FB/bKUmzlvlyHMEFVZsq7ukljxqfez
EEilRVVM/xLG8ZQKr3VfREkDQFyujHPhivrPyRBcRHChzy1npRU=
=GZUR
-----END PGP SIGNATURE-----

View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9a966c1340a1a1d92073091643687b1205c46b57017c5da2bf7e97e3f5729a5a
size 3166951

View File

@@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEE//PgFET+18MWo1RaiV9bwSOgJ0AFAmiY7dkACgkQiV9bwSOg
J0AhXRAAhMwN2pnhIqWmAIOz1IhxBtV2OnZQcOeEcfrJAJkKNZuQ2vkNYK7taZ04
XXNICeypKdBPSYitzTT0bV4Cuq9CnKz9zO9NiYlofY9FZpzJqGpxG/tCpGIuuZR5
AMRfdJKrXuCdvJrZN3owNWIGHEvkMMIKb4rqbvc7iTM7oUL8QuY/2uC0MMBe149W
5DHdv1VePMotBDGXWwR2LmXvKdKmYn9Dw1gQTwTs5Eu64/DO5vDoorTwUOW0J/QH
rlafcoDMwO4Ny8h28QEtdCGDWANhuDeBET6jhAOygJOWauWQRmZhJT4W+cWTK8G8
J1Ar9mbJMkxNdG2pWtvQQ4DSfnkKH4IzGMUOE+hfeHqL3l0U4APCX4B3BvNXa+Ms
+tAotTlo4tIfKoxMNSJIpJeoFGZO87hND4O9A/MQhGKVU3bbgIUDtO0p4i2oe+2A
DTTK788b0OVpOu2Dno5oxgvf4q6DpRg7aWm2kw1HY8fTbR6euvduyeH40yUo+n8p
dWntKXscp0/RRTVxY6z3AC/Z3SyTMBE9byoX9VLhqV/i9/1eQRGez0xRIeNt1ABJ
JZx5RdJxMV6+1zaBxF9xoDjCmexyAVdyTcr90D60iQ4AZNzedZAgQdLWc637lvYB
Ssn+GvKR4BvUH5ijto28l/qn59CyLPaAyf1/lBO0P3jZQT1iS3o=
=Itjm
-----END PGP SIGNATURE-----