Changes of Revision 4

kid3.spec Added
x
 
1
@@ -0,0 +1,273 @@
2
+#
3
+# spec file for package kid3
4
+#
5
+# Copyright (c) 2025 SUSE LLC
6
+#
7
+# All modifications and additions to the file contributed by third parties
8
+# remain the property of their copyright owners, unless otherwise agreed
9
+# upon. The license for this file, and modifications and additions to the
10
+# file, is the same license as for the pristine package itself (unless the
11
+# license for the pristine package is not an Open Source License, in which
12
+# case the license is the MIT License). An "Open Source License" is a
13
+# license that conforms to the Open Source Definition (Version 1.9)
14
+# published by the Open Source Initiative.
15
+
16
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
17
+#
18
+
19
+
20
+# Internal QML imports
21
+%global __requires_exclude qmlimport\\(Kid3.*
22
+%if 0%{?suse_version} > 1500
23
+%define qt_version 6
24
+%else
25
+%define qt_version 5
26
+%endif
27
+
28
+Name:           kid3
29
+Version:        3.9.6
30
+Release:        0
31
+Summary:        Efficient ID3 Tag Editor
32
+License:        GPL-2.0-or-later
33
+Group:          Productivity/Multimedia/Sound/Utilities
34
+URL:            https://kid3.kde.org/
35
+Source0:        https://download.kde.org/stable/%{name}/%{version}/%{name}-%{version}.tar.xz
36
+Source1:        https://download.kde.org/stable/%{name}/%{version}/%{name}-%{version}.tar.xz.sig
37
+BuildRequires:  extra-cmake-modules
38
+BuildRequires:  hicolor-icon-theme
39
+BuildRequires:  id3lib-devel
40
+BuildRequires:  kf%{qt_version}-filesystem
41
+BuildRequires:  libxslt-tools
42
+BuildRequires:  python3 >= 3.6
43
+BuildRequires:  readline-devel
44
+BuildRequires:  update-desktop-files
45
+BuildRequires:  cmake(KF%{qt_version}DocTools)
46
+BuildRequires:  cmake(KF%{qt_version}KIO)
47
+BuildRequires:  cmake(Qt%{qt_version}Core)
48
+BuildRequires:  cmake(Qt%{qt_version}DBus)
49
+BuildRequires:  cmake(Qt%{qt_version}Gui)
50
+BuildRequires:  cmake(Qt%{qt_version}LinguistTools)
51
+BuildRequires:  cmake(Qt%{qt_version}Multimedia)
52
+BuildRequires:  cmake(Qt%{qt_version}Network)
53
+BuildRequires:  cmake(Qt%{qt_version}Qml)
54
+BuildRequires:  cmake(Qt%{qt_version}Quick)
55
+BuildRequires:  cmake(Qt%{qt_version}Test)
56
+BuildRequires:  cmake(Qt%{qt_version}UiTools)
57
+BuildRequires:  cmake(Qt%{qt_version}Widgets)
58
+BuildRequires:  cmake(Qt%{qt_version}Xml)
59
+BuildRequires:  config(docbook-xsl-stylesheets)
60
+BuildRequires:  pkgconfig(flac)
61
+BuildRequires:  pkgconfig(gstreamer-1.0)
62
+BuildRequires:  pkgconfig(libavcodec) >= 61
63
+BuildRequires:  pkgconfig(libavformat)
64
+BuildRequires:  pkgconfig(libavutil)
65
+BuildRequires:  pkgconfig(libchromaprint)
66
+BuildRequires:  pkgconfig(libswresample)
67
+BuildRequires:  pkgconfig(ogg)
68
+BuildRequires:  pkgconfig(taglib) >= 1.4
69
+BuildRequires:  pkgconfig(vorbis)
70
+Requires:       %{name}-core = %{version}
71
+Requires:       libxslt-tools
72
+Requires:       xdg-utils
73
+# kid3 and kid3-qt can exist together on a system but the user will have two packages with the same functionality.
74
+Conflicts:      kid3-qt = %{version}
75
+
76
+%description
77
+f you want to easily tag multiple MP3, Ogg/Vorbis, Opus, DSF, FLAC,
78
+MPC, MP4/AAC, MP2, Opus, Speex, TrueAudio, WavPack and WMA files
79
+(e.g. full albums) without typing the same information again and
80
+again and have control over both ID3v1 and ID3v2 tags,
81
+then Kid3 is the program you are looking for.
82
+
83
+With Kid3 you can:
84
+- Edit ID3v1.1 tags
85
+- Edit all ID3v2.3 and ID3v2.4 frames
86
+- Convert between ID3v1.1, ID3v2.3 and ID3v2.4 tags
87
+- Edit tags in MP3, Ogg/Vorbis, FLAC, MPC, MP4/AAC, MP2, Speex,
88
+  TrueAudio, WavPack, WMA, AIFF and WAV files
89
+- Edit tags of multiple files, e.g. the artist, album, year and
90
+  genre of all files of an album typically have the same values
91
+  and can be set together.
92
+- Generate tags from filenames
93
+- Generate tags from the contents of tag fields
94
+- Generate filenames from tags
95
+- Rename and create directories from tags
96
+- Generate playlist files
97
+- Automatically convert upper and lower case and replace strings
98
+- Import from freedb2.org, MusicBrainz, Discogs, Amazon and other
99
+  sources of album data
100
+- Export tags as CSV, HTML, playlists, Kover XML and in other formats
101
+- Edit synchronized lyrics and event timing codes,import and export LRC files
102
+
103
+This package uses KDE libraries, if you do not use KDE you should use kid3-qt.
104
+For a commandline interface you can use kid3-cli.
105
+
106
+%package qt
107
+Summary:        Efficient ID3 Tag Editor
108
+Group:          Productivity/Multimedia/Sound/Utilities
109
+Requires:       %{name}-core = %{version}
110
+Requires:       xdg-utils
111
+# kid3 and kid3-qt can exist together on a system but the user will have two packages with the same functionality.
112
+Conflicts:      kid3 = %{version}
113
+Obsoletes:      kid3-qt < %{version}
114
+
115
+%description qt
116
+With Kid3 you can:
117
+  - Edit ID3v1.1 tags
118
+  - Edit all ID3v2.3 and ID3v2.4 frames
119
+  - Convert between ID3v1.1, ID3v2.3 and ID3v2.4 tags
120
+  - Edit tags in MP3, Ogg/Vorbis, FLAC, MPC, APE, MP4/AAC, MP2, Speex,
121
+    TrueAudio, WavPack, WMA, WAV, AIFF files and tracker modules (MOD,
122
+    S3M, IT, XM).
123
+  - Edit tags of multiple files, e.g. the artist, album, year and genre
124
+    of all files of an album typically have the same values and can be
125
+    set together.
126
+  - Generate tags from filenames
127
+  - Generate tags from the contents of tag fields
128
+  - Generate filenames from tags
129
+  - Generate playlist files
130
+  - Automatic case conversion and string translation
131
+  - Import and export album data
132
+  - Import from gnudb.org, TrackType.org, MusicBrainz, Discogs, Amazon
133
+
134
+This package does not use KDE libraries, if you use KDE you should use kid3.
135
+For a commandline interface you can use kid3-cli.
136
+
137
+%package cli
138
+Summary:        Efficient ID3 Tag Editor
139
+Group:          Productivity/Multimedia/Sound/Utilities
140
+Requires:       %{name}-core = %{version}
141
+
142
+%description cli
143
+With Kid3 you can:
144
+  - Edit ID3v1.1 tags
145
+  - Edit all ID3v2.3 and ID3v2.4 frames
146
+  - Convert between ID3v1.1, ID3v2.3 and ID3v2.4 tags
147
+  - Edit tags in MP3, Ogg/Vorbis, FLAC, MPC, APE, MP4/AAC, MP2, Speex,
148
+    TrueAudio, WavPack, WMA, WAV, AIFF files and tracker modules (MOD,
149
+    S3M, IT, XM).
150
+  - Edit tags of multiple files, e.g. the artist, album, year and genre
151
+    of all files of an album typically have the same values and can be
152
+    set together.
153
+  - Generate tags from filenames
154
+  - Generate tags from the contents of tag fields
155
+  - Generate filenames from tags
156
+  - Generate playlist files
157
+  - Automatic case conversion and string translation
158
+  - Import and export album data
159
+  - Import from gnudb.org, TrackType.org, MusicBrainz, Discogs, Amazon
160
+
161
+This package contains a command line interface for Kid3, for a GUI you can
162
+use kid3-qt or kid3.
163
+
164
+%package doc
165
+Summary:        Documentation for %{name}
166
+Group:          Productivity/Multimedia/Sound/Utilities
167
+Requires:       %{name} = %{version}
168
+
169
+%description doc
170
+This package provides documentation and help files for %{name}.
171
+
172
+%package qt-doc
173
+Summary:        Documentation for %{name}-qt
174
+Group:          Productivity/Multimedia/Sound/Utilities
175
+Requires:       %{name}-qt = %{version}
176
+
177
+%description qt-doc
178
+This package provides documentation and help files for %{name}-qt.
179
+
180
+%package  core
181
+Summary:        Efficient ID3 Tag Editor: Libraries and Data
182
+Group:          Productivity/Multimedia/Sound/Utilities
183
+Recommends:     kid3-trans-lang = %{version}
184
+
185
+%description  core
186
+This package contains common libraries and data files used by kid3, kid3-qt, and kid3-cli.
187
+
188
+%lang_package -n %{name}-core
189
+
190
+%prep
191
+%autosetup -p1
192
+
193
+%build
194
+export LC_ALL=en_US.UTF-8
195
+options+="-DWITH_LIBDIR=%{_lib}/kid3 -DWITH_PLUGINSDIR=%{_lib}/kid3/plugins "
196
+options+="-DWITH_CHROMAPRINT_FFMPEG=ON -DWITH_FFMPEG=ON -DWITH_GSTREAMER=ON "
197
+options+="-DWITH_DOCDIR=share/doc/packages/kid3-qt "
198
+options+="-DCMAKE_SKIP_RPATH=ON -DWITH_QMLDIR=%{_lib}/qt%{qt_version}/qml/kid3 "
199
+%if %{qt_version} == 6
200
+%{cmake_kf6} -DBUILD_WITH_QT6=ON $options
201