Package Details: ntfsprogs-plus 1.0.0-2

Git Clone URL: https://aur.archlinux.org/ntfsprogs-plus.git (read-only, click to copy)
Package Base: ntfsprogs-plus
Description: NTFS filesystem utilities.
Upstream URL: https://github.com/ntfsprogs-plus/ntfsprogs-plus
Keywords: ntfsplus ntfsprogs ntfsprogs-plus
Licenses: GPL-2.0-or-later, LGPL-2.0-or-later
Conflicts: ntfs-3g, ntfsprogs, ntfsprogs-plus-git
Provides: ntfs-3g, ntfsprogs, ntfsprogs-plus
Submitter: shadichy
Maintainer: shadichy
Last Packager: shadichy
Votes: 12
Popularity: 2.43
First Submitted: 2025-10-20 19:17 (UTC)
Last Updated: 2026-07-08 11:26 (UTC)

Required by (61)

Sources (1)

Latest Comments

1 2 Next › Last »

shadichy commented on 2026-07-08 11:25 (UTC)

I've updated the dependencies (and makedepends)

TrialnError commented on 2026-07-06 19:55 (UTC)

Okay, then it is likely that hwinfo snuck in that way. Thanks for confirming.

libgcrypt is part of the build process, and is already installed if base-devel is installed.

Okay, but libgcrypt itself isn't part of base-devel. Therefore it is only implicitly resolved. And generally the consens seems to be that explicit (make)deps should be listed (The depends array should list all direct first level dependencies even when some are already declared transitively.). But in the end it boils down to personal preference.

HurricanePootis commented on 2026-07-06 19:41 (UTC) (edited on 2026-07-06 19:48 (UTC) by HurricanePootis)

Yes, maybe I wasn't clear when I said it, but the 0BSD license is for the PKGBUILD itself. The license() should still be set to the project's license.

diff --git a/PKGBUILD b/PKGBUILD
index 6b582d9..73a5d1b 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -4,10 +4,10 @@ pkgbase=ntfsprogs-plus
 pkgname=${pkgbase}
 _repo=ntfsprogs-plus/$pkgname
 pkgver=1.0.0
-pkgrel=1
+pkgrel=2
 pkgdesc='NTFS filesystem utilities'
 arch=('x86_64')
-license=('0BSD')
+license=('GPL-2.0-or-later' 'LGPL-2.0-or-later')
 url="https://github.com/${_repo}"
 depends=('util-linux-libs')
 conflicts=('ntfsprogs' 'ntfs-3g' 'ntfsprogs-plus-git')

Make sure to also bump the pkgrel() since both the depends() and license() changed.

@TriaInError

Using namcap, you can see what packages a project relies on. Furthermore, I built the package in a clean extra-x86-64-build chroot, and it was not necessary to list anything in makedepends().

hurricane@TheCloutPC ~/ntfsprogs-plus $ namcap ntfsprogs-plus-1.0.0-1-x86_64.pkg.tar.zst 
ntfsprogs-plus W: Dependency glibc detected and implicitly satisfied (libraries ['usr/lib/libc.so.6'] needed in files ['usr/bin/ntfsck', 'usr/bin/ntfsinfo', 'usr/bin/ntfsclone', 'usr/bin/ntfscluster', 'usr/bin/ntfsresize', 'usr/lib/libntfs.so.90.0.0', 'usr/bin/mkntfs', 'usr/bin/ntfslabel'])
hurricane@TheCloutPC ~/ntfsprogs-plus $ 

As you can see, there is no libgcrypt dependency at all. libgcrypt is part of the build process, and is already installed if base-devel is installed.

TrialnError commented on 2026-07-06 19:08 (UTC) (edited on 2026-07-06 19:08 (UTC) by TrialnError)

