Package Details: vbrfix 0.24-2

Git Clone URL: https://aur.archlinux.org/vbrfix.git (read-only, click to copy)
Package Base: vbrfix
Description: A CLI useful for fixing corrupt mp3 files
Upstream URL: https://packages.ubuntu.com/cosmic/vbrfix
Keywords: fix mp3 vbr vbrfix
Licenses: GPL2
Submitter: bemeurer
Maintainer: bemeurer
Last Packager: bemeurer
Votes: 1
Popularity: 0.000000
First Submitted: 2018-09-25 03:48 (UTC)
Last Updated: 2018-09-25 03:54 (UTC)

Latest Comments

lovehatelove commented on 2025-06-03 06:39 (UTC)

Thank you! That fixed it for me as well. I wouldn't have been able to do that myself. I don't need to use a stupid Ubuntu VM to use this tool anymore.

smw commented on 2025-06-01 20:15 (UTC) (edited on 2025-06-01 20:23 (UTC) by smw)

I just ran into the same problem. The "An error occurred in build" message only appears at the end of the compilation, but the relevant message is much higher up:

vbrfix.cpp: In member function ‘void VbrFix::logFile(const char*)’:
vbrfix.cpp:43:10: error: format not a string literal and no format arguments [-Werror=format-security]
   43 |   fprintf(log,s);fprintf(log,"\n");
      |   ~~~~~~~^~~~~~~

I fixed it by creating and adding this patch:

--- vbrfix.orig/vbrfixc/vbrfix.cpp      2003-07-17 13:58:21.000000000 -0400
+++ vbrfix.new/vbrfixc/vbrfix.cpp       2025-06-01 16:00:48.605350137 -0400
@@ -40,7 +40,7 @@
 }
 void VbrFix::logFile(const char* s){//log file info not tested yet
   if(log==NULL)return;
-  fprintf(log,s);fprintf(log,"\n");
+  fprintf(log,"%s",s);fprintf(log,"\n");
   fflush(log);
 }
 void VbrFix::startWriting(){

I'm not sure this is the correct fix, but it's good enough for my purposes. Meanwhile, here's the corresponding edited PKGBUILD:

pkgname=vbrfix
pkgver=0.24
pkgrel=2
pkgdesc="A CLI useful for fixing corrupt mp3 files"
arch=('i686' 'x86_64')
url="https://packages.ubuntu.com/cosmic/vbrfix"
license=('GPL2')
makedepends=('make')
source=("http://archive.ubuntu.com/ubuntu/pool/universe/v/vbrfix/vbrfix_$pkgver+dfsg.orig.tar.xz" "cstring.patch" "logwrite.patch")
md5sums=('27ee9a38a5dac9344b9256bf6d06ab4e'
         '11808e35dd062464d7d7a044c43cba09'
         '3ea5351b3ef6e12f26341c8d27586dbd')

sha256sums=('11c24c246da232a5ad73c37fcfab89dedb820ddc76167395411df4a836ce3a29'
            '81057c6da66649a441b544c75eaf9b8005561a3c3437aebf8bdb2855edc0a7ce'
            '3d00bd5bd0bdf4c49d8dbd2233308789da7d1bff05b5ee67f1f42cd5d51940e7')

prepare() {
    cd "vbrfixc-$pkgver" || exit 1
    patch -Np1 -i "${srcdir}/cstring.patch"
    patch -Np1 -i "${srcdir}/logwrite.patch"
}

build() {
    cd "vbrfixc-$pkgver" || exit 1
    ls
    ./configure --prefix=/usr
    make
}

package() {
    cd "vbrfixc-$pkgver" || exit 1
    make prefix="$pkgdir/usr/" install
    mv "$pkgdir/usr/bin/vbrfixc" "$pkgdir/usr/bin/$pkgname"
}

The changes include adding the name of the patch file to the source list, adding the md5sum and sha256sum values for the new patch to the corresponding sum lists, and applying the patch as the (new) third line in the prepare() function.

lovehatelove commented on 2025-04-29 23:26 (UTC)

This package fails to build. I wish I could provide more details but the only error I see is "An error occurred in build".