From patchwork Sun Dec 8 16:43:45 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Hartmut Goebel X-Patchwork-Id: 16433 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 28B9817874; Sun, 8 Dec 2019 16:46:14 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id E323E17871 for ; Sun, 8 Dec 2019 16:46:08 +0000 (GMT) Received: from localhost ([::1]:59894 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzhA-0002F9-ER for patchwork@mira.cbaines.net; Sun, 08 Dec 2019 11:46:08 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:41983) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzgC-0001Iz-Gu for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:14 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1idzg6-0008CW-Tz for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:08 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:46188) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1idzg6-0008AH-L2 for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1idzg6-0002y8-GT for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#38532] [PATCH 01/11] gnu: Add audiofile. References: <20191208164120.7095-1-h.goebel@crazy-compilers.com> In-Reply-To: <20191208164120.7095-1-h.goebel@crazy-compilers.com> Resent-From: Hartmut Goebel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 08 Dec 2019 16:45:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38532 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 38532@debbugs.gnu.org Received: via spool by 38532-submit@debbugs.gnu.org id=B38532.157582345711236 (code B ref 38532); Sun, 08 Dec 2019 16:45:02 +0000 Received: (at 38532) by debbugs.gnu.org; 8 Dec 2019 16:44:17 +0000 Received: from localhost ([127.0.0.1]:52132 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfD-0002ui-TU for submit@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:17 -0500 Received: from mail-out.m-online.net ([212.18.0.9]:41956) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfA-0002uX-8e for 38532@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:06 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 47WBwz3H2Tz1qqkW for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:03 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 47WBwz1m7kz1rYbC for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:03 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id yVBMWIAEGnwp for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:43:59 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-50-235.dynamic.mnet-online.de [188.174.50.235]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:43:59 +0100 (CET) Received: from thisbe.goebel-consult.de (hermia.goebel-consult.de [192.168.110.7]) by hermia.goebel-consult.de (Postfix) with ESMTP id 18902600BD for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:47 +0100 (CET) From: Hartmut Goebel Date: Sun, 8 Dec 2019 17:43:45 +0100 Message-Id: <20191208164355.7374-1-h.goebel@crazy-compilers.com> X-Mailer: git-send-email 2.21.0 MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches Patches seem to fix all CVEs reported by `guix lint`: CVE-2015-7747; CVE-2017-6827, CVE-2017-6828, CVE-2017-6829, CVE-2017-6830, CVE-2017-6831, CVE-2017-6832, CVE-2017-6833, CVE-2017-6834, CVE-2017-6835, CVE-2017-6836, CVE-2017-6837, CVE-2017-6838, CVE-2017-6839; CVE-2018-13440; CVE-2018-17095 Since the patches so not reference to CVEs, it's a bit hard to tell which patch actually closes which CVE. But Debian reports all these to be closed by the patches below. * gnu/packages/audio.scm (audiofile): New variable. * gnu/packages/patches/audiofile-fix-datatypes-in-tests.patch, gnu/packages/patches/audiofile-fix-sign-conversion.patch, gnu/packages/patches/audiofile-CVE-2015-7747.patch, gnu/packages/patches/audiofile-CVE-2018-13440.patch, gnu/packages/patches/audiofile-CVE-2018-17095.patch, gnu/packages/patches/audiofile-Check-the-number-of-coefficients.patch, gnu/packages/patches/audiofile-Fail-on-error-in-parseFormat.patch, gnu/packages/patches/audiofile-Fix-index-overflow-in-IMA.cpp.patch, gnu/packages/patches/audiofile-Fix-multiply-overflow-sfconvert.patch, gnu/packages/patches/audiofile-Fix-overflow-in-MSADPCM-decodeSam.patch, gnu/packages/patches/audiofile-division-by-zero-BlockCodec-runPull.patch, gnu/packages/patches/audiofile-hurd.patch, gnu/packages/patches/audiofile-signature-of-multiplyCheckOverflow.patch: New files. * gnu/local.mk: Add them. --- gnu/local.mk | 13 + gnu/packages/audio.scm | 41 ++ .../patches/audiofile-CVE-2015-7747.patch | 156 +++++++ .../patches/audiofile-CVE-2018-13440.patch | 28 ++ .../patches/audiofile-CVE-2018-17095.patch | 26 ++ ...ile-Check-the-number-of-coefficients.patch | 30 ++ ...diofile-Fail-on-error-in-parseFormat.patch | 36 ++ ...iofile-Fix-index-overflow-in-IMA.cpp.patch | 33 ++ ...file-Fix-multiply-overflow-sfconvert.patch | 66 +++ ...le-Fix-overflow-in-MSADPCM-decodeSam.patch | 116 ++++++ ...-division-by-zero-BlockCodec-runPull.patch | 21 + .../audiofile-fix-datatypes-in-tests.patch | 54 +++ .../audiofile-fix-sign-conversion.patch | 26 ++ gnu/packages/patches/audiofile-hurd.patch | 381 ++++++++++++++++++ ...e-signature-of-multiplyCheckOverflow.patch | 35 ++ 15 files changed, 1062 insertions(+) create mode 100644 gnu/packages/patches/audiofile-CVE-2015-7747.patch create mode 100644 gnu/packages/patches/audiofile-CVE-2018-13440.patch create mode 100644 gnu/packages/patches/audiofile-CVE-2018-17095.patch create mode 100644 gnu/packages/patches/audiofile-Check-the-number-of-coefficients.patch create mode 100644 gnu/packages/patches/audiofile-Fail-on-error-in-parseFormat.patch create mode 100644 gnu/packages/patches/audiofile-Fix-index-overflow-in-IMA.cpp.patch create mode 100644 gnu/packages/patches/audiofile-Fix-multiply-overflow-sfconvert.patch create mode 100644 gnu/packages/patches/audiofile-Fix-overflow-in-MSADPCM-decodeSam.patch create mode 100644 gnu/packages/patches/audiofile-division-by-zero-BlockCodec-runPull.patch create mode 100644 gnu/packages/patches/audiofile-fix-datatypes-in-tests.patch create mode 100644 gnu/packages/patches/audiofile-fix-sign-conversion.patch create mode 100644 gnu/packages/patches/audiofile-hurd.patch create mode 100644 gnu/packages/patches/audiofile-signature-of-multiplyCheckOverflow.patch diff --git a/gnu/local.mk b/gnu/local.mk index b2938e878b..91afc8f059 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -710,6 +710,19 @@ dist_patch_DATA = \ %D%/packages/patches/ath9k-htc-firmware-gcc.patch \ %D%/packages/patches/ath9k-htc-firmware-objcopy.patch \ %D%/packages/patches/audacity-build-with-system-portaudio.patch \ + %D%/packages/patches/audiofile-fix-datatypes-in-tests.patch \ + %D%/packages/patches/audiofile-fix-sign-conversion.patch \ + %D/packages/patches/audiofile-CVE-2015-7747.patch \ + %D/packages/patches/audiofile-CVE-2018-13440.patch \ + %D/packages/patches/audiofile-CVE-2018-17095.patch \ + %D/packages/patches/audiofile-Check-the-number-of-coefficients.patch \ + %D/packages/patches/audiofile-Fail-on-error-in-parseFormat.patch \ + %D/packages/patches/audiofile-Fix-index-overflow-in-IMA.cpp.patch \ + %D/packages/patches/audiofile-Fix-multiply-overflow-sfconvert.patch \ + %D/packages/patches/audiofile-Fix-overflow-in-MSADPCM-decodeSam.patch \ + %D/packages/patches/audiofile-division-by-zero-BlockCodec-runPull.patch \ + %D/packages/patches/audiofile-hurd.patch \ + %D/packages/patches/audiofile-signature-of-multiplyCheckOverflow.patch \ %D%/packages/patches/automake-skip-amhello-tests.patch \ %D%/packages/patches/avahi-CVE-2018-1000845.patch \ %D%/packages/patches/avahi-localstatedir.patch \ diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 7b0c540d7a..9fff563ad4 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -26,6 +26,7 @@ ;;; Copyright © 2019 Alexandros Theodotou ;;; Copyright © 2019 Christopher Lemmer Webber ;;; Copyright © 2019 Jan Wielkiewicz +;;; Copyright © 2019 Hartmt Goebel ;;; ;;; This file is part of GNU Guix. ;;; @@ -467,6 +468,46 @@ and editing digital audio. It features digital effects and spectrum analysis tools.") (license license:gpl2+))) +(define-public audiofile + (package + (name "audiofile") + (version "0.3.6") + (source + (origin + (method url-fetch) + (uri (string-append + "https://audiofile.68k.org/audiofile-" version ".tar.gz")) + (sha256 + (base32 "0rb927zknk9kmhprd8rdr4azql4gn2dp75a36iazx2xhkbqhvind")) + (patches + (search-patches + "audiofile-fix-datatypes-in-tests.patch" + "audiofile-fix-sign-conversion.patch" + "audiofile-hurd.patch" + "audiofile-CVE-2015-7747.patch" + "audiofile-Fix-index-overflow-in-IMA.cpp.patch" + "audiofile-Check-the-number-of-coefficients.patch" + "audiofile-Fix-overflow-in-MSADPCM-decodeSam.patch" + "audiofile-Fix-multiply-overflow-sfconvert.patch" + "audiofile-signature-of-multiplyCheckOverflow.patch" + "audiofile-Fail-on-error-in-parseFormat.patch" + "audiofile-division-by-zero-BlockCodec-runPull.patch" + "audiofile-CVE-2018-13440.patch" + "audiofile-CVE-2018-17095.patch")))) + (build-system gnu-build-system) + (inputs + `(("alsa-lib" ,alsa-lib))) + (home-page "https://audiofile.68k.org/") + (synopsis "Library to handle various audio file formats") + (description "This is an open-source version of SGI's audiofile library. +It provides a uniform programming interface for processing of audio data to +and from audio files of many common formats. + +Currently supported file formats include AIFF/AIFF-C, WAVE, and NeXT/Sun +.snd/.au, BICS, and raw data. Supported compression formats are currently +G.711 mu-law and A-law.") + (license license:lgpl2.1+))) + (define-public autotalent (package (name "autotalent") diff --git a/gnu/packages/patches/audiofile-CVE-2015-7747.patch b/gnu/packages/patches/audiofile-CVE-2015-7747.patch new file mode 100644 index 0000000000..3325639591 --- /dev/null +++ b/gnu/packages/patches/audiofile-CVE-2015-7747.patch @@ -0,0 +1,156 @@ +Description: fix buffer overflow when changing both sample format and + number of channels +Origin: https://github.com/mpruett/audiofile/pull/25 +Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/audiofile/+bug/1502721 +Bug-Debian: https://bugs.debian.org/801102 + +--- a/libaudiofile/modules/ModuleState.cpp ++++ b/libaudiofile/modules/ModuleState.cpp +@@ -402,7 +402,7 @@ status ModuleState::arrange(AFfilehandle + addModule(new Transform(outfc, in.pcm, out.pcm)); + + if (in.channelCount != out.channelCount) +- addModule(new ApplyChannelMatrix(infc, isReading, ++ addModule(new ApplyChannelMatrix(outfc, isReading, + in.channelCount, out.channelCount, + in.pcm.minClip, in.pcm.maxClip, + track->channelMatrix)); +--- a/test/Makefile.am ++++ b/test/Makefile.am +@@ -26,6 +26,7 @@ TESTS = \ + VirtualFile \ + floatto24 \ + query2 \ ++ sixteen-stereo-to-eight-mono \ + sixteen-to-eight \ + testchannelmatrix \ + testdouble \ +@@ -139,6 +140,7 @@ printmarkers_SOURCES = printmarkers.c + printmarkers_LDADD = $(LIBAUDIOFILE) -lm + + sixteen_to_eight_SOURCES = sixteen-to-eight.c TestUtilities.cpp TestUtilities.h ++sixteen_stereo_to_eight_mono_SOURCES = sixteen-stereo-to-eight-mono.c TestUtilities.cpp TestUtilities.h + + testchannelmatrix_SOURCES = testchannelmatrix.c TestUtilities.cpp TestUtilities.h + +--- /dev/null ++++ b/test/sixteen-stereo-to-eight-mono.c +@@ -0,0 +1,118 @@ ++/* ++ Audio File Library ++ ++ Copyright 2000, Silicon Graphics, Inc. ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License as published by ++ the Free Software Foundation; either version 2 of the License, or ++ (at your option) any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License along ++ with this program; if not, write to the Free Software Foundation, Inc., ++ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. ++*/ ++ ++/* ++ sixteen-stereo-to-eight-mono.c ++ ++ This program tests the conversion from 2-channel 16-bit integers to ++ 1-channel 8-bit integers. ++*/ ++ ++#ifdef HAVE_CONFIG_H ++#include ++#endif ++ ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#include ++ ++#include "TestUtilities.h" ++ ++int main (int argc, char **argv) ++{ ++ AFfilehandle file; ++ AFfilesetup setup; ++ int16_t frames16[] = {14298, 392, 3923, -683, 958, -1921}; ++ int8_t frames8[] = {28, 6, -2}; ++ int i, frameCount = 3; ++ int8_t byte; ++ AFframecount result; ++ ++ setup = afNewFileSetup(); ++ ++ afInitFileFormat(setup, AF_FILE_WAVE); ++ ++ afInitSampleFormat(setup, AF_DEFAULT_TRACK, AF_SAMPFMT_TWOSCOMP, 16); ++ afInitChannels(setup, AF_DEFAULT_TRACK, 2); ++ ++ char *testFileName; ++ if (!createTemporaryFile("sixteen-to-eight", &testFileName)) ++ { ++ fprintf(stderr, "Could not create temporary file.\n"); ++ exit(EXIT_FAILURE); ++ } ++ ++ file = afOpenFile(testFileName, "w", setup); ++ if (file == AF_NULL_FILEHANDLE) ++ { ++ fprintf(stderr, "could not open file for writing\n"); ++ exit(EXIT_FAILURE); ++ } ++ ++ afFreeFileSetup(setup); ++ ++ afWriteFrames(file, AF_DEFAULT_TRACK, frames16, frameCount); ++ ++ afCloseFile(file); ++ ++ file = afOpenFile(testFileName, "r", AF_NULL_FILESETUP); ++ if (file == AF_NULL_FILEHANDLE) ++ { ++ fprintf(stderr, "could not open file for reading\n"); ++ exit(EXIT_FAILURE); ++ } ++ ++ afSetVirtualSampleFormat(file, AF_DEFAULT_TRACK, AF_SAMPFMT_TWOSCOMP, 8); ++ afSetVirtualChannels(file, AF_DEFAULT_TRACK, 1); ++ ++ for (i=0; i +Date: Thu, 27 Sep 2018 10:48:45 +0200 +Subject: [PATCH] ModuleState: handle compress/decompress init failure + +When the unit initcompress or initdecompress function fails, +m_fileModule is NULL. Return AF_FAIL in that case instead of +causing NULL pointer dereferences later. + +Fixes #49 +--- + libaudiofile/modules/ModuleState.cpp | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/libaudiofile/modules/ModuleState.cpp b/libaudiofile/modules/ModuleState.cpp +index 0c29d7a..070fd9b 100644 +--- a/libaudiofile/modules/ModuleState.cpp ++++ b/libaudiofile/modules/ModuleState.cpp +@@ -75,6 +75,9 @@ status ModuleState::initFileModule(AFfilehandle file, Track *track) + m_fileModule = unit->initcompress(track, file->m_fh, file->m_seekok, + file->m_fileFormat == AF_FILE_RAWDATA, &chunkFrames); + ++ if (!m_fileModule) ++ return AF_FAIL; ++ + if (unit->needsRebuffer) + { + assert(unit->nativeSampleFormat == AF_SAMPFMT_TWOSCOMP); diff --git a/gnu/packages/patches/audiofile-CVE-2018-17095.patch b/gnu/packages/patches/audiofile-CVE-2018-17095.patch new file mode 100644 index 0000000000..231021b9fc --- /dev/null +++ b/gnu/packages/patches/audiofile-CVE-2018-17095.patch @@ -0,0 +1,26 @@ +From 822b732fd31ffcb78f6920001e9b1fbd815fa712 Mon Sep 17 00:00:00 2001 +From: Wim Taymans +Date: Thu, 27 Sep 2018 12:11:12 +0200 +Subject: [PATCH] SimpleModule: set output chunk framecount after pull + +After pulling the data, set the output chunk to the amount of +frames we pulled so that the next module in the chain has the correct +frame count. + +Fixes #50 and #51 +--- + libaudiofile/modules/SimpleModule.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/libaudiofile/modules/SimpleModule.cpp b/libaudiofile/modules/SimpleModule.cpp +index 2bae1eb..e87932c 100644 +--- a/libaudiofile/modules/SimpleModule.cpp ++++ b/libaudiofile/modules/SimpleModule.cpp +@@ -26,6 +26,7 @@ + void SimpleModule::runPull() + { + pull(m_outChunk->frameCount); ++ m_outChunk->frameCount = m_inChunk->frameCount; + run(*m_inChunk, *m_outChunk); + } + diff --git a/gnu/packages/patches/audiofile-Check-the-number-of-coefficients.patch b/gnu/packages/patches/audiofile-Check-the-number-of-coefficients.patch new file mode 100644 index 0000000000..f9427cbe61 --- /dev/null +++ b/gnu/packages/patches/audiofile-Check-the-number-of-coefficients.patch @@ -0,0 +1,30 @@ +From: Antonio Larrosa +Date: Mon, 6 Mar 2017 12:51:22 +0100 +Subject: Always check the number of coefficients + +When building the library with NDEBUG, asserts are eliminated +so it's better to always check that the number of coefficients +is inside the array range. + +This fixes the 00191-audiofile-indexoob issue in #41 +--- + libaudiofile/WAVE.cpp | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/libaudiofile/WAVE.cpp b/libaudiofile/WAVE.cpp +index 9dd8511..0fc48e8 100644 +--- a/libaudiofile/WAVE.cpp ++++ b/libaudiofile/WAVE.cpp +@@ -281,6 +281,12 @@ status WAVEFile::parseFormat(const Tag &id, uint32_t size) + + /* numCoefficients should be at least 7. */ + assert(numCoefficients >= 7 && numCoefficients <= 255); ++ if (numCoefficients < 7 || numCoefficients > 255) ++ { ++ _af_error(AF_BAD_HEADER, ++ "Bad number of coefficients"); ++ return AF_FAIL; ++ } + + m_msadpcmNumCoefficients = numCoefficients; + diff --git a/gnu/packages/patches/audiofile-Fail-on-error-in-parseFormat.patch b/gnu/packages/patches/audiofile-Fail-on-error-in-parseFormat.patch new file mode 100644 index 0000000000..50cd3dc9a3 --- /dev/null +++ b/gnu/packages/patches/audiofile-Fail-on-error-in-parseFormat.patch @@ -0,0 +1,36 @@ +From: Antonio Larrosa +Date: Mon, 6 Mar 2017 18:59:26 +0100 +Subject: Actually fail when error occurs in parseFormat + +When there's an unsupported number of bits per sample or an invalid +number of samples per block, don't only print an error message using +the error handler, but actually stop parsing the file. + +This fixes #35 (also reported at +https://bugzilla.opensuse.org/show_bug.cgi?id=1026983 and +https://blogs.gentoo.org/ago/2017/02/20/audiofile-heap-based-buffer-overflow-in-imadecodeblockwave-ima-cpp/ +) +--- + libaudiofile/WAVE.cpp | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/libaudiofile/WAVE.cpp b/libaudiofile/WAVE.cpp +index 0fc48e8..d04b796 100644 +--- a/libaudiofile/WAVE.cpp ++++ b/libaudiofile/WAVE.cpp +@@ -332,6 +332,7 @@ status WAVEFile::parseFormat(const Tag &id, uint32_t size) + { + _af_error(AF_BAD_NOT_IMPLEMENTED, + "IMA ADPCM compression supports only 4 bits per sample"); ++ return AF_FAIL; + } + + int bytesPerBlock = (samplesPerBlock + 14) / 8 * 4 * channelCount; +@@ -339,6 +340,7 @@ status WAVEFile::parseFormat(const Tag &id, uint32_t size) + { + _af_error(AF_BAD_CODEC_CONFIG, + "Invalid samples per block for IMA ADPCM compression"); ++ return AF_FAIL; + } + + track->f.sampleWidth = 16; diff --git a/gnu/packages/patches/audiofile-Fix-index-overflow-in-IMA.cpp.patch b/gnu/packages/patches/audiofile-Fix-index-overflow-in-IMA.cpp.patch new file mode 100644 index 0000000000..c1047af06c --- /dev/null +++ b/gnu/packages/patches/audiofile-Fix-index-overflow-in-IMA.cpp.patch @@ -0,0 +1,33 @@ +From: Antonio Larrosa +Date: Mon, 6 Mar 2017 18:02:31 +0100 +Subject: clamp index values to fix index overflow in IMA.cpp + +This fixes #33 +(also reported at https://bugzilla.opensuse.org/show_bug.cgi?id=1026981 +and https://blogs.gentoo.org/ago/2017/02/20/audiofile-global-buffer-overflow-in-decodesample-ima-cpp/) +--- + libaudiofile/modules/IMA.cpp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/libaudiofile/modules/IMA.cpp b/libaudiofile/modules/IMA.cpp +index 7476d44..df4aad6 100644 +--- a/libaudiofile/modules/IMA.cpp ++++ b/libaudiofile/modules/IMA.cpp +@@ -169,7 +169,7 @@ int IMA::decodeBlockWAVE(const uint8_t *encoded, int16_t *decoded) + if (encoded[1] & 0x80) + m_adpcmState[c].previousValue -= 0x10000; + +- m_adpcmState[c].index = encoded[2]; ++ m_adpcmState[c].index = clamp(encoded[2], 0, 88); + + *decoded++ = m_adpcmState[c].previousValue; + +@@ -210,7 +210,7 @@ int IMA::decodeBlockQT(const uint8_t *encoded, int16_t *decoded) + predictor -= 0x10000; + + state.previousValue = clamp(predictor, MIN_INT16, MAX_INT16); +- state.index = encoded[1] & 0x7f; ++ state.index = clamp(encoded[1] & 0x7f, 0, 88); + encoded += 2; + + for (int n=0; n +Date: Mon, 6 Mar 2017 13:54:52 +0100 +Subject: Check for multiplication overflow in sfconvert + +Checks that a multiplication doesn't overflow when +calculating the buffer size, and if it overflows, +reduce the buffer size instead of failing. + +This fixes the 00192-audiofile-signintoverflow-sfconvert case +in #41 +--- + sfcommands/sfconvert.c | 34 ++++++++++++++++++++++++++++++++-- + 1 file changed, 32 insertions(+), 2 deletions(-) + +diff --git a/sfcommands/sfconvert.c b/sfcommands/sfconvert.c +index 80a1bc4..970a3e4 100644 +--- a/sfcommands/sfconvert.c ++++ b/sfcommands/sfconvert.c +@@ -45,6 +45,33 @@ void printusage (void); + void usageerror (void); + bool copyaudiodata (AFfilehandle infile, AFfilehandle outfile, int trackid); + ++int firstBitSet(int x) ++{ ++ int position=0; ++ while (x!=0) ++ { ++ x>>=1; ++ ++position; ++ } ++ return position; ++} ++ ++#ifndef __has_builtin ++#define __has_builtin(x) 0 ++#endif ++ ++int multiplyCheckOverflow(int a, int b, int *result) ++{ ++#if (defined __GNUC__ && __GNUC__ >= 5) || ( __clang__ && __has_builtin(__builtin_mul_overflow)) ++ return __builtin_mul_overflow(a, b, result); ++#else ++ if (firstBitSet(a)+firstBitSet(b)>31) // int is signed, so we can't use 32 bits ++ return true; ++ *result = a * b; ++ return false; ++#endif ++} ++ + int main (int argc, char **argv) + { + if (argc == 2) +@@ -323,8 +350,11 @@ bool copyaudiodata (AFfilehandle infile, AFfilehandle outfile, int trackid) + { + int frameSize = afGetVirtualFrameSize(infile, trackid, 1); + +- const int kBufferFrameCount = 65536; +- void *buffer = malloc(kBufferFrameCount * frameSize); ++ int kBufferFrameCount = 65536; ++ int bufferSize; ++ while (multiplyCheckOverflow(kBufferFrameCount, frameSize, &bufferSize)) ++ kBufferFrameCount /= 2; ++ void *buffer = malloc(bufferSize); + + AFframecount totalFrames = afGetFrameCount(infile, AF_DEFAULT_TRACK); + AFframecount totalFramesWritten = 0; diff --git a/gnu/packages/patches/audiofile-Fix-overflow-in-MSADPCM-decodeSam.patch b/gnu/packages/patches/audiofile-Fix-overflow-in-MSADPCM-decodeSam.patch new file mode 100644 index 0000000000..2be930b924 --- /dev/null +++ b/gnu/packages/patches/audiofile-Fix-overflow-in-MSADPCM-decodeSam.patch @@ -0,0 +1,116 @@ +From: Antonio Larrosa +Date: Mon, 6 Mar 2017 13:43:53 +0100 +Subject: Check for multiplication overflow in MSADPCM decodeSample + +Check for multiplication overflow (using __builtin_mul_overflow +if available) in MSADPCM.cpp decodeSample and return an empty +decoded block if an error occurs. + +This fixes the 00193-audiofile-signintoverflow-MSADPCM case of #41 +--- + libaudiofile/modules/BlockCodec.cpp | 5 ++-- + libaudiofile/modules/MSADPCM.cpp | 47 +++++++++++++++++++++++++++++++++---- + 2 files changed, 46 insertions(+), 6 deletions(-) + +diff --git a/libaudiofile/modules/BlockCodec.cpp b/libaudiofile/modules/BlockCodec.cpp +index 45925e8..4731be1 100644 +--- a/libaudiofile/modules/BlockCodec.cpp ++++ b/libaudiofile/modules/BlockCodec.cpp +@@ -52,8 +52,9 @@ void BlockCodec::runPull() + // Decompress into m_outChunk. + for (int i=0; i(m_inChunk->buffer) + i * m_bytesPerPacket, +- static_cast(m_outChunk->buffer) + i * m_framesPerPacket * m_track->f.channelCount); ++ if (decodeBlock(static_cast(m_inChunk->buffer) + i * m_bytesPerPacket, ++ static_cast(m_outChunk->buffer) + i * m_framesPerPacket * m_track->f.channelCount)==0) ++ break; + + framesRead += m_framesPerPacket; + } +diff --git a/libaudiofile/modules/MSADPCM.cpp b/libaudiofile/modules/MSADPCM.cpp +index 8ea3c85..ef9c38c 100644 +--- a/libaudiofile/modules/MSADPCM.cpp ++++ b/libaudiofile/modules/MSADPCM.cpp +@@ -101,24 +101,60 @@ static const int16_t adaptationTable[] = + 768, 614, 512, 409, 307, 230, 230, 230 + }; + ++int firstBitSet(int x) ++{ ++ int position=0; ++ while (x!=0) ++ { ++ x>>=1; ++ ++position; ++ } ++ return position; ++} ++ ++#ifndef __has_builtin ++#define __has_builtin(x) 0 ++#endif ++ ++int multiplyCheckOverflow(int a, int b, int *result) ++{ ++#if (defined __GNUC__ && __GNUC__ >= 5) || ( __clang__ && __has_builtin(__builtin_mul_overflow)) ++ return __builtin_mul_overflow(a, b, result); ++#else ++ if (firstBitSet(a)+firstBitSet(b)>31) // int is signed, so we can't use 32 bits ++ return true; ++ *result = a * b; ++ return false; ++#endif ++} ++ ++ + // Compute a linear PCM value from the given differential coded value. + static int16_t decodeSample(ms_adpcm_state &state, +- uint8_t code, const int16_t *coefficient) ++ uint8_t code, const int16_t *coefficient, bool *ok=NULL) + { + int linearSample = (state.sample1 * coefficient[0] + + state.sample2 * coefficient[1]) >> 8; ++ int delta; + + linearSample += ((code & 0x08) ? (code - 0x10) : code) * state.delta; + + linearSample = clamp(linearSample, MIN_INT16, MAX_INT16); + +- int delta = (state.delta * adaptationTable[code]) >> 8; ++ if (multiplyCheckOverflow(state.delta, adaptationTable[code], &delta)) ++ { ++ if (ok) *ok=false; ++ _af_error(AF_BAD_COMPRESSION, "Error decoding sample"); ++ return 0; ++ } ++ delta >>= 8; + if (delta < 16) + delta = 16; + + state.delta = delta; + state.sample2 = state.sample1; + state.sample1 = linearSample; ++ if (ok) *ok=true; + + return static_cast(linearSample); + } +@@ -212,13 +248,16 @@ int MSADPCM::decodeBlock(const uint8_t *encoded, int16_t *decoded) + { + uint8_t code; + int16_t newSample; ++ bool ok; + + code = *encoded >> 4; +- newSample = decodeSample(*state[0], code, coefficient[0]); ++ newSample = decodeSample(*state[0], code, coefficient[0], &ok); ++ if (!ok) return 0; + *decoded++ = newSample; + + code = *encoded & 0x0f; +- newSample = decodeSample(*state[1], code, coefficient[1]); ++ newSample = decodeSample(*state[1], code, coefficient[1], &ok); ++ if (!ok) return 0; + *decoded++ = newSample; + + encoded++; diff --git a/gnu/packages/patches/audiofile-division-by-zero-BlockCodec-runPull.patch b/gnu/packages/patches/audiofile-division-by-zero-BlockCodec-runPull.patch new file mode 100644 index 0000000000..e001133916 --- /dev/null +++ b/gnu/packages/patches/audiofile-division-by-zero-BlockCodec-runPull.patch @@ -0,0 +1,21 @@ +From: Antonio Larrosa +Date: Thu, 9 Mar 2017 10:21:18 +0100 +Subject: Check for division by zero in BlockCodec::runPull + +--- + libaudiofile/modules/BlockCodec.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libaudiofile/modules/BlockCodec.cpp b/libaudiofile/modules/BlockCodec.cpp +index 4731be1..eb2fb4d 100644 +--- a/libaudiofile/modules/BlockCodec.cpp ++++ b/libaudiofile/modules/BlockCodec.cpp +@@ -47,7 +47,7 @@ void BlockCodec::runPull() + + // Read the compressed data. + ssize_t bytesRead = read(m_inChunk->buffer, m_bytesPerPacket * blockCount); +- int blocksRead = bytesRead >= 0 ? bytesRead / m_bytesPerPacket : 0; ++ int blocksRead = (bytesRead >= 0 && m_bytesPerPacket > 0) ? bytesRead / m_bytesPerPacket : 0; + + // Decompress into m_outChunk. + for (int i=0; i +Date: Tue, 5 Jul 2016 23:26:16 -0500 +Subject: [PATCH] Fix type of test data arrays. + + + + +--- + ChangeLog | 6 ++++++ + test/Identify.cpp | 3 ++- + test/NeXT.cpp | 7 ++++--- + 3 files changed, 12 insertions(+), 4 deletions(-) + +diff --git a/test/NeXT.cpp b/test/NeXT.cpp +index 7e39850..29af877 100644 +--- a/test/NeXT.cpp ++++ b/test/NeXT.cpp +@@ -30,6 +30,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -37,7 +38,7 @@ + + #include "TestUtilities.h" + +-const char kDataUnspecifiedLength[] = ++const uint8_t kDataUnspecifiedLength[] = + { + '.', 's', 'n', 'd', + 0, 0, 0, 24, // offset of 24 bytes +@@ -57,7 +58,7 @@ const char kDataUnspecifiedLength[] = + 0, 55 + }; + +-const char kDataTruncated[] = ++const uint8_t kDataTruncated[] = + { + '.', 's', 'n', 'd', + 0, 0, 0, 24, // offset of 24 bytes +@@ -152,7 +153,7 @@ TEST(NeXT, Truncated) + ASSERT_EQ(::unlink(testFileName.c_str()), 0); + } + +-const char kDataZeroChannels[] = ++const uint8_t kDataZeroChannels[] = + { + '.', 's', 'n', 'd', + 0, 0, 0, 24, // offset of 24 bytes diff --git a/gnu/packages/patches/audiofile-fix-sign-conversion.patch b/gnu/packages/patches/audiofile-fix-sign-conversion.patch new file mode 100644 index 0000000000..648161d620 --- /dev/null +++ b/gnu/packages/patches/audiofile-fix-sign-conversion.patch @@ -0,0 +1,26 @@ +Based on (hunk for changelog removed) +From b62c902dd258125cac86cd2df21fc898035a43d3 Mon Sep 17 00:00:00 2001 +From: Michael Pruett +Date: Mon, 29 Aug 2016 23:08:26 -0500 +Subject: [PATCH] Fix undefined behavior in sign conversion. + + +--- + ChangeLog | 5 +++++ + libaudiofile/modules/SimpleModule.h | 3 ++- + 2 files changed, 7 insertions(+), 1 deletion(-) + +diff --git a/libaudiofile/modules/SimpleModule.h b/libaudiofile/modules/SimpleModule.h +index 03c6c69..bad85ad 100644 +--- a/libaudiofile/modules/SimpleModule.h ++++ b/libaudiofile/modules/SimpleModule.h +@@ -123,7 +123,8 @@ struct signConverter + typedef typename IntTypes::UnsignedType UnsignedType; + + static const int kScaleBits = (Format + 1) * CHAR_BIT - 1; +- static const int kMinSignedValue = -1 << kScaleBits; ++ static const int kMaxSignedValue = (((1 << (kScaleBits - 1)) - 1) << 1) + 1; ++ static const int kMinSignedValue = -kMaxSignedValue - 1; + + struct signedToUnsigned : public std::unary_function + { diff --git a/gnu/packages/patches/audiofile-hurd.patch b/gnu/packages/patches/audiofile-hurd.patch new file mode 100644 index 0000000000..b5941dcf44 --- /dev/null +++ b/gnu/packages/patches/audiofile-hurd.patch @@ -0,0 +1,381 @@ +Description: Remove usage of PATH_MAX in tests to fix FTBFS on Hurd. + jcowgill: Removed Changelog changes +Author: Pino Toscano +Origin: backport, https://github.com/mpruett/audiofile/commit/34c261034f1193a783196618f0052112e00fbcfe +Bug: https://github.com/mpruett/audiofile/pull/17 +Bug-Debian: https://bugs.debian.org/762595 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ + +--- a/test/TestUtilities.cpp ++++ b/test/TestUtilities.cpp +@@ -21,8 +21,8 @@ + #include "TestUtilities.h" + + #include +-#include + #include ++#include + #include + + bool createTemporaryFile(const std::string &prefix, std::string *path) +@@ -35,12 +35,12 @@ bool createTemporaryFile(const std::stri + return true; + } + +-bool createTemporaryFile(const char *prefix, char *path) ++bool createTemporaryFile(const char *prefix, char **path) + { +- snprintf(path, PATH_MAX, "/tmp/%s-XXXXXX", prefix); +- int fd = ::mkstemp(path); +- if (fd < 0) +- return false; +- ::close(fd); +- return true; ++ *path = NULL; ++ std::string pathString; ++ bool result = createTemporaryFile(prefix, &pathString); ++ if (result) ++ *path = ::strdup(pathString.c_str()); ++ return result; + } +--- a/test/TestUtilities.h ++++ b/test/TestUtilities.h +@@ -53,7 +53,7 @@ extern "C" { + + #include + +-bool createTemporaryFile(const char *prefix, char *path); ++bool createTemporaryFile(const char *prefix, char **path); + + #ifdef __cplusplus + } +--- a/test/floatto24.c ++++ b/test/floatto24.c +@@ -86,8 +86,8 @@ int main (int argc, char **argv) + afInitChannels(setup, AF_DEFAULT_TRACK, 1); + afInitSampleFormat(setup, AF_DEFAULT_TRACK, AF_SAMPFMT_FLOAT, 32); + +- char testFileName[PATH_MAX]; +- if (!createTemporaryFile("floatto24", testFileName)) ++ char *testFileName; ++ if (!createTemporaryFile("floatto24", &testFileName)) + { + fprintf(stderr, "Could not create temporary file.\n"); + exit(EXIT_FAILURE); +@@ -182,6 +182,7 @@ int main (int argc, char **argv) + } + + unlink(testFileName); ++ free(testFileName); + + exit(EXIT_SUCCESS); + } +--- a/test/sixteen-to-eight.c ++++ b/test/sixteen-to-eight.c +@@ -57,8 +57,8 @@ int main (int argc, char **argv) + afInitSampleFormat(setup, AF_DEFAULT_TRACK, AF_SAMPFMT_UNSIGNED, 8); + afInitChannels(setup, AF_DEFAULT_TRACK, 1); + +- char testFileName[PATH_MAX]; +- if (!createTemporaryFile("sixteen-to-eight", testFileName)) ++ char *testFileName; ++ if (!createTemporaryFile("sixteen-to-eight", &testFileName)) + { + fprintf(stderr, "Could not create temporary file.\n"); + exit(EXIT_FAILURE); +@@ -113,6 +113,7 @@ int main (int argc, char **argv) + + afCloseFile(file); + unlink(testFileName); ++ free(testFileName); + + exit(EXIT_SUCCESS); + } +--- a/test/testchannelmatrix.c ++++ b/test/testchannelmatrix.c +@@ -39,7 +39,7 @@ + + #include "TestUtilities.h" + +-static char sTestFileName[PATH_MAX]; ++static char *sTestFileName; + + const short samples[] = {300, -300, 515, -515, 2315, -2315, 9154, -9154}; + #define SAMPLE_COUNT (sizeof (samples) / sizeof (short)) +@@ -47,7 +47,11 @@ const short samples[] = {300, -300, 515, + + void cleanup (void) + { +- unlink(sTestFileName); ++ if (sTestFileName) ++ { ++ unlink(sTestFileName); ++ free(sTestFileName); ++ } + } + + void ensure (int condition, const char *message) +@@ -76,7 +80,7 @@ int main (void) + afInitFileFormat(setup, AF_FILE_AIFFC); + + /* Write stereo data to test file. */ +- ensure(createTemporaryFile("testchannelmatrix", sTestFileName), ++ ensure(createTemporaryFile("testchannelmatrix", &sTestFileName), + "could not create temporary file"); + file = afOpenFile(sTestFileName, "w", setup); + ensure(file != AF_NULL_FILEHANDLE, "could not open file for writing"); +--- a/test/testdouble.c ++++ b/test/testdouble.c +@@ -38,7 +38,7 @@ + + #include "TestUtilities.h" + +-static char sTestFileName[PATH_MAX]; ++static char *sTestFileName; + + const double samples[] = + {1.0, 0.6, -0.3, 0.95, 0.2, -0.6, 0.9, 0.4, -0.22, 0.125, 0.1, -0.4}; +@@ -48,7 +48,11 @@ void testdouble (int fileFormat); + + void cleanup (void) + { +- unlink(sTestFileName); ++ if (sTestFileName) ++ { ++ unlink(sTestFileName); ++ free(sTestFileName); ++ } + } + + void ensure (int condition, const char *message) +@@ -96,7 +100,7 @@ void testdouble (int fileFormat) + afInitSampleFormat(setup, AF_DEFAULT_TRACK, AF_SAMPFMT_DOUBLE, 64); + afInitChannels(setup, AF_DEFAULT_TRACK, 2); + +- ensure(createTemporaryFile("testdouble", sTestFileName), ++ ensure(createTemporaryFile("testdouble", &sTestFileName), + "could not create temporary file"); + file = afOpenFile(sTestFileName, "w", setup); + ensure(file != AF_NULL_FILEHANDLE, "could not open file for writing"); +--- a/test/testfloat.c ++++ b/test/testfloat.c +@@ -38,7 +38,7 @@ + + #include "TestUtilities.h" + +-static char sTestFileName[PATH_MAX]; ++static char *sTestFileName; + + const float samples[] = + {1.0, 0.6, -0.3, 0.95, 0.2, -0.6, 0.9, 0.4, -0.22, 0.125, 0.1, -0.4}; +@@ -48,7 +48,11 @@ void testfloat (int fileFormat); + + void cleanup (void) + { +- unlink(sTestFileName); ++ if (sTestFileName) ++ { ++ unlink(sTestFileName); ++ free(sTestFileName); ++ } + } + + void ensure (int condition, const char *message) +@@ -96,7 +100,7 @@ void testfloat (int fileFormat) + afInitSampleFormat(setup, AF_DEFAULT_TRACK, AF_SAMPFMT_FLOAT, 32); + afInitChannels(setup, AF_DEFAULT_TRACK, 2); + +- ensure(createTemporaryFile("testfloat", sTestFileName), ++ ensure(createTemporaryFile("testfloat", &sTestFileName), + "could not create temporary file"); + file = afOpenFile(sTestFileName, "w", setup); + ensure(file != AF_NULL_FILEHANDLE, "could not open file for writing"); +--- a/test/testmarkers.c ++++ b/test/testmarkers.c +@@ -32,15 +32,19 @@ + + #include "TestUtilities.h" + +-static char sTestFileName[PATH_MAX]; ++static char *sTestFileName; + + #define FRAME_COUNT 200 + + void cleanup (void) + { ++ if (sTestFileName) ++ { + #ifndef DEBUG +- unlink(sTestFileName); ++ unlink(sTestFileName); + #endif ++ free(sTestFileName); ++ } + } + + void ensure (int condition, const char *message) +@@ -127,7 +131,7 @@ int testmarkers (int fileformat) + + int main (void) + { +- ensure(createTemporaryFile("testmarkers", sTestFileName), ++ ensure(createTemporaryFile("testmarkers", &sTestFileName), + "could not create temporary file"); + + testmarkers(AF_FILE_AIFF); +--- a/test/twentyfour.c ++++ b/test/twentyfour.c +@@ -71,8 +71,8 @@ int main (int argc, char **argv) + afInitSampleFormat(setup, AF_DEFAULT_TRACK, AF_SAMPFMT_TWOSCOMP, 24); + afInitChannels(setup, AF_DEFAULT_TRACK, 1); + +- char testFileName[PATH_MAX]; +- if (!createTemporaryFile("twentyfour", testFileName)) ++ char *testFileName; ++ if (!createTemporaryFile("twentyfour", &testFileName)) + { + fprintf(stderr, "could not create temporary file\n"); + exit(EXIT_FAILURE); +@@ -239,6 +239,7 @@ int main (int argc, char **argv) + exit(EXIT_FAILURE); + } + unlink(testFileName); ++ free(testFileName); + + exit(EXIT_SUCCESS); + } +--- a/test/twentyfour2.c ++++ b/test/twentyfour2.c +@@ -45,15 +45,19 @@ + + #include "TestUtilities.h" + +-static char sTestFileName[PATH_MAX]; ++static char *sTestFileName; + + #define FRAME_COUNT 10000 + + void cleanup (void) + { ++ if (sTestFileName) ++ { + #ifndef DEBUG +- unlink(sTestFileName); ++ unlink(sTestFileName); + #endif ++ free(sTestFileName); ++ } + } + + void ensure (int condition, const char *message) +@@ -78,7 +82,7 @@ int main (void) + afInitChannels(setup, AF_DEFAULT_TRACK, 1); + afInitSampleFormat(setup, AF_DEFAULT_TRACK, AF_SAMPFMT_TWOSCOMP, 24); + +- ensure(createTemporaryFile("twentyfour2", sTestFileName), ++ ensure(createTemporaryFile("twentyfour2", &sTestFileName), + "could not create temporary file"); + file = afOpenFile(sTestFileName, "w", setup); + ensure(file != NULL, "could not open test file for writing"); +--- a/test/writealaw.c ++++ b/test/writealaw.c +@@ -53,7 +53,7 @@ + + #include "TestUtilities.h" + +-static char sTestFileName[PATH_MAX]; ++static char *sTestFileName; + + #define FRAME_COUNT 16 + #define SAMPLE_COUNT FRAME_COUNT +@@ -62,9 +62,13 @@ void testalaw (int fileFormat); + + void cleanup (void) + { ++ if (sTestFileName) ++ { + #ifndef DEBUG +- unlink(sTestFileName); ++ unlink(sTestFileName); + #endif ++ free(sTestFileName); ++ } + } + + void ensure (int condition, const char *message) +@@ -113,7 +117,7 @@ void testalaw (int fileFormat) + afInitFileFormat(setup, fileFormat); + afInitChannels(setup, AF_DEFAULT_TRACK, 1); + +- ensure(createTemporaryFile("writealaw", sTestFileName), ++ ensure(createTemporaryFile("writealaw", &sTestFileName), + "could not create temporary file"); + file = afOpenFile(sTestFileName, "w", setup); + afFreeFileSetup(setup); +--- a/test/writeraw.c ++++ b/test/writeraw.c +@@ -44,13 +44,17 @@ + + #include "TestUtilities.h" + +-static char sTestFileName[PATH_MAX]; ++static char *sTestFileName; + + void cleanup (void) + { ++ if (sTestFileName) ++ { + #ifndef DEBUG +- unlink(sTestFileName); ++ unlink(sTestFileName); + #endif ++ free(sTestFileName); ++ } + } + + void ensure (int condition, const char *message) +@@ -84,7 +88,7 @@ int main (int argc, char **argv) + afInitChannels(setup, AF_DEFAULT_TRACK, 1); + afInitSampleFormat(setup, AF_DEFAULT_TRACK, AF_SAMPFMT_TWOSCOMP, 16); + +- ensure(createTemporaryFile("writeraw", sTestFileName), ++ ensure(createTemporaryFile("writeraw", &sTestFileName), + "could not create temporary file"); + file = afOpenFile(sTestFileName, "w", setup); + ensure(file != AF_NULL_FILEHANDLE, "unable to open file for writing"); +--- a/test/writeulaw.c ++++ b/test/writeulaw.c +@@ -53,7 +53,7 @@ + + #include "TestUtilities.h" + +-static char sTestFileName[PATH_MAX]; ++static char *sTestFileName; + + #define FRAME_COUNT 16 + #define SAMPLE_COUNT FRAME_COUNT +@@ -62,9 +62,13 @@ void testulaw (int fileFormat); + + void cleanup (void) + { ++ if (sTestFileName) ++ { + #ifndef DEBUG +- unlink(sTestFileName); ++ unlink(sTestFileName); + #endif ++ free(sTestFileName); ++ } + } + + void ensure (int condition, const char *message) +@@ -113,7 +117,7 @@ void testulaw (int fileFormat) + afInitFileFormat(setup, fileFormat); + afInitChannels(setup, AF_DEFAULT_TRACK, 1); + +- ensure(createTemporaryFile("writeulaw", sTestFileName), ++ ensure(createTemporaryFile("writeulaw", &sTestFileName), + "could not create temporary file"); + file = afOpenFile(sTestFileName, "w", setup); + afFreeFileSetup(setup); diff --git a/gnu/packages/patches/audiofile-signature-of-multiplyCheckOverflow.patch b/gnu/packages/patches/audiofile-signature-of-multiplyCheckOverflow.patch new file mode 100644 index 0000000000..35627d3869 --- /dev/null +++ b/gnu/packages/patches/audiofile-signature-of-multiplyCheckOverflow.patch @@ -0,0 +1,35 @@ +From: Antonio Larrosa +Date: Fri, 10 Mar 2017 15:40:02 +0100 +Subject: Fix signature of multiplyCheckOverflow. It returns a bool, not an int + +--- + libaudiofile/modules/MSADPCM.cpp | 2 +- + sfcommands/sfconvert.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/libaudiofile/modules/MSADPCM.cpp b/libaudiofile/modules/MSADPCM.cpp +index ef9c38c..d8c9553 100644 +--- a/libaudiofile/modules/MSADPCM.cpp ++++ b/libaudiofile/modules/MSADPCM.cpp +@@ -116,7 +116,7 @@ int firstBitSet(int x) + #define __has_builtin(x) 0 + #endif + +-int multiplyCheckOverflow(int a, int b, int *result) ++bool multiplyCheckOverflow(int a, int b, int *result) + { + #if (defined __GNUC__ && __GNUC__ >= 5) || ( __clang__ && __has_builtin(__builtin_mul_overflow)) + return __builtin_mul_overflow(a, b, result); +diff --git a/sfcommands/sfconvert.c b/sfcommands/sfconvert.c +index 970a3e4..367f7a5 100644 +--- a/sfcommands/sfconvert.c ++++ b/sfcommands/sfconvert.c +@@ -60,7 +60,7 @@ int firstBitSet(int x) + #define __has_builtin(x) 0 + #endif + +-int multiplyCheckOverflow(int a, int b, int *result) ++bool multiplyCheckOverflow(int a, int b, int *result) + { + #if (defined __GNUC__ && __GNUC__ >= 5) || ( __clang__ && __has_builtin(__builtin_mul_overflow)) + return __builtin_mul_overflow(a, b, result); From patchwork Sun Dec 8 16:43:46 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Hartmut Goebel X-Patchwork-Id: 16423 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 3738217874; Sun, 8 Dec 2019 16:45:19 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id B165217871 for ; Sun, 8 Dec 2019 16:45:18 +0000 (GMT) Received: from localhost ([::1]:59850 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzgL-0001JO-JX for patchwork@mira.cbaines.net; Sun, 08 Dec 2019 11:45:17 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:41879) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzg9-0001Ii-9X for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:07 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1idzg7-0008FT-7E for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:05 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:46189) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1idzg7-0008Dd-1E for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:03 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1idzg7-0002yI-0F for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:03 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#38532] [PATCH 02/11] gnu: Add dragon. Resent-From: Hartmut Goebel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 08 Dec 2019 16:45:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38532 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 38532@debbugs.gnu.org Received: via spool by 38532-submit@debbugs.gnu.org id=B38532.157582345911251 (code B ref 38532); Sun, 08 Dec 2019 16:45:02 +0000 Received: (at 38532) by debbugs.gnu.org; 8 Dec 2019 16:44:19 +0000 Received: from localhost ([127.0.0.1]:52136 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfN-0002vB-Kq for submit@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:19 -0500 Received: from mail-out.m-online.net ([212.18.0.9]:34576) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfD-0002uh-Gg for 38532@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:08 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 47WBx272ldz1qqkW for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:06 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 47WBx26w1yz1rYbC for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:06 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id dyYmzh9rZoJ0 for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:05 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-50-235.dynamic.mnet-online.de [188.174.50.235]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:05 +0100 (CET) Received: from thisbe.goebel-consult.de (hermia.goebel-consult.de [192.168.110.7]) by hermia.goebel-consult.de (Postfix) with ESMTP id 5603A601D6 for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:48 +0100 (CET) From: Hartmut Goebel Date: Sun, 8 Dec 2019 17:43:46 +0100 Message-Id: <20191208164355.7374-2-h.goebel@crazy-compilers.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20191208164355.7374-1-h.goebel@crazy-compilers.com> References: <20191208164355.7374-1-h.goebel@crazy-compilers.com> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/packages/kde-multimedia.scm: New file. * gnu/lokal.mk (MODULES): Add it. --- gnu/local.mk | 1 + gnu/packages/kde-multimedia.scm | 73 +++++++++++++++++++++++++++++++++ 2 files changed, 74 insertions(+) create mode 100644 gnu/packages/kde-multimedia.scm diff --git a/gnu/local.mk b/gnu/local.mk index 91afc8f059..ecff13b540 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -279,6 +279,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/kawa.scm \ %D%/packages/kde.scm \ %D%/packages/kde-frameworks.scm \ + %D%/packages/kde-multimedia.scm \ %D%/packages/kde-plasma.scm \ %D%/packages/kerberos.scm \ %D%/packages/key-mon.scm \ diff --git a/gnu/packages/kde-multimedia.scm b/gnu/packages/kde-multimedia.scm new file mode 100644 index 0000000000..e828f97e6e --- /dev/null +++ b/gnu/packages/kde-multimedia.scm @@ -0,0 +1,73 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017, 2019 Hartmut Goebel +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages kde-multimedia) + #:use-module (guix build-system qt) + #:use-module (guix download) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix utils) + #:use-module (gnu packages) + #:use-module (gnu packages kde-frameworks) + #:use-module (gnu packages qt)) + +(define-public dragon + (package + (name "dragon") + (version "19.08.3") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/applications/" version + "/src/dragon-" version ".tar.xz")) + (sha256 + (base32 "02l16k4sgrxbczxp8rlnxbylb5fmjh4zhl4xw55qxkvmvxnjy5zr")))) + (properties `((tags . ("Desktop" "KDE" "Multimedia")))) + (build-system qt-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("kdoctools" ,kdoctools))) + (inputs + `(("kconfig" ,kconfig) + ("kconfigwidgets" ,kconfigwidgets) + ("kcoreaddons" ,kcoreaddons) + ("kcrash" ,kcrash) + ("kdbusaddons" ,kdbusaddons) + ("ki18n" ,ki18n) + ("kio" ,kio) + ("kjobwidgets" ,kjobwidgets) + ("knotifications" ,knotifications) + ("kparts" ,kparts) + ("kwidgetsaddons" ,kwidgetsaddons) + ("kwindowsystem" ,kwindowsystem) + ("kxmlgui" ,kxmlgui) + ("oxygen-icons" ,oxygen-icons) ; default icon set + ("phonon" ,phonon) + ("phonon-backend-gstreamer" ,phonon-backend-gstreamer) + ("qtbase" ,qtbase) + ("solid" ,solid))) + (home-page "https://kde.org/applications/multimedia/org.kde.dragonplayer") + (synopsis "Simple video player") + (description "Dragon Player is a multimedia player where the focus is on +simplicity, instead of features. Dragon Player does one thing, and only one +thing, which is playing multimedia files. It's simple interface is designed +not to get in your way and instead empower you to simply play multimedia +files. + +This package is part of the KDE multimedia module.") + (license (list license:gpl2+ license:fdl1.2+)))) From patchwork Sun Dec 8 16:43:47 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hartmut Goebel X-Patchwork-Id: 16424 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 12CB917874; Sun, 8 Dec 2019 16:45:21 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id C6E6D17871 for ; Sun, 8 Dec 2019 16:45:20 +0000 (GMT) Received: from localhost ([::1]:59852 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzgN-0001K0-Jw for patchwork@mira.cbaines.net; Sun, 08 Dec 2019 11:45:19 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:41910) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzgB-0001Im-0Y for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:08 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1idzg7-0008II-K1 for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:04 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:46190) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1idzg7-0008Gz-F5 for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:03 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1idzg7-0002yP-EB for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:03 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#38532] [PATCH 03/11] gnu: Add juk. Resent-From: Hartmut Goebel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 08 Dec 2019 16:45:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38532 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 38532@debbugs.gnu.org Received: via spool by 38532-submit@debbugs.gnu.org id=B38532.157582346011258 (code B ref 38532); Sun, 08 Dec 2019 16:45:03 +0000 Received: (at 38532) by debbugs.gnu.org; 8 Dec 2019 16:44:20 +0000 Received: from localhost ([127.0.0.1]:52139 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfP-0002vQ-SG for submit@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:20 -0500 Received: from mail-out.m-online.net ([212.18.0.10]:60495) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfH-0002us-At for 38532@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:11 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 47WBx65pCRz1rYjj for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:10 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 47WBx65jHjz1rYbC for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:10 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id WL8_P8lMIWEp for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:09 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-50-235.dynamic.mnet-online.de [188.174.50.235]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:09 +0100 (CET) Received: from thisbe.goebel-consult.de (hermia.goebel-consult.de [192.168.110.7]) by hermia.goebel-consult.de (Postfix) with ESMTP id C0D196029E for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:48 +0100 (CET) From: Hartmut Goebel Date: Sun, 8 Dec 2019 17:43:47 +0100 Message-Id: <20191208164355.7374-3-h.goebel@crazy-compilers.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20191208164355.7374-1-h.goebel@crazy-compilers.com> References: <20191208164355.7374-1-h.goebel@crazy-compilers.com> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/packages/kde-multimedia.scm (juk): New variable. --- gnu/packages/kde-multimedia.scm | 57 +++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/gnu/packages/kde-multimedia.scm b/gnu/packages/kde-multimedia.scm index e828f97e6e..a55ae569a4 100644 --- a/gnu/packages/kde-multimedia.scm +++ b/gnu/packages/kde-multimedia.scm @@ -24,6 +24,7 @@ #:use-module (guix utils) #:use-module (gnu packages) #:use-module (gnu packages kde-frameworks) + #:use-module (gnu packages mp3) #:use-module (gnu packages qt)) (define-public dragon @@ -71,3 +72,59 @@ files. This package is part of the KDE multimedia module.") (license (list license:gpl2+ license:fdl1.2+)))) + +(define-public juk + (package + (name "juk") + (version "19.08.3") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/applications/" version + "/src/juk-" version ".tar.xz")) + (sha256 + (base32 "0c1hrd1n4ah7qm8xr7bfswgbcmbvnnhai4bfawx6v6ab3frl7wvf")))) + (properties `((tags . ("Desktop" "KDE" "Multimedia")))) + (build-system qt-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules))) + (inputs + `(("kcoreaddons" ,kcoreaddons) + ("kcompletion" ,kcompletion) + ("kconfig" ,kconfig) + ("kcrash" ,kcrash) + ("kdbusaddons" ,kdbusaddons) + ("kdoctools" ,kdoctools) + ("kglobalaccel" ,kglobalaccel) + ("ki18n" ,ki18n) + ("kiconthemes" ,kiconthemes) + ("kjobwidgets" ,kjobwidgets) + ("kio" ,kio) + ("knotifications" ,knotifications) + ("ktextwidgets" ,ktextwidgets) + ("kwallet" ,kwallet) + ("kwidgetsaddons" ,kwidgetsaddons) + ("kwindowsystem" ,kwindowsystem) + ("kxmlgui" ,kxmlgui) + ("oxygen-icons" ,oxygen-icons) ; default icon set + ("phonon" ,phonon) + ("phonon-backend-gstreamer" ,phonon-backend-gstreamer) + ("qtbase" ,qtbase) + ("qtsvg" ,qtsvg) + ("taglib" ,taglib))) + (home-page "https://kde.org/applications/multimedia/org.kde.juk") + (synopsis "Music jukebox / music player") + (description "JuK is a powerful music player capable of managing a large +music collection. + +Some of JuK's features include: +@itemize +@item Music collection, playlists, and smart playlists +@item Tag editing support, including the ability to edit multiple files at once +@item Tag-based music file organization and renaming +@item CD burning support using k3b +@item Album art using Google Image Search +@end itemize + +This package is part of the KDE multimedia module.") + (license license:gpl2+))) From patchwork Sun Dec 8 16:43:48 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hartmut Goebel X-Patchwork-Id: 16427 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 27F1517874; Sun, 8 Dec 2019 16:45:35 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id D42BE17871 for ; Sun, 8 Dec 2019 16:45:34 +0000 (GMT) Received: from localhost ([::1]:59860 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzgb-0001Zb-WA for patchwork@mira.cbaines.net; Sun, 08 Dec 2019 11:45:34 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:41907) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzgA-0001Ik-UP for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:08 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1idzg8-0008Lu-3C for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:05 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:46191) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1idzg7-0008KR-Ut for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:04 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1idzg7-0002yW-SS for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:03 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#38532] [PATCH 04/11] gnu: Add k3b. Resent-From: Hartmut Goebel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 08 Dec 2019 16:45:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38532 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 38532@debbugs.gnu.org Received: via spool by 38532-submit@debbugs.gnu.org id=B38532.157582346011266 (code B ref 38532); Sun, 08 Dec 2019 16:45:03 +0000 Received: (at 38532) by debbugs.gnu.org; 8 Dec 2019 16:44:20 +0000 Received: from localhost ([127.0.0.1]:52141 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfQ-0002vX-6u for submit@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:20 -0500 Received: from mail-out.m-online.net ([212.18.0.10]:34091) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfL-0002v1-84 for 38532@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:15 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 47WBxB4r9xz1rcBG for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:14 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 47WBxB4jgVz1rYbC for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:14 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id 5Y4kD_4L-BYB for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:13 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-50-235.dynamic.mnet-online.de [188.174.50.235]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:13 +0100 (CET) Received: from thisbe.goebel-consult.de (hermia.goebel-consult.de [192.168.110.7]) by hermia.goebel-consult.de (Postfix) with ESMTP id 2DCF2603E3 for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:49 +0100 (CET) From: Hartmut Goebel Date: Sun, 8 Dec 2019 17:43:48 +0100 Message-Id: <20191208164355.7374-4-h.goebel@crazy-compilers.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20191208164355.7374-1-h.goebel@crazy-compilers.com> References: <20191208164355.7374-1-h.goebel@crazy-compilers.com> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/packages/kde-multimedia.scm (k3b): New variable. --- gnu/packages/kde-multimedia.scm | 69 ++++++++++++++++++++++++++++++++- 1 file changed, 68 insertions(+), 1 deletion(-) diff --git a/gnu/packages/kde-multimedia.scm b/gnu/packages/kde-multimedia.scm index a55ae569a4..cb94b87d6b 100644 --- a/gnu/packages/kde-multimedia.scm +++ b/gnu/packages/kde-multimedia.scm @@ -23,9 +23,16 @@ #:use-module (guix packages) #:use-module (guix utils) #:use-module (gnu packages) + #:use-module (gnu packages base) + #:use-module (gnu packages gnome) #:use-module (gnu packages kde-frameworks) #:use-module (gnu packages mp3) - #:use-module (gnu packages qt)) + #:use-module (gnu packages music) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages pulseaudio) + #:use-module (gnu packages qt) + #:use-module (gnu packages video) + #:use-module (gnu packages xiph)) (define-public dragon (package @@ -128,3 +135,63 @@ Some of JuK's features include: This package is part of the KDE multimedia module.") (license license:gpl2+))) + +(define-public k3b + (package + (name "k3b") + (version "19.08.3") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/applications/" version + "/src/k3b-" version ".tar.xz")) + (sha256 + (base32 "08rbiy1hz650srdksr7ciq8dpcz20wczs22613pghrpgm5zsczhr")))) + (properties `((tags . ("Desktop" "KDE" "Multimedia")))) + (build-system qt-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config) + ("kdoctools" ,kdoctools))) + (inputs + `(("ffmpeg" ,ffmpeg) + ("flac" ,flac) + ("karchive" ,karchive) + ("kcmutils" ,kcmutils) + ("kconfig" ,kconfig) + ("kcoreaddons" ,kcoreaddons) + ("kfilemetadata" ,kfilemetadata) + ("ki18n" ,ki18n) + ("kiconthemes" ,kiconthemes) + ("kio" ,kio) + ("kjobwidgets" ,kjobwidgets) + ("knewstuff" ,knewstuff) + ("knotifications" ,knotifications) + ("knotifyconfig" ,knotifyconfig) + ("kservice" ,kservice) + ("kwidgetsaddons" ,kwidgetsaddons) + ("kxmlgui" ,kxmlgui) + ("lame" ,lame) + ("libdvdread" ,libdvdread) + ;; TODO: LibFuzzer + ("libiconv" ,libiconv) + ("libkcddb" ,libkcddb) + ("libmad" ,libmad) + ("libmpcdec" ,libmpcdec) ;; FIXME: why does cmake not find this? + ;;("libmusicbrainz" ,libmusicbrainz) ; wants old version 2 + ("libsamplerate" ,libsamplerate) + ("libsndfile" ,libsndfile) + ("libvorbis" ,libvorbis) + ("oxygen-icons" ,oxygen-icons) ; default icon set + ("qtbase" ,qtbase) + ("qtwebkit" ,qtwebkit) + ("shared-mime-info" ,shared-mime-info) + ("solid" ,solid) + ("taglib" ,taglib))) + (home-page "https://kde.org/applications/multimedia/org.kde.k3b") + (synopsis "Sophisticated CD/DVD burning application") + (description "K3b is CD-writing software which intends to be feature-rich +and provide an easily usable interface. Features include burning audio CDs +from .WAV and .MP3 audio files, configuring external programs and configuring +devices.") + (license (list license:gpl2+ license:fdl1.2+)))) From patchwork Sun Dec 8 16:43:49 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hartmut Goebel X-Patchwork-Id: 16425 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 450F317874; Sun, 8 Dec 2019 16:45:25 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id 073C417871 for ; Sun, 8 Dec 2019 16:45:25 +0000 (GMT) Received: from localhost ([::1]:59856 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzgR-0001Mm-Mr for patchwork@mira.cbaines.net; Sun, 08 Dec 2019 11:45:23 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:41909) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzgB-0001Il-1M for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:08 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1idzg8-0008PF-Hs for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:05 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:46192) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1idzg8-0008Ng-Bw for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:04 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1idzg8-0002ye-AT for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:04 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#38532] [PATCH 05/11] gnu: Add libkcddb. Resent-From: Hartmut Goebel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 08 Dec 2019 16:45:04 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38532 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 38532@debbugs.gnu.org Received: via spool by 38532-submit@debbugs.gnu.org id=B38532.157582346011273 (code B ref 38532); Sun, 08 Dec 2019 16:45:04 +0000 Received: (at 38532) by debbugs.gnu.org; 8 Dec 2019 16:44:20 +0000 Received: from localhost ([127.0.0.1]:52143 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfQ-0002ve-HY for submit@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:20 -0500 Received: from mail-out.m-online.net ([212.18.0.10]:51777) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfP-0002vI-2B for 38532@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:19 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 47WBxG3s32z1rcBK for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:18 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 47WBxG3lSNz1rYbC for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:18 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id v3bgyCazrR4V for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:17 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-50-235.dynamic.mnet-online.de [188.174.50.235]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:17 +0100 (CET) Received: from thisbe.goebel-consult.de (hermia.goebel-consult.de [192.168.110.7]) by hermia.goebel-consult.de (Postfix) with ESMTP id 985D76042A for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:49 +0100 (CET) From: Hartmut Goebel Date: Sun, 8 Dec 2019 17:43:49 +0100 Message-Id: <20191208164355.7374-5-h.goebel@crazy-compilers.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20191208164355.7374-1-h.goebel@crazy-compilers.com> References: <20191208164355.7374-1-h.goebel@crazy-compilers.com> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/packages/kde-multimedia.scm (libkcddb): New variable. --- gnu/packages/kde-multimedia.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/kde-multimedia.scm b/gnu/packages/kde-multimedia.scm index cb94b87d6b..6a989fd32d 100644 --- a/gnu/packages/kde-multimedia.scm +++ b/gnu/packages/kde-multimedia.scm @@ -195,3 +195,35 @@ and provide an easily usable interface. Features include burning audio CDs from .WAV and .MP3 audio files, configuring external programs and configuring devices.") (license (list license:gpl2+ license:fdl1.2+)))) + +(define-public libkcddb + (package + (name "libkcddb") + (version "19.08.3") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/applications/" version + "/src/libkcddb-" version ".tar.xz")) + (sha256 + (base32 "1rla9sfzpdfiki0p265ga6d1axqpq37825maaw85hm84mg7hkzjn")))) + (properties `((tags . ("Desktop" "KDE" "Multimedia")))) + (build-system qt-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("kdoctools" ,kdoctools))) + (inputs + `(("kcodecs" ,kcodecs) + ("kconfig" ,kconfig) + ("ki18n" ,ki18n) + ("kio" ,kio) + ("kwidgetsaddons" ,kwidgetsaddons) + ("libmusicbrainz" ,libmusicbrainz) + ("qtbase" ,qtbase))) + (arguments + `(#:tests? #f ; Most tests require network + #:configure-flags '("-DBUILD_TESTING=OFF"))) ; not run anyway + (home-page "https://cgit.kde.org/libkcddb.git") + (synopsis "CDDB library for KDE Platform (runtime)") + (description "A library for retrieving and sending cddb information.") + (license (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+)))) From patchwork Sun Dec 8 16:43:50 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Hartmut Goebel X-Patchwork-Id: 16430 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id C4D4317874; Sun, 8 Dec 2019 16:45:43 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id 7F7F917871 for ; Sun, 8 Dec 2019 16:45:43 +0000 (GMT) Received: from localhost ([::1]:59880 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzgk-0001yT-LD for patchwork@mira.cbaines.net; Sun, 08 Dec 2019 11:45:42 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:41957) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzgB-0001Ip-QT for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:09 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1idzg9-0008S2-0o for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:07 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:46193) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1idzg8-0008Qu-Qj for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:04 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1idzg8-0002yl-PE for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:04 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#38532] [PATCH 06/11] gnu: Add kaffeine. Resent-From: Hartmut Goebel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 08 Dec 2019 16:45:04 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38532 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 38532@debbugs.gnu.org Received: via spool by 38532-submit@debbugs.gnu.org id=B38532.157582346511290 (code B ref 38532); Sun, 08 Dec 2019 16:45:04 +0000 Received: (at 38532) by debbugs.gnu.org; 8 Dec 2019 16:44:25 +0000 Received: from localhost ([127.0.0.1]:52146 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfU-0002w1-SW for submit@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:25 -0500 Received: from mail-out.m-online.net ([212.18.0.9]:45105) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfT-0002vt-26 for 38532@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:23 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 47WBxL3ptqz1qqlF for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:22 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 47WBxL3k2bz1rYbC for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:22 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id 4nPa6OVkfXWx for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:21 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-50-235.dynamic.mnet-online.de [188.174.50.235]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:21 +0100 (CET) Received: from thisbe.goebel-consult.de (hermia.goebel-consult.de [192.168.110.7]) by hermia.goebel-consult.de (Postfix) with ESMTP id 032B260451 for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:49 +0100 (CET) From: Hartmut Goebel Date: Sun, 8 Dec 2019 17:43:50 +0100 Message-Id: <20191208164355.7374-6-h.goebel@crazy-compilers.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20191208164355.7374-1-h.goebel@crazy-compilers.com> References: <20191208164355.7374-1-h.goebel@crazy-compilers.com> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/packages/kde-multimedia.scm (kaffeine): New variable. --- gnu/packages/kde-multimedia.scm | 61 ++++++++++++++++++++++++++++++++- 1 file changed, 60 insertions(+), 1 deletion(-) diff --git a/gnu/packages/kde-multimedia.scm b/gnu/packages/kde-multimedia.scm index 6a989fd32d..e2f0a10948 100644 --- a/gnu/packages/kde-multimedia.scm +++ b/gnu/packages/kde-multimedia.scm @@ -26,13 +26,15 @@ #:use-module (gnu packages base) #:use-module (gnu packages gnome) #:use-module (gnu packages kde-frameworks) + #:use-module (gnu packages linux) #:use-module (gnu packages mp3) #:use-module (gnu packages music) #:use-module (gnu packages pkg-config) #:use-module (gnu packages pulseaudio) #:use-module (gnu packages qt) #:use-module (gnu packages video) - #:use-module (gnu packages xiph)) + #:use-module (gnu packages xiph) + #:use-module (gnu packages xorg)) (define-public dragon (package @@ -227,3 +229,60 @@ devices.") (synopsis "CDDB library for KDE Platform (runtime)") (description "A library for retrieving and sending cddb information.") (license (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+)))) + +(define-public kaffeine + (package + (name "kaffeine") + (version "2.0.18") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/kaffeine" + "/kaffeine-" version ".tar.xz")) + (sha256 + (base32 "10dnhr9v2jlki44i3gmjagky66ybixmv6f29z5imk9clgddrlyfr")))) + (properties `((tags . ("Desktop" "KDE" "Multimedia")))) + (build-system qt-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config) + ("kdoctools" ,kdoctools))) + (inputs + `(("eudev" ,eudev) + ("kcoreaddons" ,kcoreaddons) + ("kdbusaddons" ,kdbusaddons) + ("ki18n" ,ki18n) + ("kio" ,kio) + ("kwidgetsaddons" ,kwidgetsaddons) + ("kwindowsystem" ,kwindowsystem) + ("kxmlgui" ,kxmlgui) + ("libxscrnsaver" ,libxscrnsaver) + ;;("oxygen-icons" ,oxygen-icons) ; default icon set + ("qtbase" ,qtbase) + ("qtx11extras" ,qtx11extras) + ("solid" ,solid) + ("v4l-utils" ,v4l-utils) ; libdvbv5 + ("vlc" ,vlc))) + ;;/tmp/guix-build-kaffeine-2.0.18.drv-0/kaffeine-2.0.18/src/dvb/dvbrecording.cpp:476:73: error: conversion to non-const reference type ‘class QString&&’ from rvalue of type ‘QString’ [-fpermissive] + ;;qCDebug(logDvb, "name and priority %s %s", qPrintable(listRec->name), qPrintable(listRec->priority)); + (arguments + `(;;#:configure-flags '("-DBUILD_TESTING=ON") + ;;#:tests? #f ; tests fail hard in our build environment + #:phases + (modify-phases (@ (guix build qt-build-system) %standard-phases) + (add-after 'unpack 'fix-code + (lambda _ + (substitute* "src/dvb/dvbdevice_linux.cpp" + (("\\s*qPrintable\\(transponder\\.getTransmissionType\\(\\)\\)\\);") + "transponder.getTransmissionType());")) + #t))))) + (home-page "https://kde.org/applications/multimedia/org.kde.kaffeine") + (synopsis "Versatile media player for KDE") + (description "Kaffeine is a media player for KDE. While it supports +multiple Phonon backends, its default backend is Xine, giving Kaffeine a wide +variety of supported media types and letting Kaffeine access CDs, DVDs, and +network streams easily. + +Kaffeine can keep track of multiple playlists simultaneously, and supports +autoloading of subtitle files for use while playing video.") + (license (list license:gpl2+ license:fdl1.2+)))) From patchwork Sun Dec 8 16:43:51 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hartmut Goebel X-Patchwork-Id: 16428 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 76E7817874; Sun, 8 Dec 2019 16:45:35 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id 32EB217871 for ; Sun, 8 Dec 2019 16:45:35 +0000 (GMT) Received: from localhost ([::1]:59872 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzgc-0001e7-A0 for patchwork@mira.cbaines.net; Sun, 08 Dec 2019 11:45:34 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:41962) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzgB-0001Iq-Rr for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:09 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1idzg9-0008Uz-D3 for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:07 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:46194) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1idzg9-0008TZ-89 for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:05 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1idzg9-0002yt-6L for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:05 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#38532] [PATCH 07/11] gnu: Add kmix. Resent-From: Hartmut Goebel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 08 Dec 2019 16:45:05 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38532 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 38532@debbugs.gnu.org Received: via spool by 38532-submit@debbugs.gnu.org id=B38532.157582346911306 (code B ref 38532); Sun, 08 Dec 2019 16:45:05 +0000 Received: (at 38532) by debbugs.gnu.org; 8 Dec 2019 16:44:29 +0000 Received: from localhost ([127.0.0.1]:52149 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfZ-0002wI-52 for submit@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:29 -0500 Received: from mail-out.m-online.net ([212.18.0.10]:38199) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfW-0002wA-Td for 38532@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:27 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 47WBxQ2nm3z1rcBN for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:26 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 47WBxQ2hddz1rYbC for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:26 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id 3RHtKWXCZ6VP for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:25 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-50-235.dynamic.mnet-online.de [188.174.50.235]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:25 +0100 (CET) Received: from thisbe.goebel-consult.de (hermia.goebel-consult.de [192.168.110.7]) by hermia.goebel-consult.de (Postfix) with ESMTP id 692CB60537 for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:50 +0100 (CET) From: Hartmut Goebel Date: Sun, 8 Dec 2019 17:43:51 +0100 Message-Id: <20191208164355.7374-7-h.goebel@crazy-compilers.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20191208164355.7374-1-h.goebel@crazy-compilers.com> References: <20191208164355.7374-1-h.goebel@crazy-compilers.com> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/packages/kde-multimedia.scm (kmix): New variable. --- gnu/packages/kde-multimedia.scm | 49 +++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/gnu/packages/kde-multimedia.scm b/gnu/packages/kde-multimedia.scm index e2f0a10948..fad5b75b2a 100644 --- a/gnu/packages/kde-multimedia.scm +++ b/gnu/packages/kde-multimedia.scm @@ -24,8 +24,10 @@ #:use-module (guix utils) #:use-module (gnu packages) #:use-module (gnu packages base) + #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages kde-frameworks) + #:use-module (gnu packages libcanberra) #:use-module (gnu packages linux) #:use-module (gnu packages mp3) #:use-module (gnu packages music) @@ -286,3 +288,50 @@ network streams easily. Kaffeine can keep track of multiple playlists simultaneously, and supports autoloading of subtitle files for use while playing video.") (license (list license:gpl2+ license:fdl1.2+)))) + +(define-public kmix + (package + (name "kmix") + (version "19.08.3") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/applications/" version + "/src/kmix-" version ".tar.xz")) + (sha256 + (base32 "1g42hlmpdf0rrgqapps6v47z9cnwpkfzpwgavaq26m5k3bpanwfg")))) + (properties `((tags . ("Desktop" "KDE" "Multimedia")))) + (build-system qt-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (inputs + `(("alsa-lib" ,alsa-lib) + ("glib" ,glib) + ("kconfigwidgets" ,kconfigwidgets) + ("kcompletion" ,kcompletion) + ("kconfig" ,kconfig) + ("kconfigwidgets" ,kconfigwidgets) + ("kcrash" ,kcrash) + ("kdbusaddons" ,kdbusaddons) + ("kdoctools" ,kdoctools) + ("kglobalaccel" ,kglobalaccel) + ("ki18n" ,ki18n) + ("kiconthemes" ,kiconthemes) + ("knotifications" ,knotifications) + ("kwidgetsaddons" ,kwidgetsaddons) + ("kwindowsystem" ,kwindowsystem) + ("kxmlgui" ,kxmlgui) + ("libcanberra" ,libcanberra) + ("oxygen-icons" ,oxygen-icons) ; default icon set + ("plasma-framework" ,plasma-framework) + ("pulseaudio" ,pulseaudio) + ("qtbase" ,qtbase) + ("solid" ,solid))) + (home-page "https://kde.org/applications/multimedia/org.kde.kmix") + (synopsis "Volume control and mixer") + (description "KMix is an audio device mixer, used to adjust volume, select +recording inputs, and set other hardware options. + +This package is part of the KDE multimedia module.") + (license (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+)))) From patchwork Sun Dec 8 16:43:52 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hartmut Goebel X-Patchwork-Id: 16426 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id C00ED17874; Sun, 8 Dec 2019 16:45:27 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id 1D64617873 for ; Sun, 8 Dec 2019 16:45:27 +0000 (GMT) Received: from localhost ([::1]:59858 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzgU-0001Pa-00 for patchwork@mira.cbaines.net; Sun, 08 Dec 2019 11:45:26 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:41982) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzgC-0001Ix-GJ for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:10 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1idzg9-00006U-S8 for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:08 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:46195) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1idzg9-0008WQ-LC for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:05 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1idzg9-0002z0-JW for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:05 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#38532] [PATCH 08/11] gnu: Add kmplayer. Resent-From: Hartmut Goebel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 08 Dec 2019 16:45:05 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38532 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 38532@debbugs.gnu.org Received: via spool by 38532-submit@debbugs.gnu.org id=B38532.157582347411326 (code B ref 38532); Sun, 08 Dec 2019 16:45:05 +0000 Received: (at 38532) by debbugs.gnu.org; 8 Dec 2019 16:44:34 +0000 Received: from localhost ([127.0.0.1]:52152 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfe-0002wc-En for submit@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:34 -0500 Received: from mail-out.m-online.net ([212.18.0.10]:43419) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfa-0002wQ-P3 for 38532@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:33 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 47WBxV1nTxz1rcBK for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:30 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 47WBxV1hsgz1rYbC for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:30 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id 4RCO24CZctjc for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:28 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-50-235.dynamic.mnet-online.de [188.174.50.235]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:28 +0100 (CET) Received: from thisbe.goebel-consult.de (hermia.goebel-consult.de [192.168.110.7]) by hermia.goebel-consult.de (Postfix) with ESMTP id 46C8F60885 for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:51 +0100 (CET) From: Hartmut Goebel Date: Sun, 8 Dec 2019 17:43:52 +0100 Message-Id: <20191208164355.7374-8-h.goebel@crazy-compilers.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20191208164355.7374-1-h.goebel@crazy-compilers.com> References: <20191208164355.7374-1-h.goebel@crazy-compilers.com> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches `guix lint` reports two CVEs, both are unrelated: - CVE-2018-5200: for vendor "pandora" and some 4.2.2.x version - CVE-2019-9133: windows only (I assume it it alsow relates to the "pandora" vendor, since the version the CVE refers to as "solving the issue" does not exist at KDE.) * gnu/packages/kde-multimedia.scm (kmplayer): New variable. * gnu/packages/patches/kmplayer-aarch64.patch, gnu/packages/patches/kmplayer-upstream_Fix-build-with-Qt-5.9.patch: New files. * gnu/local.mk: Add them. --- gnu/local.mk | 2 + gnu/packages/kde-multimedia.scm | 66 +++++++++++++++++++ gnu/packages/patches/kmplayer-aarch64.patch | 57 ++++++++++++++++ ...layer-upstream_Fix-build-with-Qt-5.9.patch | 42 ++++++++++++ 4 files changed, 167 insertions(+) create mode 100644 gnu/packages/patches/kmplayer-aarch64.patch create mode 100644 gnu/packages/patches/kmplayer-upstream_Fix-build-with-Qt-5.9.patch diff --git a/gnu/local.mk b/gnu/local.mk index ecff13b540..6b631f945f 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1037,6 +1037,8 @@ dist_patch_DATA = \ %D%/packages/patches/kmod-module-directory.patch \ %D%/packages/patches/kmscon-runtime-keymap-switch.patch \ %D%/packages/patches/kpackage-allow-external-paths.patch \ + %D/packages/patches/kmplayer-aarch64.patch \ + %D/packages/patches/kmplayer-upstream_Fix-build-with-Qt-5.9.patch \ %D%/packages/patches/kpmcore-fix-tests.patch \ %D%/packages/patches/kpmcore-remove-broken-test.patch \ %D%/packages/patches/kobodeluxe-paths.patch \ diff --git a/gnu/packages/kde-multimedia.scm b/gnu/packages/kde-multimedia.scm index fad5b75b2a..17f4cb7e06 100644 --- a/gnu/packages/kde-multimedia.scm +++ b/gnu/packages/kde-multimedia.scm @@ -335,3 +335,69 @@ recording inputs, and set other hardware options. This package is part of the KDE multimedia module.") (license (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+)))) + +(define-public kmplayer + (package + (name "kmplayer") + (version "0.12.0b") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/kmplayer/0.12" + "/kmplayer-" version ".tar.bz2")) + (sha256 + (base32 "0wzdxym4fc83wvqyhcwid65yv59a2wvp1lq303cn124mpnlwx62y")) + (patches (search-patches + "kmplayer-aarch64.patch" + "kmplayer-upstream_Fix-build-with-Qt-5.9.patch")))) + (properties `((tags . ("Desktop" "KDE" "Multimedia")))) + (build-system qt-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config) + ("kdoctools" ,kdoctools))) + (inputs + `(("kconfig" ,kconfig) + ("kcoreaddons" ,kcoreaddons) + ("kdelibs4support" ,kdelibs4support) + ("ki18n" ,ki18n) + ("kinit" ,kinit) + ("kio" ,kio) + ("kparts" ,kparts) + ("kmediaplayer" ,kmediaplayer) + ("kwidgetsaddons" ,kwidgetsaddons) + ("libxcb" ,libxcb) ;; FIXME: why does cmake not find XEVIE and XPRINT? + ("oxygen-icons" ,oxygen-icons) ; default icon set + ("phonon" ,phonon) + ("qtbase" ,qtbase) + ("cairo" ,cairo) + ("qtsvg" ,qtsvg) + ("qtx11extras" ,qtx11extras) + ("xcb-util" ,xcb-util) + ("xcb-util-cursor" ,xcb-util-cursor) + ("xcb-util-errors" ,xcb-util-errors) + ("xcb-util-image" ,xcb-util-image) + ("xcb-util-keysyms" ,xcb-util-keysyms) + ("xcb-util-wm" ,xcb-util-wm))) + (arguments + `(#:configure-flags + (list (string-append + "-DCMAKE_CXX_FLAGS=-I" + (assoc-ref %build-inputs "qtx11extras") "/include/qt5")))) + (home-page "https://kde.org/applications/multimedia/org.kde.kmplayer") + (synopsis "Media player using mplayer/phonon as backend") + (description "Kmplayer can play all the audio/video supported by +mplayer/phonon from a local file or URL and be embedded in Konqueror and +KHTML. It also plays DVDs. + +Some features: +@itemize +@item play DVD/VCD movies (from file or url and from a video device) +@item embed inside konqueror (movie is played inside konqueror) +@item embed inside khtml (movie playback inside a html page) +@item Movie recording using mencoder (part of the mplayer package) +@item No video during recording, but you can always open a new window and play it +@item Broadcasting, http streaming, using ffserver/ffmpeg +@item For TV sources, you need v4lctl (part of the xawtv package) +@end itemize") + (license (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+)))) diff --git a/gnu/packages/patches/kmplayer-aarch64.patch b/gnu/packages/patches/kmplayer-aarch64.patch new file mode 100644 index 0000000000..76f713be96 --- /dev/null +++ b/gnu/packages/patches/kmplayer-aarch64.patch @@ -0,0 +1,57 @@ +Index: b/src/moz-sdk/prcpucfg.h +=================================================================== +--- a/src/moz-sdk/prcpucfg.h ++++ b/src/moz-sdk/prcpucfg.h +@@ -288,6 +288,52 @@ + #define PR_BYTES_PER_WORD_LOG2 3 + #define PR_BYTES_PER_DWORD_LOG2 3 + ++#elif defined(__aarch64__) ++ ++#define IS_LITTLE_ENDIAN 1 ++#undef IS_BIG_ENDIAN ++#define IS_64 ++ ++#define PR_BYTES_PER_BYTE 1 ++#define PR_BYTES_PER_SHORT 2 ++#define PR_BYTES_PER_INT 4 ++#define PR_BYTES_PER_INT64 8 ++#define PR_BYTES_PER_LONG 8 ++#define PR_BYTES_PER_FLOAT 4 ++#define PR_BYTES_PER_DOUBLE 8 ++#define PR_BYTES_PER_WORD 8 ++#define PR_BYTES_PER_DWORD 8 ++ ++#define PR_BITS_PER_BYTE 8 ++#define PR_BITS_PER_SHORT 16 ++#define PR_BITS_PER_INT 32 ++#define PR_BITS_PER_INT64 64 ++#define PR_BITS_PER_LONG 64 ++#define PR_BITS_PER_FLOAT 32 ++#define PR_BITS_PER_DOUBLE 64 ++#define PR_BITS_PER_WORD 64 ++ ++#define PR_BITS_PER_BYTE_LOG2 3 ++#define PR_BITS_PER_SHORT_LOG2 4 ++#define PR_BITS_PER_INT_LOG2 5 ++#define PR_BITS_PER_INT64_LOG2 6 ++#define PR_BITS_PER_LONG_LOG2 6 ++#define PR_BITS_PER_FLOAT_LOG2 5 ++#define PR_BITS_PER_DOUBLE_LOG2 6 ++#define PR_BITS_PER_WORD_LOG2 6 ++ ++#define PR_ALIGN_OF_SHORT 2 ++#define PR_ALIGN_OF_INT 4 ++#define PR_ALIGN_OF_LONG 8 ++#define PR_ALIGN_OF_INT64 8 ++#define PR_ALIGN_OF_FLOAT 4 ++#define PR_ALIGN_OF_DOUBLE 8 ++#define PR_ALIGN_OF_POINTER 8 ++#define PR_ALIGN_OF_WORD 8 ++ ++#define PR_BYTES_PER_WORD_LOG2 3 ++#define PR_BYTES_PER_DWORD_LOG2 3 ++ + #elif defined(__mc68000__) + + #undef IS_LITTLE_ENDIAN diff --git a/gnu/packages/patches/kmplayer-upstream_Fix-build-with-Qt-5.9.patch b/gnu/packages/patches/kmplayer-upstream_Fix-build-with-Qt-5.9.patch new file mode 100644 index 0000000000..6a40dbe347 --- /dev/null +++ b/gnu/packages/patches/kmplayer-upstream_Fix-build-with-Qt-5.9.patch @@ -0,0 +1,42 @@ +From 3def65075c09af4961cd399e8e78ed78cca72e65 Mon Sep 17 00:00:00 2001 +From: Wolfgang Bauer +Date: Wed, 11 Oct 2017 22:16:02 +0200 +Subject: [PATCH] Fix build with Qt 5.9 + +Summary: +moc 5.9 errors out when building: +Error: Plugin Metadata file "" could not be opened: file to open is a directory + +Same issue and fix as https://phabricator.kde.org/D5392 for khtml. + +CCBUG: 377490 + +Test Plan: builds fine now with Qt 5.9.0rc and also earlier versions. + +Reviewers: vriezen, pino + +Reviewed By: pino + +Subscribers: pino + +Differential Revision: https://phabricator.kde.org/D5985 +--- + src/kmplayer_part.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/kmplayer_part.h b/src/kmplayer_part.h +index f90f85d..0fddbaa 100644 +--- a/src/kmplayer_part.h ++++ b/src/kmplayer_part.h +@@ -36,7 +36,7 @@ namespace KMPlayer { + + class KMPlayerFactory : public KPluginFactory { + Q_OBJECT +- Q_PLUGIN_METADATA(IID "org.kde.KPluginFactory" FILE "") ++ Q_PLUGIN_METADATA(IID "org.kde.KPluginFactory") + Q_INTERFACES(KPluginFactory) + public: + KMPlayerFactory(); +-- +2.14.2 + From patchwork Sun Dec 8 16:43:53 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hartmut Goebel X-Patchwork-Id: 16429 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 4047717874; Sun, 8 Dec 2019 16:45:38 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id ED4A417871 for ; Sun, 8 Dec 2019 16:45:37 +0000 (GMT) Received: from localhost ([::1]:59878 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzgf-0001mo-9n for patchwork@mira.cbaines.net; Sun, 08 Dec 2019 11:45:37 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:42019) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzgD-0001Jo-Mz for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:11 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1idzgB-0000Dr-GE for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:09 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:46198) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1idzgB-0000Ad-7p for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:07 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1idzgA-0002z7-18 for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:06 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#38532] [PATCH 09/11] gnu: Add kwave. Resent-From: Hartmut Goebel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 08 Dec 2019 16:45:05 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38532 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 38532@debbugs.gnu.org Received: via spool by 38532-submit@debbugs.gnu.org id=B38532.157582347711340 (code B ref 38532); Sun, 08 Dec 2019 16:45:05 +0000 Received: (at 38532) by debbugs.gnu.org; 8 Dec 2019 16:44:37 +0000 Received: from localhost ([127.0.0.1]:52155 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfg-0002wq-TE for submit@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:37 -0500 Received: from mail-out.m-online.net ([212.18.0.9]:43105) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfe-0002wb-Nf for 38532@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:35 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 47WBxZ1TXTz1qqlF for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:34 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 47WBxZ1P3Cz1rYbC for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:34 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id fLLM3WPjbN1q for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:32 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-50-235.dynamic.mnet-online.de [188.174.50.235]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:32 +0100 (CET) Received: from thisbe.goebel-consult.de (hermia.goebel-consult.de [192.168.110.7]) by hermia.goebel-consult.de (Postfix) with ESMTP id CB1EF608C2 for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:51 +0100 (CET) From: Hartmut Goebel Date: Sun, 8 Dec 2019 17:43:53 +0100 Message-Id: <20191208164355.7374-9-h.goebel@crazy-compilers.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20191208164355.7374-1-h.goebel@crazy-compilers.com> References: <20191208164355.7374-1-h.goebel@crazy-compilers.com> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/packages/kde-multimedia.scm (kwave): New variable. --- gnu/packages/kde-multimedia.scm | 80 +++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) diff --git a/gnu/packages/kde-multimedia.scm b/gnu/packages/kde-multimedia.scm index 17f4cb7e06..924cf48536 100644 --- a/gnu/packages/kde-multimedia.scm +++ b/gnu/packages/kde-multimedia.scm @@ -23,8 +23,11 @@ #:use-module (guix packages) #:use-module (guix utils) #:use-module (gnu packages) + #:use-module (gnu packages audio) #:use-module (gnu packages base) + #:use-module (gnu packages compression) #:use-module (gnu packages glib) + #:use-module (gnu packages gtk) #:use-module (gnu packages gnome) #:use-module (gnu packages kde-frameworks) #:use-module (gnu packages libcanberra) @@ -401,3 +404,80 @@ Some features: @item For TV sources, you need v4lctl (part of the xawtv package) @end itemize") (license (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+)))) + +(define-public kwave + (package + (name "kwave") + (version "19.08.3") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/applications/" version + "/src/kwave-" version ".tar.xz")) + (sha256 + (base32 "1vv3m3h9mvjr9sxajccqnvcgvz901n3qxhki0g7vsljvh31x5s5x")))) + (properties `((tags . ("Desktop" "KDE" "Multimedia")))) + (build-system qt-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("librsvg" ,librsvg) + ("pkg-config" ,pkg-config) + ("kdoctools" ,kdoctools))) + (inputs + `(("also-lib" ,alsa-lib) + ("audiofile" ,audiofile) + ("flac" ,flac) + ("id3lib" ,id3lib) + ("karchive" ,karchive) + ("kcompletion" ,kcompletion) + ("kconfig" ,kconfig) + ("kconfigwidgets" ,kconfigwidgets) + ("kcoreaddons" ,kcoreaddons) + ("kcrash" ,kcrash) + ("kdbusaddons" ,kdbusaddons) + ("ki18n" ,ki18n) + ("kiconthemes" ,kiconthemes) + ("kio" ,kio) + ("kservice" ,kservice) + ("ktextwidgets" ,ktextwidgets) + ("kwidgetsaddons" ,kwidgetsaddons) + ("kxmlgui" ,kxmlgui) + ("libmad" ,libmad) + ("libsamplerate" ,libsamplerate) + ("libvorbis" ,libvorbis) + ("opus" ,opus) + ;;("oxygen-icons" ,oxygen-icons) ; default icon set + ("pulseaudio" ,pulseaudio) + ("qtbase" ,qtbase) + ("qtmultimedia" ,qtmultimedia) + ("zlib" ,zlib))) + (home-page "https://kde.org/applications/multimedia/org.kde.kwave") + (synopsis "Sound editor for KDE") + (description "Kwave is a sound editor designed for the KDE Desktop +Environment. + +With Kwave you can record, play back, import and edit many sorts of audio +files including multi-channel files. It includes some plugins to transform +audio files in several ways and presents a graphical view with a complete +zoom- and scroll capability. + +Its features include: +@itemize +@item 24 Bit Support +@item Undo/Redo +@item Use of multicore CPUs (SMP, hyperthreading) +@item Simple Drag & Drop +@item Realtime Pre-Listen for some effects +@item Support for multi-track files +@item Playback and recording via native ALSA (or OSS, deprecated) +@item Playback via PulseAudio and Phonon +@item Load and edit-capability for large files (can use virtual memory) +@item Reading and auto-repair of damaged wav-files +@item Supports multiple windows +@item Extendable Plugin interface +@item a nice splashscreen +@item some label handling +@end itemize") + (license (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+ + license:cc-by-sa3.0 license:cc-by-sa4.0 ;; icons, samples + license:cc0 license:bsd-3)))) ;; utilities files From patchwork Sun Dec 8 16:43:54 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hartmut Goebel X-Patchwork-Id: 16431 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 55A0D17874; Sun, 8 Dec 2019 16:45:44 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id 0B4F017871 for ; Sun, 8 Dec 2019 16:45:44 +0000 (GMT) Received: from localhost ([::1]:59882 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzgl-0001zH-Ep for patchwork@mira.cbaines.net; Sun, 08 Dec 2019 11:45:43 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:41989) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzgC-0001J4-Jb for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:10 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1idzgA-00008b-JL for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:08 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:46196) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1idzgA-00008W-FN for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:06 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1idzgA-0002zE-Ej for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:06 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#38532] [PATCH 10/11] gnu: Add elisa. Resent-From: Hartmut Goebel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 08 Dec 2019 16:45:06 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38532 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 38532@debbugs.gnu.org Received: via spool by 38532-submit@debbugs.gnu.org id=B38532.157582348011356 (code B ref 38532); Sun, 08 Dec 2019 16:45:06 +0000 Received: (at 38532) by debbugs.gnu.org; 8 Dec 2019 16:44:40 +0000 Received: from localhost ([127.0.0.1]:52158 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfk-0002x6-62 for submit@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:40 -0500 Received: from mail-out.m-online.net ([212.18.0.9]:60669) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfi-0002wy-Cy for 38532@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:38 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 47WBxd6DBRz1qqlF for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:37 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 47WBxd67Gtz1rYbC for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:37 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id e16tHi_BM6wQ for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:36 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-50-235.dynamic.mnet-online.de [188.174.50.235]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:36 +0100 (CET) Received: from thisbe.goebel-consult.de (hermia.goebel-consult.de [192.168.110.7]) by hermia.goebel-consult.de (Postfix) with ESMTP id 40F2160934 for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:52 +0100 (CET) From: Hartmut Goebel Date: Sun, 8 Dec 2019 17:43:54 +0100 Message-Id: <20191208164355.7374-10-h.goebel@crazy-compilers.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20191208164355.7374-1-h.goebel@crazy-compilers.com> References: <20191208164355.7374-1-h.goebel@crazy-compilers.com> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/packages/kde-multimedia.scm (elisa): New variable. --- gnu/packages/kde-multimedia.scm | 70 +++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) diff --git a/gnu/packages/kde-multimedia.scm b/gnu/packages/kde-multimedia.scm index 924cf48536..ffdda58d83 100644 --- a/gnu/packages/kde-multimedia.scm +++ b/gnu/packages/kde-multimedia.scm @@ -481,3 +481,73 @@ Its features include: (license (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+ license:cc-by-sa3.0 license:cc-by-sa4.0 ;; icons, samples license:cc0 license:bsd-3)))) ;; utilities files + +(define-public elisa + (package + (name "elisa") + (version "0.4.2") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde//stable/elisa/0.4.2" + "/elisa-" version ".tar.xz")) + (sha256 + (base32 "0v9af6l89pgz1g7naf7gwcnq8znlicyh7z985kxalbdmv359c97w")))) + (properties `((tags . ("Desktop" "KDE" "Multimedia")))) + (build-system qt-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config) + ("dbus" ,dbus) + ("kdoctools" ,kdoctools) + ("xorg-server" , xorg-server-for-tests))) + (inputs + `(("kconfig" ,kconfig) + ("baloo" ,baloo) + ("kconfigwidgets" ,kconfigwidgets) + ("kcoreaddons" ,kcoreaddons) + ("kcrash" ,kcrash) + ("kcmutils" ,kcmutils) + ("kdbusaddons" ,kdbusaddons) + ("kdeclarative" ,kdeclarative) + ("kfilemetadata" ,kfilemetadata) + ("ki18n" ,ki18n) + ("kio" ,kio) + ("kirigami" ,kirigami) + ("kmediaplayer" ,kmediaplayer) + ("kparts" ,kparts) + ("kpackage" ,kpackage) + ("kwidgetsaddons" ,kwidgetsaddons) + ("kxmlgui" ,kxmlgui) + ("oxygen-icons" ,oxygen-icons) ; default icon set + ("phonon" ,phonon) + ("qtbase" ,qtbase) + ("qtdeclarative" ,qtdeclarative) + ("qtgraphicaleffects" ,qtgraphicaleffects) ; not listed as dependency + ("qtmultimedia" ,qtmultimedia) + ("qtquickcontrols" ,qtquickcontrols) + ("qtquickcontrols2" ,qtquickcontrols2) + ("qtsvg" ,qtsvg) + ("qtx11extras" ,qtx11extras) + ;; TODO: upnpqt https://gitlab.com/homeautomationqt/upnp-player-qt + ("vlc" ,vlc))) + (arguments + `(#:phases + (modify-phases (@ (guix build qt-build-system) %standard-phases) + (add-before 'check 'start-xorg-server + (lambda* (#:key inputs #:allow-other-keys) + ;; The test suite requires a running X server, setting + ;; QT_QPA_PLATFORM=offscreen does not suffice. + (system (string-append (assoc-ref inputs "xorg-server") + "/bin/Xvfb :1 -screen 0 640x480x24 &")) + (setenv "DISPLAY" ":1") + #t))))) + (home-page "https://kde.org/applications/multimedia/org.kde.elisa") + (synopsis "Powerful music player for Plasma 5") + (description "Elisa is a simple music player aiming to provide a nice +experience for its users. Elisa allows to browse music by album, artist or +all tracks. The music is indexed using either a private indexer or an indexer +using Baloo. The private one can be configured to scan music on chosen paths. +The Baloo one is much faster because Baloo is providing all needed data from +its own database. You can build and play your own playlist.") + (license license:lgpl3+))) From patchwork Sun Dec 8 16:43:55 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hartmut Goebel X-Patchwork-Id: 16432 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 5BF9717874; Sun, 8 Dec 2019 16:45:50 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id 15AC817871 for ; Sun, 8 Dec 2019 16:45:50 +0000 (GMT) Received: from localhost ([::1]:59892 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzgr-0002AO-Iv for patchwork@mira.cbaines.net; Sun, 08 Dec 2019 11:45:49 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:42006) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1idzgD-0001JK-7m for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:11 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1idzgB-0000CD-9d for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:09 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:46197) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1idzgA-00009I-Rs for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:06 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1idzgA-0002zL-R9 for guix-patches@gnu.org; Sun, 08 Dec 2019 11:45:06 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#38532] [PATCH 11/11] gnu: Add kamoso. Resent-From: Hartmut Goebel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 08 Dec 2019 16:45:06 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38532 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 38532@debbugs.gnu.org Received: via spool by 38532-submit@debbugs.gnu.org id=B38532.157582348311372 (code B ref 38532); Sun, 08 Dec 2019 16:45:06 +0000 Received: (at 38532) by debbugs.gnu.org; 8 Dec 2019 16:44:43 +0000 Received: from localhost ([127.0.0.1]:52161 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfn-0002xM-Fe for submit@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:43 -0500 Received: from mail-out.m-online.net ([212.18.0.10]:35167) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1idzfm-0002xF-95 for 38532@debbugs.gnu.org; Sun, 08 Dec 2019 11:44:42 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 47WBxj53z5z1rcBK for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:41 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 47WBxj4yghz1rYbC for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:41 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id pZ48tS0Lehfn for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:40 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-50-235.dynamic.mnet-online.de [188.174.50.235]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:40 +0100 (CET) Received: from thisbe.goebel-consult.de (hermia.goebel-consult.de [192.168.110.7]) by hermia.goebel-consult.de (Postfix) with ESMTP id A9916609F3 for <38532@debbugs.gnu.org>; Sun, 8 Dec 2019 17:44:52 +0100 (CET) From: Hartmut Goebel Date: Sun, 8 Dec 2019 17:43:55 +0100 Message-Id: <20191208164355.7374-11-h.goebel@crazy-compilers.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20191208164355.7374-1-h.goebel@crazy-compilers.com> References: <20191208164355.7374-1-h.goebel@crazy-compilers.com> MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/packages/kde-multimedia.scm (kamoso): New variable. --- gnu/packages/kde-multimedia.scm | 49 +++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/gnu/packages/kde-multimedia.scm b/gnu/packages/kde-multimedia.scm index ffdda58d83..ba262a0599 100644 --- a/gnu/packages/kde-multimedia.scm +++ b/gnu/packages/kde-multimedia.scm @@ -29,6 +29,7 @@ #:use-module (gnu packages glib) #:use-module (gnu packages gtk) #:use-module (gnu packages gnome) + #:use-module (gnu packages gstreamer) #:use-module (gnu packages kde-frameworks) #:use-module (gnu packages libcanberra) #:use-module (gnu packages linux) @@ -551,3 +552,51 @@ using Baloo. The private one can be configured to scan music on chosen paths. The Baloo one is much faster because Baloo is providing all needed data from its own database. You can build and play your own playlist.") (license license:lgpl3+))) + +(define-public kamoso + (package + (name "kamoso") + (version "19.08.3") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/applications/" version + "/src/kamoso-" version ".tar.xz")) + (sha256 + (base32 "0j0lr2gwaxwchgfp54dashm1b39gsaw4ly9p8ybavwwzhjkdqza3")))) + (properties `((tags . ("Desktop" "KDE" "Multimedia")))) + (build-system qt-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("glib:bin" ,glib "bin") + ("kdoctools" ,kdoctools) + ("pkg-config" ,pkg-config))) + (inputs + `(("gstreamer" ,gstreamer) + ("gst-plugins-base" ,gst-plugins-base) + ("kconfig" ,kconfig) + ("ki18n" ,ki18n) + ("kio" ,kio) + ("kirigami" ,kirigami) + ("knotifications" ,knotifications) + ("kparts" ,kparts) + ("oxygen-icons" ,oxygen-icons) ; default icon set + ("purpose" ,purpose) + ("qtbase" ,qtbase) + ("qtdeclarative" ,qtdeclarative) + ("qtgraphicaleffects" ,qtgraphicaleffects) + ("qtquickcontrols" ,qtquickcontrols) + ("qtquickcontrols2" ,qtquickcontrols2) ; not listed as dependency + ("qtx11extras" ,qtx11extras))) + (arguments + `(#:tests? #f ; test program gets built, but is not found + #:configure-flags + (list "-DBUILD_TESTING=OFF" ; not run anyway, see above + (string-append "-DCMAKE_CXX_FLAGS=-I" + (assoc-ref %build-inputs "gst-plugins-base") + "/include/gstreamer-1.0")))) + (home-page "https://kde.org/applications/multimedia/org.kde.kamoso") + (synopsis "Take pictures and videos out of your webcam") + (description "Kamoso is a simple and friendly program to use your +camera. Use it to take pictures and make videos to share.") + (license (list license:gpl2+ license:lgpl2.0+))))