The license field in the PKGBUILD references the upstream license. Not the one under which the PKGBUILD is licensed. And upstream is not 0BSD. It is still GPL2.0 and LGPL2.0 :).
And why the removal of libgcrypt from makedepends? Upstream still mentions it in the README and the configure script checks for it?

checking for gpgrt-config... /usr/bin/gpgrt-config
configure: Use gpgrt-config as libgcrypt-config
checking for LIBGCRYPT - version >= 1.2.2... yes (1.12.2)
checking for gnutls >= 1.4.4... yes
checking for uuid/uuid.h... yes
checking for uuid_generate... no
checking for uuid_generate in -luuid... yes
checking for hd.h... yes
checking for hd_list in -lhd... yes
checking for sys/mkdev.h... no
checking for sys/sysmacros.h... yes

And maybe hwinfo needs to be added as a dep? The lib lists it as required. But that may be a result from a quick build in an unclean environment.

readelf -d libntfs.so

Dynamic section at offset 0x611a0 contains 26 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libhd.so.25]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]

And the options --enable-extras and --enable-crypto can be removed?

configure: WARNING: unrecognized options: --enable-extras, --enable-crypto

shadichy commented on 2026-07-06 16:12 (UTC)

Hi @HurricanePootis,

I really appreciate your feedback!

However, I'd like to argue with you on 1 point: - There isn't a reliance on glibc. I can still build it against bionic (using android-ndk).

I'd update this package as soon as possible.

Thank you again~

HurricanePootis commented on 2026-07-05 15:02 (UTC)

Hey,

Now that Linux 7.1 includes the revised ntfs driver, I am looking through this PKGBUILD. I recommend the following changes:

  1. This package actually relies on util-linux-libs not util-linux according to namcap. Furthermore, there is a reliance on glibc.
  2. You should leave makedepends() blank, as every makedepends() is part of the base-devel package needed to build packages in the first place
  3. You have erroneously created the folder /usr/share/licenses/ntfsprogs-plus with 644 octal permissions instead of the required 755 for folders. This means no one but root can enter the folder at all.
  4. You should really consider licensing this package as 0BSD with pkgctl license setup ntfsprogs-plus, now that the intended driver is upstream for linux. This would allow this package to be accepted upstream as an official package.
diff --git a/PKGBUILD b/PKGBUILD
index 499e6bc..5ab6494 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -8,14 +8,7 @@ pkgdesc='NTFS filesystem utilities'
 arch=('x86_64')
 license=('GPL-2.0-or-later')
 url="https://github.com/${_repo}"
-depends=('util-linux')
-makedepends=(
-  'autoconf'
-  'automake'
-  'libtool'
-  'libgcrypt'
-  'pkgconf'
-)
+depends=('util-linux-libs' 'glibc')
 conflicts=('ntfsprogs' 'ntfs-3g' 'ntfsprogs-plus-git')
 provides=('ntfsprogs' "$pkgname" 'ntfs-3g')
 source=("${pkgname}.tar.gz::https://api.github.com/repos/ntfsprogs-plus/ntfsprogs-plus/tarball/refs/tags/1.0.0")
@@ -56,6 +49,6 @@ package() {
     install

   # License
-  install -dm644 "${pkgdir}/usr/share/licenses/${pkgname}"
+  install -dm755 "${pkgdir}/usr/share/licenses/${pkgname}"
   install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
 }

oech3 commented on 2025-11-08 14:58 (UTC)

Thankyou. But still jq is listed at deps. Adding 0BSD LICENSE file to repo is needed for importing (if interested).

shadichy commented on 2025-10-26 16:02 (UTC) (edited on 2025-10-26 16:02 (UTC) by shadichy)

I will drop the jq hack once the repo author introduces an official release for the tool

oech3 commented on 2025-10-26 15:58 (UTC) (edited on 2025-10-26 15:58 (UTC) by oech3)

One of a reason is dropping security is not allowed like sha256sums=('SKIP') and it forces installing jq. This would block importing to official repo.