SHA256
1
0
forked from pool/Jamulus
Jamulus/Jamulus.spec

164 lines
5.7 KiB
RPMSpec
Raw Normal View History

#
# spec file for package Jamulus
#
# Copyright (c) 2021 SUSE LLC
# Copyright (c) 2014 Pascal Bleser <pascal.bleser@opensuse.org>
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%if ! %{defined _fillupdir}
%define _fillupdir %{_localstatedir}/adm/fillup-templates
%endif
Accepting request 880755 from home:ecsos - Update to 3.7.0 * Server lists have been reorganized to make room for more servers (#875): - Default has been renamed to Any Genre 1. - Any Genre has been renamed to Any Genre 2. - Any Genre 3 has been added. - Choral/Barbershop has been added. - Classical/Folk/Choral has been renamed to Classical/Folk. * Central server addresses have been moved to the jamulus.io domain (#919). The fischvolk.de addresses are deprecated. * GUI: If a name is provided using --clientname, that name is shown first in the window title, to avoid clipping in the Windows task bar (#789). * GUI: Translations have been updated: - Dutch, by @jerogee (#1110) - French, by @trebmuh & @jujudusud (#1199 & #1113) - German, by @rolamos (#1097) - Italian, by @dzpex (#1112) - Polish, by @SeeLook (#1099) - Portugese, by @melcon & @Snayler (#1141 & #1168) - Slovak, by @jose1711 (#1104) - Spanish, by @ignotus666 (#1152) - Swedish, by @genesisproject2020 (#1182 & #1106) * Active recording state is now highlighted in the mixerboard title (#968). * Client window makes it more obvious when not connected to a server by graying out input levels and showing a message (#847, #983). * Screensaver and screen blanking are now prevented on Macs (#834). * Windows installer has been improved (#792, #841). Note: If you are using ASIO4ALL, we strongly suggest that you take a screenshot of your ASIO4ALL settings before upgrading. The installer will try its best to migrate your settings, but it may fail to do so when using custom installation paths. * Windows installer interface now supports English, Dutch, French, German, Italian, Polish, Portuguese, Spanish and Swedish. * Windows ASIO Setup button placement has been improved to be below the driver selection (#977). * Chat dialog has gained support for auto-linking http addresses (#879). * Chat messages no longer allow HTML-formatted chat messages due to security reasons (#939). HTML formatting in Welcome messages will continue to work. * Mixerboard background image quality in the Fancy skin has been improved (#970). * MIDI controller logic has been improved to support fader, pan, mute and solo buttons in --ctrlmidich syntax (#945). Mute & solo buttons are only for toggle-type controllers and do not support headless operation yet. * Servers connected to central servers behind the same NAT can now be made accessible to public clients via the newly added --serverpublicip option (#954). * External IP detection no longer generates traffic to Cloudflare (#633, #1092). * Version update detection has been improved (#1155): - The check now uses two servers instead of one (updatecheck1.jamulus.io and updatecheck2.jamulus.io). - The server version is now ignored if it is not a release, due to a suffix such as dev, beta or rc. * Official Ubuntu/Debian packages are now built and published as part of the release (#1100). The packages are compatible with Ubuntu 18.04 or later. * Experimental .apk installation packages for Android are now provided (#880). * Bug fix: A suspected memory leak has been solved by removing usage of ConsoleWriterFactory (#926). * Bug fix: Changing ASIO driver properties like switching input/outputs in ASIO4ALL now resets input/output channel mapping in Jamulus again (#796). This was done to solve a bug with ASIO4ALL introduced in the last version. * Bug fix: Fader levels, mute and solo state are now restored properly when reconnecting to a restarted server (#955, #1010). This is a server-side fix. * Bug fix: Multiple memory leaks in the server's recording feature have been fixed (#1073). * Bug fix: Menu accelerator keys have been fixed in multiple translations (#1165). * Bug fix: Windows sound driver lacked driverInfo initialisation (#1194). * Internal build and release process have been re-designed, automated and moved to Github. * Internal development builds now contain a detailed version number (#475). - Change to new projekt- and source-url. - %pre needs to pull in "nogroup", too. - Do not ignore errors from useradd. - Reduce scriptlet boilerplate generated by %service_*. - Cease removing users at package deinstallation. - Add services for headless public and private server. - Add services for newRecording and ToggleRecording. - Add sysconfig for service files. - Add firewalld for private server. - Add user jamulus for server services. - Update to version 3.6.2 * change Clear All Stored Solo Settings to clear Mute as well (#731) * avoid selecting IPv6 results from hostname lookup, coded by jarmar (#722) * added possibility to set MIDI offset for fader control to --ctrlmidich (#95) * detect if no audio Device is selected before trying to connect a server (#129) * on MacOS if an audio device is no longer available, show a warning rather than switching to default automatically (#727) * bug fix: sliders move by themselves if fader groups are used on reconnect (#611) * bug fix: do not reset sound card channel selection on a device property change (#727) * bug fix: compiling Jamulus 3.6.1 is failing on Debian 9 Linode (#736) * bug fix: on MacOS Jamulus does not always select the previous sound card (#680) * bug fix: use new server icon on Mac server bundle and Windows installer (#737) * bug fix: ping times of servers which are further down the server list are too high (#49) - Update to version 3.6.1 * added menu entry "Set All Faders to New Client Level" (#622) * isolate a channel from the group temporarily with shift-click-drag (#695) * on shift-click the pan reset to 0 L/R (#707) * support multiple custom central server addresses (#698) * the Jamulus server now has a different icon, created by geheimerEichkater (#700) * support two rows for the mixer panel (#720) * changed RYG indicator lights with colour-blind compensation, created by geheimerEichkater (#57) * saving and loading mixer settings is now possible during an active connection and a mixer settings file can be loaded with drag'n'drop (#706) * menu entry Clear All Stored Solo Settings is now enabled during an active connection * bug fix: the fader group property was not correctly loaded from the ini file - Update to version 3.6.0 * handle audio packets received out of order * most recently connected users appear on the RH side on the fader panel * improvements for the server multithreading * removed Display Channel Levels setting and --servername * removed support for further server infos in --serverinfo since the preferred way of registering a server is to do it using the protocol messages * removed -g, --pingservers since all Central servers must activate this function, now it is activated by default and no command line argument is needed * added --mutemyown command line argument to mute my own signal in my personal mix, only supported in headless client mode * added "Mountain Dulcimer" instrument icon * added new instrument icons for "Scratching" and "Rapping" * replaced double types by floats for some of the signal processing * support permanent channl fader sorting (i.e., not only on request but always) * support sorting faders by channel city * if sorting the faders by instrument, we now sort by the name for the same instruments * bug fix: reduced server list is displayed instead of the normal list - Update to version 3.5.12 * added hyperlink support for the chat window * added new menu entry "Clear All Stored Solo Settings" * fade in all clients at the server when entering a server to avoid the volume is at 100% when joining a server * added a qmake CONFIG flag for disabling the automatic version check * avoid confusion with the Server Address field on the connection setup window by no longer showing the server name in that field since it is only intended for entering IP addresses or valid server URLs * removed the "Show Creative Commons BY-NC-SA 4.0 Licence Dialog" setting from the server GUI and changed the -L/--licence text in the licence dialog to "Do you agree to the text in the chat window?" so that a licence text must now be given in the server welcome message * added a protocol message for a reduced server list to improve the situation caused by UDP packet fragmentation * added translation: Slovak * bug fix: crash when using the jam recorder in the server - Dropped Jamulus-disable_version_check.patch (merged upstream) - Update to version 3.5.11 * support a check for updates * added an optional server list whitelist filter * added a command line argument to enable multithreading in the server * added support for split protocol messages (fixes bug with large number of clients connected to a server) * store recorder settings * added a command line argument to disable recording on start up * accessibility improvements * added Jack audio audio latency calculation * show the server name in the title bar * bug fix: crash when using the Jack backend and quickly reconfiguring, coded by hselasky * bug fix: Alt+h shortcut to open the Chat dialog did not work, use Alt+c instead * bug fix: pan is not correctly initialized in the server on a new connection - Add Jamulus-disable_version_check.patch - Update to version 3.5.10 * do not change the server list order if the mouse is over the table to avoid selecting an incorrect server on a mouse double click * if network name/address contains spaces, they are removed now, coded by dingodoppelt * improve compact skin by using smaller font size * improve server audio mix processing for better clipping behavior * support MIDI control faders in headless build (#483) * option to set Mute Myself on with a command line argument * added a red message to indicate that Mute Myself is activated * manual clip LED reset by mouse click on the level meter * replacing internal history graph functionality by external scripts/tools * accessibility improvements, coded by chigkim * bug fix: added more mutex in the server * bug fix: --showallservers ping column sort is alphabetic - Drop _service file - Spec cleanup - Update to version 3.5.9 * new app icon for Jamulus, created by geheimerEichkater * support up to four different groups for the channels * support sorting faders by channel group * add support to change the GUI language * add special server list filter for filtering occupied servers by using "#" * update server UI to allow setting the jam recorder directory (like -R) * redesign of the server dialog (e.g. added welcome message setting) * save and restore mixer state (like fader, mute, etc.) note that saving/loading of settings only works if not connected * scale channel instrument picture in Compact skin mode * show maximum number of clients for servers in the serverlist, coded by dingodoppelt * log the number of connected clients on each new connection * move the Mute Myself button up to prevent accidentally disconnecting * bug fix: grouping faders in the client should be proportional version 3.5.8: * bug fix: incorrect selection of UI language version 3.5.7: * add new "compact" skin, intended for large ensembles * support sorting faders by channel instrument, coded by Alberstein8 * new group switch to change several faders in sync, coded by Alberstein8 * support a clip LED, coded by fleutot * add server recording indicator, coded by pljones * support for storing/recovering the server window positions * add a headless build type which does not depend on QtGui/QtWidgets, coded by marcan * the local pan middle position is no longer attenuated in Mono-in/Stereo-out mode * added translation: Brazilian Portuguese by melcon * add send button to chat window * add some protections to the code, coded by atsampson * bug fix: server window stop updating after minimized, coded by AronVietti version 3.5.6: * support sorting faders by channel name * enable/disable recording from command line, coded by pljones * add Audacity "list of files" writer to jam recorder, by pljones * make level meter LED black when off, by fleutot * added ukulele/bass ukulele instrument icons created by dos1 * avoid showing IP address if no name in the musician profile is given * show channel numbers if --ctrlmidich is used * added check in acknowledge message, coded by atsampson * bug fix: on MacOS declare an activity to ensure the process doesn't get throttled by OS level Nap, Sleep, and Thread Priority systems, coded by AronVietti version 3.5.5: * added banjo/mandolin instrument icons created by atsampson * faster update of musicians list in the server list table * display recorder state and latest recording directory in the server GUI, allow a new recording to be requested, by pljones * New Client Level now also applies if you enter a server * bug fix: honour own fader and Mute button in Mute Myself * bug fix: audio fader sliders cannot be moved if the main windows is too small * bug fix: server gain calculations were incorrect (introduced in version 3.5.4) version 3.5.4: * introduce genre-based server lists * implement panning for channels, coded by tarmoj * added an indicator that another client has muted me * move central server type dropdown to connection setup * added vocal bass/tenor/alto/soprano instrument icons created by Alberstein8 * support intermediate Reaper RPP file while recording, coded by pljones * save client settings on Linux cmdline termination signal, coded by pljones * added translation: Italian by dzpex * bug fix: fixed misaligned tracks in recordings, coded by snayler, improved by pljones version 3.5.3: * correct unregister of headless server and RPP file creation on SIGINT/SIGTERM, coded by pljones * for CoreAudio and 4 channel input, support mixing channels 1&2 with 3&4 * added bassoon/oboe/harp instrument icons created by dszgit, congas/bongo created by bspeer * link to docs from application Help menu * support Mac CoreAudio aggregated devices * added translations: French by trebmuh, Portuguese by Snayler, Spanish by ignotus666, Dutch by jerogee, German by corrados * new design for the About dialog * new command line option -d to disconnect all clients on shutdown of the server * bug fix: for mono capture jack audio interface Jamulus complains it cannot make connections * bug fix: fixed that Jamulus segfaults when jackd is restarted * bug fix: better handling of disconnect message in the client * note: Jamulus is no longer compatible to Qt4 - Update to version 3.5.2: * use audio level meter bars for normal skin * store Show All Musicians setting in the ini-file * improved Mac installer, coded by doloopuntil * support to open ASIO driver setup(s) if startup failed due to incorrect driver settings (Ticket #117) * added -v/--version command line argument to output version information (Ticket #121) * added bodhran and other instrument icons, bodhran created by bomm (Ticket #131) * bug fix: if small network buffers are used we get much better audio quality when drop outs occur * bug fix: if names given with the -o option were too long, the server registration failed (Ticket #91) * bug fix: audio level changes if Buffer Delay is changed (Ticket #106) * bug fix: do not reset fader level meters if number of clients change * bug fix: fixed a crash with JackRouter 64 bit ASIO driver (Ticket #93, thanks to elliotclee) - Add a source service. - Rename source tarball - Update to version 3.4.5 The upstream maintainer announced that he will no longer publish source tarballs to SF.net, so fetched the tarball from github directly. Changes included: * audio fade-in at the server if a new client connects * added a scroll bar to the mixer board to support large numbers of mixer faders (a thank you to doloopuntil for his help) * changed the maximum number of clients supported by the server from 20 to 50 * Windows installer now contains a 32 and 64 bit version of Jamulus (the version to be installed is selected automatically according to the detected operating system) * bug fix: server list ping times may not be accurate and client list may not be retrieved - Rename source icon to Jamulus_icon.png to avoid troubles with suse_update_desktop_file.sh - Create desktop file via script since upstream no longer supplies it - Address rpmlint complaints - Update to version 3.4.4 * added support for controlling the audio mixer faders with a MIDI controller (MacOS and Linux) * added command line argument for disabling auto jack connection (Ticket #49) * audio recording for the server, coded by pljones * SVG server history graph, coded by pljones - Remove obsolete Groups tag (fate#326485) - Update to version 3.4.3 * for ASIO and 4 channel input, support mixing channels 1&2 with 3&4 - obsolete jamulus to allow pkg migration from packman to OBS - Update to version 3.4.2 * removed old CELT library (minimum compatible version is now 3.3.1) * show server name in the server list in bold font if it is a permanent server version 3.4.1 * avoid a single jitter buffer for the auto detection * the Musicians value in the server list shows a warning if the server is full * automatic server setting for permanent server flag in the protocol * bug fix: ping time measurement may be invalid for the Linux OS version 3.4.0 * show the names of the connected clients in the server list version 3.3.11 * added a new client fader level setting version 3.3.10 * changed the default central server URL * added support for server disconnection version 3.3.9 * another improvement of auto jitter buffer detection in very bad network conditions * support client operation without using a GUI front end version 3.3.8 * improved audio quality in bad network conditions * more realistic overall delay estimation * improvement of auto jitter buffer detection in bad network conditions * show info about sound card buffer size if not one of the standard sizes version 3.3.7 * added a musician profile dialog (some settings in the main window were removed) * a tool tip for the fader tag shows the complete musician profile * the city and skill level can be set in the musician profile * added new instrument picture for "Guitar+Vocal" version 3.3.6 * support for a country flag icon on the fader tag * a licence agreement dialog can be requested by the server version 3.3.5 * new compile config options for disabling old CELT, use OPUS in a shared library and change the executable name * added a Linux jamulus.desktop file version 3.3.4 * true stereo reverberation effect (previously it was a mono reverberation effect on both stereo channels) * added a mono-in/stereo-out mode to support special sound cards which have mono inputs for the instrument and a microphone but have stereo outputs * store fader solo state in the ini file * improved stability of the audio stream by reducing audio drop outs (by using a separate socket thread) * removed unnecessary settings and LED indicators * bug fix: the fader level could not be changed if the fader was on solo - Switched to Qt5 build - Use system libopus - Added Jamulus.png as source (icon of adequate size) - initial version (3.3.3) OBS-URL: https://build.opensuse.org/request/show/880755 OBS-URL: https://build.opensuse.org/package/show/multimedia:apps/Jamulus?expand=0&rev=38
2021-03-28 16:46:42 +02:00
%define tarball_version 3_7_0
Name: Jamulus
Accepting request 880755 from home:ecsos - Update to 3.7.0 * Server lists have been reorganized to make room for more servers (#875): - Default has been renamed to Any Genre 1. - Any Genre has been renamed to Any Genre 2. - Any Genre 3 has been added. - Choral/Barbershop has been added. - Classical/Folk/Choral has been renamed to Classical/Folk. * Central server addresses have been moved to the jamulus.io domain (#919). The fischvolk.de addresses are deprecated. * GUI: If a name is provided using --clientname, that name is shown first in the window title, to avoid clipping in the Windows task bar (#789). * GUI: Translations have been updated: - Dutch, by @jerogee (#1110) - French, by @trebmuh & @jujudusud (#1199 & #1113) - German, by @rolamos (#1097) - Italian, by @dzpex (#1112) - Polish, by @SeeLook (#1099) - Portugese, by @melcon & @Snayler (#1141 & #1168) - Slovak, by @jose1711 (#1104) - Spanish, by @ignotus666 (#1152) - Swedish, by @genesisproject2020 (#1182 & #1106) * Active recording state is now highlighted in the mixerboard title (#968). * Client window makes it more obvious when not connected to a server by graying out input levels and showing a message (#847, #983). * Screensaver and screen blanking are now prevented on Macs (#834). * Windows installer has been improved (#792, #841). Note: If you are using ASIO4ALL, we strongly suggest that you take a screenshot of your ASIO4ALL settings before upgrading. The installer will try its best to migrate your settings, but it may fail to do so when using custom installation paths. * Windows installer interface now supports English, Dutch, French, German, Italian, Polish, Portuguese, Spanish and Swedish. * Windows ASIO Setup button placement has been improved to be below the driver selection (#977). * Chat dialog has gained support for auto-linking http addresses (#879). * Chat messages no longer allow HTML-formatted chat messages due to security reasons (#939). HTML formatting in Welcome messages will continue to work. * Mixerboard background image quality in the Fancy skin has been improved (#970). * MIDI controller logic has been improved to support fader, pan, mute and solo buttons in --ctrlmidich syntax (#945). Mute & solo buttons are only for toggle-type controllers and do not support headless operation yet. * Servers connected to central servers behind the same NAT can now be made accessible to public clients via the newly added --serverpublicip option (#954). * External IP detection no longer generates traffic to Cloudflare (#633, #1092). * Version update detection has been improved (#1155): - The check now uses two servers instead of one (updatecheck1.jamulus.io and updatecheck2.jamulus.io). - The server version is now ignored if it is not a release, due to a suffix such as dev, beta or rc. * Official Ubuntu/Debian packages are now built and published as part of the release (#1100). The packages are compatible with Ubuntu 18.04 or later. * Experimental .apk installation packages for Android are now provided (#880). * Bug fix: A suspected memory leak has been solved by removing usage of ConsoleWriterFactory (#926). * Bug fix: Changing ASIO driver properties like switching input/outputs in ASIO4ALL now resets input/output channel mapping in Jamulus again (#796). This was done to solve a bug with ASIO4ALL introduced in the last version. * Bug fix: Fader levels, mute and solo state are now restored properly when reconnecting to a restarted server (#955, #1010). This is a server-side fix. * Bug fix: Multiple memory leaks in the server's recording feature have been fixed (#1073). * Bug fix: Menu accelerator keys have been fixed in multiple translations (#1165). * Bug fix: Windows sound driver lacked driverInfo initialisation (#1194). * Internal build and release process have been re-designed, automated and moved to Github. * Internal development builds now contain a detailed version number (#475). - Change to new projekt- and source-url. - %pre needs to pull in "nogroup", too. - Do not ignore errors from useradd. - Reduce scriptlet boilerplate generated by %service_*. - Cease removing users at package deinstallation. - Add services for headless public and private server. - Add services for newRecording and ToggleRecording. - Add sysconfig for service files. - Add firewalld for private server. - Add user jamulus for server services. - Update to version 3.6.2 * change Clear All Stored Solo Settings to clear Mute as well (#731) * avoid selecting IPv6 results from hostname lookup, coded by jarmar (#722) * added possibility to set MIDI offset for fader control to --ctrlmidich (#95) * detect if no audio Device is selected before trying to connect a server (#129) * on MacOS if an audio device is no longer available, show a warning rather than switching to default automatically (#727) * bug fix: sliders move by themselves if fader groups are used on reconnect (#611) * bug fix: do not reset sound card channel selection on a device property change (#727) * bug fix: compiling Jamulus 3.6.1 is failing on Debian 9 Linode (#736) * bug fix: on MacOS Jamulus does not always select the previous sound card (#680) * bug fix: use new server icon on Mac server bundle and Windows installer (#737) * bug fix: ping times of servers which are further down the server list are too high (#49) - Update to version 3.6.1 * added menu entry "Set All Faders to New Client Level" (#622) * isolate a channel from the group temporarily with shift-click-drag (#695) * on shift-click the pan reset to 0 L/R (#707) * support multiple custom central server addresses (#698) * the Jamulus server now has a different icon, created by geheimerEichkater (#700) * support two rows for the mixer panel (#720) * changed RYG indicator lights with colour-blind compensation, created by geheimerEichkater (#57) * saving and loading mixer settings is now possible during an active connection and a mixer settings file can be loaded with drag'n'drop (#706) * menu entry Clear All Stored Solo Settings is now enabled during an active connection * bug fix: the fader group property was not correctly loaded from the ini file - Update to version 3.6.0 * handle audio packets received out of order * most recently connected users appear on the RH side on the fader panel * improvements for the server multithreading * removed Display Channel Levels setting and --servername * removed support for further server infos in --serverinfo since the preferred way of registering a server is to do it using the protocol messages * removed -g, --pingservers since all Central servers must activate this function, now it is activated by default and no command line argument is needed * added --mutemyown command line argument to mute my own signal in my personal mix, only supported in headless client mode * added "Mountain Dulcimer" instrument icon * added new instrument icons for "Scratching" and "Rapping" * replaced double types by floats for some of the signal processing * support permanent channl fader sorting (i.e., not only on request but always) * support sorting faders by channel city * if sorting the faders by instrument, we now sort by the name for the same instruments * bug fix: reduced server list is displayed instead of the normal list - Update to version 3.5.12 * added hyperlink support for the chat window * added new menu entry "Clear All Stored Solo Settings" * fade in all clients at the server when entering a server to avoid the volume is at 100% when joining a server * added a qmake CONFIG flag for disabling the automatic version check * avoid confusion with the Server Address field on the connection setup window by no longer showing the server name in that field since it is only intended for entering IP addresses or valid server URLs * removed the "Show Creative Commons BY-NC-SA 4.0 Licence Dialog" setting from the server GUI and changed the -L/--licence text in the licence dialog to "Do you agree to the text in the chat window?" so that a licence text must now be given in the server welcome message * added a protocol message for a reduced server list to improve the situation caused by UDP packet fragmentation * added translation: Slovak * bug fix: crash when using the jam recorder in the server - Dropped Jamulus-disable_version_check.patch (merged upstream) - Update to version 3.5.11 * support a check for updates * added an optional server list whitelist filter * added a command line argument to enable multithreading in the server * added support for split protocol messages (fixes bug with large number of clients connected to a server) * store recorder settings * added a command line argument to disable recording on start up * accessibility improvements * added Jack audio audio latency calculation * show the server name in the title bar * bug fix: crash when using the Jack backend and quickly reconfiguring, coded by hselasky * bug fix: Alt+h shortcut to open the Chat dialog did not work, use Alt+c instead * bug fix: pan is not correctly initialized in the server on a new connection - Add Jamulus-disable_version_check.patch - Update to version 3.5.10 * do not change the server list order if the mouse is over the table to avoid selecting an incorrect server on a mouse double click * if network name/address contains spaces, they are removed now, coded by dingodoppelt * improve compact skin by using smaller font size * improve server audio mix processing for better clipping behavior * support MIDI control faders in headless build (#483) * option to set Mute Myself on with a command line argument * added a red message to indicate that Mute Myself is activated * manual clip LED reset by mouse click on the level meter * replacing internal history graph functionality by external scripts/tools * accessibility improvements, coded by chigkim * bug fix: added more mutex in the server * bug fix: --showallservers ping column sort is alphabetic - Drop _service file - Spec cleanup - Update to version 3.5.9 * new app icon for Jamulus, created by geheimerEichkater * support up to four different groups for the channels * support sorting faders by channel group * add support to change the GUI language * add special server list filter for filtering occupied servers by using "#" * update server UI to allow setting the jam recorder directory (like -R) * redesign of the server dialog (e.g. added welcome message setting) * save and restore mixer state (like fader, mute, etc.) note that saving/loading of settings only works if not connected * scale channel instrument picture in Compact skin mode * show maximum number of clients for servers in the serverlist, coded by dingodoppelt * log the number of connected clients on each new connection * move the Mute Myself button up to prevent accidentally disconnecting * bug fix: grouping faders in the client should be proportional version 3.5.8: * bug fix: incorrect selection of UI language version 3.5.7: * add new "compact" skin, intended for large ensembles * support sorting faders by channel instrument, coded by Alberstein8 * new group switch to change several faders in sync, coded by Alberstein8 * support a clip LED, coded by fleutot * add server recording indicator, coded by pljones * support for storing/recovering the server window positions * add a headless build type which does not depend on QtGui/QtWidgets, coded by marcan * the local pan middle position is no longer attenuated in Mono-in/Stereo-out mode * added translation: Brazilian Portuguese by melcon * add send button to chat window * add some protections to the code, coded by atsampson * bug fix: server window stop updating after minimized, coded by AronVietti version 3.5.6: * support sorting faders by channel name * enable/disable recording from command line, coded by pljones * add Audacity "list of files" writer to jam recorder, by pljones * make level meter LED black when off, by fleutot * added ukulele/bass ukulele instrument icons created by dos1 * avoid showing IP address if no name in the musician profile is given * show channel numbers if --ctrlmidich is used * added check in acknowledge message, coded by atsampson * bug fix: on MacOS declare an activity to ensure the process doesn't get throttled by OS level Nap, Sleep, and Thread Priority systems, coded by AronVietti version 3.5.5: * added banjo/mandolin instrument icons created by atsampson * faster update of musicians list in the server list table * display recorder state and latest recording directory in the server GUI, allow a new recording to be requested, by pljones * New Client Level now also applies if you enter a server * bug fix: honour own fader and Mute button in Mute Myself * bug fix: audio fader sliders cannot be moved if the main windows is too small * bug fix: server gain calculations were incorrect (introduced in version 3.5.4) version 3.5.4: * introduce genre-based server lists * implement panning for channels, coded by tarmoj * added an indicator that another client has muted me * move central server type dropdown to connection setup * added vocal bass/tenor/alto/soprano instrument icons created by Alberstein8 * support intermediate Reaper RPP file while recording, coded by pljones * save client settings on Linux cmdline termination signal, coded by pljones * added translation: Italian by dzpex * bug fix: fixed misaligned tracks in recordings, coded by snayler, improved by pljones version 3.5.3: * correct unregister of headless server and RPP file creation on SIGINT/SIGTERM, coded by pljones * for CoreAudio and 4 channel input, support mixing channels 1&2 with 3&4 * added bassoon/oboe/harp instrument icons created by dszgit, congas/bongo created by bspeer * link to docs from application Help menu * support Mac CoreAudio aggregated devices * added translations: French by trebmuh, Portuguese by Snayler, Spanish by ignotus666, Dutch by jerogee, German by corrados * new design for the About dialog * new command line option -d to disconnect all clients on shutdown of the server * bug fix: for mono capture jack audio interface Jamulus complains it cannot make connections * bug fix: fixed that Jamulus segfaults when jackd is restarted * bug fix: better handling of disconnect message in the client * note: Jamulus is no longer compatible to Qt4 - Update to version 3.5.2: * use audio level meter bars for normal skin * store Show All Musicians setting in the ini-file * improved Mac installer, coded by doloopuntil * support to open ASIO driver setup(s) if startup failed due to incorrect driver settings (Ticket #117) * added -v/--version command line argument to output version information (Ticket #121) * added bodhran and other instrument icons, bodhran created by bomm (Ticket #131) * bug fix: if small network buffers are used we get much better audio quality when drop outs occur * bug fix: if names given with the -o option were too long, the server registration failed (Ticket #91) * bug fix: audio level changes if Buffer Delay is changed (Ticket #106) * bug fix: do not reset fader level meters if number of clients change * bug fix: fixed a crash with JackRouter 64 bit ASIO driver (Ticket #93, thanks to elliotclee) - Add a source service. - Rename source tarball - Update to version 3.4.5 The upstream maintainer announced that he will no longer publish source tarballs to SF.net, so fetched the tarball from github directly. Changes included: * audio fade-in at the server if a new client connects * added a scroll bar to the mixer board to support large numbers of mixer faders (a thank you to doloopuntil for his help) * changed the maximum number of clients supported by the server from 20 to 50 * Windows installer now contains a 32 and 64 bit version of Jamulus (the version to be installed is selected automatically according to the detected operating system) * bug fix: server list ping times may not be accurate and client list may not be retrieved - Rename source icon to Jamulus_icon.png to avoid troubles with suse_update_desktop_file.sh - Create desktop file via script since upstream no longer supplies it - Address rpmlint complaints - Update to version 3.4.4 * added support for controlling the audio mixer faders with a MIDI controller (MacOS and Linux) * added command line argument for disabling auto jack connection (Ticket #49) * audio recording for the server, coded by pljones * SVG server history graph, coded by pljones - Remove obsolete Groups tag (fate#326485) - Update to version 3.4.3 * for ASIO and 4 channel input, support mixing channels 1&2 with 3&4 - obsolete jamulus to allow pkg migration from packman to OBS - Update to version 3.4.2 * removed old CELT library (minimum compatible version is now 3.3.1) * show server name in the server list in bold font if it is a permanent server version 3.4.1 * avoid a single jitter buffer for the auto detection * the Musicians value in the server list shows a warning if the server is full * automatic server setting for permanent server flag in the protocol * bug fix: ping time measurement may be invalid for the Linux OS version 3.4.0 * show the names of the connected clients in the server list version 3.3.11 * added a new client fader level setting version 3.3.10 * changed the default central server URL * added support for server disconnection version 3.3.9 * another improvement of auto jitter buffer detection in very bad network conditions * support client operation without using a GUI front end version 3.3.8 * improved audio quality in bad network conditions * more realistic overall delay estimation * improvement of auto jitter buffer detection in bad network conditions * show info about sound card buffer size if not one of the standard sizes version 3.3.7 * added a musician profile dialog (some settings in the main window were removed) * a tool tip for the fader tag shows the complete musician profile * the city and skill level can be set in the musician profile * added new instrument picture for "Guitar+Vocal" version 3.3.6 * support for a country flag icon on the fader tag * a licence agreement dialog can be requested by the server version 3.3.5 * new compile config options for disabling old CELT, use OPUS in a shared library and change the executable name * added a Linux jamulus.desktop file version 3.3.4 * true stereo reverberation effect (previously it was a mono reverberation effect on both stereo channels) * added a mono-in/stereo-out mode to support special sound cards which have mono inputs for the instrument and a microphone but have stereo outputs * store fader solo state in the ini file * improved stability of the audio stream by reducing audio drop outs (by using a separate socket thread) * removed unnecessary settings and LED indicators * bug fix: the fader level could not be changed if the fader was on solo - Switched to Qt5 build - Use system libopus - Added Jamulus.png as source (icon of adequate size) - initial version (3.3.3) OBS-URL: https://build.opensuse.org/request/show/880755 OBS-URL: https://build.opensuse.org/package/show/multimedia:apps/Jamulus?expand=0&rev=38
2021-03-28 16:46:42 +02:00
Version: 3.7.0
Release: 0
Summary: Low-latency internet connection tool for real-time jam sessions
License: GPL-2.0-or-later
Accepting request 880755 from home:ecsos - Update to 3.7.0 * Server lists have been reorganized to make room for more servers (#875): - Default has been renamed to Any Genre 1. - Any Genre has been renamed to Any Genre 2. - Any Genre 3 has been added. - Choral/Barbershop has been added. - Classical/Folk/Choral has been renamed to Classical/Folk. * Central server addresses have been moved to the jamulus.io domain (#919). The fischvolk.de addresses are deprecated. * GUI: If a name is provided using --clientname, that name is shown first in the window title, to avoid clipping in the Windows task bar (#789). * GUI: Translations have been updated: - Dutch, by @jerogee (#1110) - French, by @trebmuh & @jujudusud (#1199 & #1113) - German, by @rolamos (#1097) - Italian, by @dzpex (#1112) - Polish, by @SeeLook (#1099) - Portugese, by @melcon & @Snayler (#1141 & #1168) - Slovak, by @jose1711 (#1104) - Spanish, by @ignotus666 (#1152) - Swedish, by @genesisproject2020 (#1182 & #1106) * Active recording state is now highlighted in the mixerboard title (#968). * Client window makes it more obvious when not connected to a server by graying out input levels and showing a message (#847, #983). * Screensaver and screen blanking are now prevented on Macs (#834). * Windows installer has been improved (#792, #841). Note: If you are using ASIO4ALL, we strongly suggest that you take a screenshot of your ASIO4ALL settings before upgrading. The installer will try its best to migrate your settings, but it may fail to do so when using custom installation paths. * Windows installer interface now supports English, Dutch, French, German, Italian, Polish, Portuguese, Spanish and Swedish. * Windows ASIO Setup button placement has been improved to be below the driver selection (#977). * Chat dialog has gained support for auto-linking http addresses (#879). * Chat messages no longer allow HTML-formatted chat messages due to security reasons (#939). HTML formatting in Welcome messages will continue to work. * Mixerboard background image quality in the Fancy skin has been improved (#970). * MIDI controller logic has been improved to support fader, pan, mute and solo buttons in --ctrlmidich syntax (#945). Mute & solo buttons are only for toggle-type controllers and do not support headless operation yet. * Servers connected to central servers behind the same NAT can now be made accessible to public clients via the newly added --serverpublicip option (#954). * External IP detection no longer generates traffic to Cloudflare (#633, #1092). * Version update detection has been improved (#1155): - The check now uses two servers instead of one (updatecheck1.jamulus.io and updatecheck2.jamulus.io). - The server version is now ignored if it is not a release, due to a suffix such as dev, beta or rc. * Official Ubuntu/Debian packages are now built and published as part of the release (#1100). The packages are compatible with Ubuntu 18.04 or later. * Experimental .apk installation packages for Android are now provided (#880). * Bug fix: A suspected memory leak has been solved by removing usage of ConsoleWriterFactory (#926). * Bug fix: Changing ASIO driver properties like switching input/outputs in ASIO4ALL now resets input/output channel mapping in Jamulus again (#796). This was done to solve a bug with ASIO4ALL introduced in the last version. * Bug fix: Fader levels, mute and solo state are now restored properly when reconnecting to a restarted server (#955, #1010). This is a server-side fix. * Bug fix: Multiple memory leaks in the server's recording feature have been fixed (#1073). * Bug fix: Menu accelerator keys have been fixed in multiple translations (#1165). * Bug fix: Windows sound driver lacked driverInfo initialisation (#1194). * Internal build and release process have been re-designed, automated and moved to Github. * Internal development builds now contain a detailed version number (#475). - Change to new projekt- and source-url. - %pre needs to pull in "nogroup", too. - Do not ignore errors from useradd. - Reduce scriptlet boilerplate generated by %service_*. - Cease removing users at package deinstallation. - Add services for headless public and private server. - Add services for newRecording and ToggleRecording. - Add sysconfig for service files. - Add firewalld for private server. - Add user jamulus for server services. - Update to version 3.6.2 * change Clear All Stored Solo Settings to clear Mute as well (#731) * avoid selecting IPv6 results from hostname lookup, coded by jarmar (#722) * added possibility to set MIDI offset for fader control to --ctrlmidich (#95) * detect if no audio Device is selected before trying to connect a server (#129) * on MacOS if an audio device is no longer available, show a warning rather than switching to default automatically (#727) * bug fix: sliders move by themselves if fader groups are used on reconnect (#611) * bug fix: do not reset sound card channel selection on a device property change (#727) * bug fix: compiling Jamulus 3.6.1 is failing on Debian 9 Linode (#736) * bug fix: on MacOS Jamulus does not always select the previous sound card (#680) * bug fix: use new server icon on Mac server bundle and Windows installer (#737) * bug fix: ping times of servers which are further down the server list are too high (#49) - Update to version 3.6.1 * added menu entry "Set All Faders to New Client Level" (#622) * isolate a channel from the group temporarily with shift-click-drag (#695) * on shift-click the pan reset to 0 L/R (#707) * support multiple custom central server addresses (#698) * the Jamulus server now has a different icon, created by geheimerEichkater (#700) * support two rows for the mixer panel (#720) * changed RYG indicator lights with colour-blind compensation, created by geheimerEichkater (#57) * saving and loading mixer settings is now possible during an active connection and a mixer settings file can be loaded with drag'n'drop (#706) * menu entry Clear All Stored Solo Settings is now enabled during an active connection * bug fix: the fader group property was not correctly loaded from the ini file - Update to version 3.6.0 * handle audio packets received out of order * most recently connected users appear on the RH side on the fader panel * improvements for the server multithreading * removed Display Channel Levels setting and --servername * removed support for further server infos in --serverinfo since the preferred way of registering a server is to do it using the protocol messages * removed -g, --pingservers since all Central servers must activate this function, now it is activated by default and no command line argument is needed * added --mutemyown command line argument to mute my own signal in my personal mix, only supported in headless client mode * added "Mountain Dulcimer" instrument icon * added new instrument icons for "Scratching" and "Rapping" * replaced double types by floats for some of the signal processing * support permanent channl fader sorting (i.e., not only on request but always) * support sorting faders by channel city * if sorting the faders by instrument, we now sort by the name for the same instruments * bug fix: reduced server list is displayed instead of the normal list - Update to version 3.5.12 * added hyperlink support for the chat window * added new menu entry "Clear All Stored Solo Settings" * fade in all clients at the server when entering a server to avoid the volume is at 100% when joining a server * added a qmake CONFIG flag for disabling the automatic version check * avoid confusion with the Server Address field on the connection setup window by no longer showing the server name in that field since it is only intended for entering IP addresses or valid server URLs * removed the "Show Creative Commons BY-NC-SA 4.0 Licence Dialog" setting from the server GUI and changed the -L/--licence text in the licence dialog to "Do you agree to the text in the chat window?" so that a licence text must now be given in the server welcome message * added a protocol message for a reduced server list to improve the situation caused by UDP packet fragmentation * added translation: Slovak * bug fix: crash when using the jam recorder in the server - Dropped Jamulus-disable_version_check.patch (merged upstream) - Update to version 3.5.11 * support a check for updates * added an optional server list whitelist filter * added a command line argument to enable multithreading in the server * added support for split protocol messages (fixes bug with large number of clients connected to a server) * store recorder settings * added a command line argument to disable recording on start up * accessibility improvements * added Jack audio audio latency calculation * show the server name in the title bar * bug fix: crash when using the Jack backend and quickly reconfiguring, coded by hselasky * bug fix: Alt+h shortcut to open the Chat dialog did not work, use Alt+c instead * bug fix: pan is not correctly initialized in the server on a new connection - Add Jamulus-disable_version_check.patch - Update to version 3.5.10 * do not change the server list order if the mouse is over the table to avoid selecting an incorrect server on a mouse double click * if network name/address contains spaces, they are removed now, coded by dingodoppelt * improve compact skin by using smaller font size * improve server audio mix processing for better clipping behavior * support MIDI control faders in headless build (#483) * option to set Mute Myself on with a command line argument * added a red message to indicate that Mute Myself is activated * manual clip LED reset by mouse click on the level meter * replacing internal history graph functionality by external scripts/tools * accessibility improvements, coded by chigkim * bug fix: added more mutex in the server * bug fix: --showallservers ping column sort is alphabetic - Drop _service file - Spec cleanup - Update to version 3.5.9 * new app icon for Jamulus, created by geheimerEichkater * support up to four different groups for the channels * support sorting faders by channel group * add support to change the GUI language * add special server list filter for filtering occupied servers by using "#" * update server UI to allow setting the jam recorder directory (like -R) * redesign of the server dialog (e.g. added welcome message setting) * save and restore mixer state (like fader, mute, etc.) note that saving/loading of settings only works if not connected * scale channel instrument picture in Compact skin mode * show maximum number of clients for servers in the serverlist, coded by dingodoppelt * log the number of connected clients on each new connection * move the Mute Myself button up to prevent accidentally disconnecting * bug fix: grouping faders in the client should be proportional version 3.5.8: * bug fix: incorrect selection of UI language version 3.5.7: * add new "compact" skin, intended for large ensembles * support sorting faders by channel instrument, coded by Alberstein8 * new group switch to change several faders in sync, coded by Alberstein8 * support a clip LED, coded by fleutot * add server recording indicator, coded by pljones * support for storing/recovering the server window positions * add a headless build type which does not depend on QtGui/QtWidgets, coded by marcan * the local pan middle position is no longer attenuated in Mono-in/Stereo-out mode * added translation: Brazilian Portuguese by melcon * add send button to chat window * add some protections to the code, coded by atsampson * bug fix: server window stop updating after minimized, coded by AronVietti version 3.5.6: * support sorting faders by channel name * enable/disable recording from command line, coded by pljones * add Audacity "list of files" writer to jam recorder, by pljones * make level meter LED black when off, by fleutot * added ukulele/bass ukulele instrument icons created by dos1 * avoid showing IP address if no name in the musician profile is given * show channel numbers if --ctrlmidich is used * added check in acknowledge message, coded by atsampson * bug fix: on MacOS declare an activity to ensure the process doesn't get throttled by OS level Nap, Sleep, and Thread Priority systems, coded by AronVietti version 3.5.5: * added banjo/mandolin instrument icons created by atsampson * faster update of musicians list in the server list table * display recorder state and latest recording directory in the server GUI, allow a new recording to be requested, by pljones * New Client Level now also applies if you enter a server * bug fix: honour own fader and Mute button in Mute Myself * bug fix: audio fader sliders cannot be moved if the main windows is too small * bug fix: server gain calculations were incorrect (introduced in version 3.5.4) version 3.5.4: * introduce genre-based server lists * implement panning for channels, coded by tarmoj * added an indicator that another client has muted me * move central server type dropdown to connection setup * added vocal bass/tenor/alto/soprano instrument icons created by Alberstein8 * support intermediate Reaper RPP file while recording, coded by pljones * save client settings on Linux cmdline termination signal, coded by pljones * added translation: Italian by dzpex * bug fix: fixed misaligned tracks in recordings, coded by snayler, improved by pljones version 3.5.3: * correct unregister of headless server and RPP file creation on SIGINT/SIGTERM, coded by pljones * for CoreAudio and 4 channel input, support mixing channels 1&2 with 3&4 * added bassoon/oboe/harp instrument icons created by dszgit, congas/bongo created by bspeer * link to docs from application Help menu * support Mac CoreAudio aggregated devices * added translations: French by trebmuh, Portuguese by Snayler, Spanish by ignotus666, Dutch by jerogee, German by corrados * new design for the About dialog * new command line option -d to disconnect all clients on shutdown of the server * bug fix: for mono capture jack audio interface Jamulus complains it cannot make connections * bug fix: fixed that Jamulus segfaults when jackd is restarted * bug fix: better handling of disconnect message in the client * note: Jamulus is no longer compatible to Qt4 - Update to version 3.5.2: * use audio level meter bars for normal skin * store Show All Musicians setting in the ini-file * improved Mac installer, coded by doloopuntil * support to open ASIO driver setup(s) if startup failed due to incorrect driver settings (Ticket #117) * added -v/--version command line argument to output version information (Ticket #121) * added bodhran and other instrument icons, bodhran created by bomm (Ticket #131) * bug fix: if small network buffers are used we get much better audio quality when drop outs occur * bug fix: if names given with the -o option were too long, the server registration failed (Ticket #91) * bug fix: audio level changes if Buffer Delay is changed (Ticket #106) * bug fix: do not reset fader level meters if number of clients change * bug fix: fixed a crash with JackRouter 64 bit ASIO driver (Ticket #93, thanks to elliotclee) - Add a source service. - Rename source tarball - Update to version 3.4.5 The upstream maintainer announced that he will no longer publish source tarballs to SF.net, so fetched the tarball from github directly. Changes included: * audio fade-in at the server if a new client connects * added a scroll bar to the mixer board to support large numbers of mixer faders (a thank you to doloopuntil for his help) * changed the maximum number of clients supported by the server from 20 to 50 * Windows installer now contains a 32 and 64 bit version of Jamulus (the version to be installed is selected automatically according to the detected operating system) * bug fix: server list ping times may not be accurate and client list may not be retrieved - Rename source icon to Jamulus_icon.png to avoid troubles with suse_update_desktop_file.sh - Create desktop file via script since upstream no longer supplies it - Address rpmlint complaints - Update to version 3.4.4 * added support for controlling the audio mixer faders with a MIDI controller (MacOS and Linux) * added command line argument for disabling auto jack connection (Ticket #49) * audio recording for the server, coded by pljones * SVG server history graph, coded by pljones - Remove obsolete Groups tag (fate#326485) - Update to version 3.4.3 * for ASIO and 4 channel input, support mixing channels 1&2 with 3&4 - obsolete jamulus to allow pkg migration from packman to OBS - Update to version 3.4.2 * removed old CELT library (minimum compatible version is now 3.3.1) * show server name in the server list in bold font if it is a permanent server version 3.4.1 * avoid a single jitter buffer for the auto detection * the Musicians value in the server list shows a warning if the server is full * automatic server setting for permanent server flag in the protocol * bug fix: ping time measurement may be invalid for the Linux OS version 3.4.0 * show the names of the connected clients in the server list version 3.3.11 * added a new client fader level setting version 3.3.10 * changed the default central server URL * added support for server disconnection version 3.3.9 * another improvement of auto jitter buffer detection in very bad network conditions * support client operation without using a GUI front end version 3.3.8 * improved audio quality in bad network conditions * more realistic overall delay estimation * improvement of auto jitter buffer detection in bad network conditions * show info about sound card buffer size if not one of the standard sizes version 3.3.7 * added a musician profile dialog (some settings in the main window were removed) * a tool tip for the fader tag shows the complete musician profile * the city and skill level can be set in the musician profile * added new instrument picture for "Guitar+Vocal" version 3.3.6 * support for a country flag icon on the fader tag * a licence agreement dialog can be requested by the server version 3.3.5 * new compile config options for disabling old CELT, use OPUS in a shared library and change the executable name * added a Linux jamulus.desktop file version 3.3.4 * true stereo reverberation effect (previously it was a mono reverberation effect on both stereo channels) * added a mono-in/stereo-out mode to support special sound cards which have mono inputs for the instrument and a microphone but have stereo outputs * store fader solo state in the ini file * improved stability of the audio stream by reducing audio drop outs (by using a separate socket thread) * removed unnecessary settings and LED indicators * bug fix: the fader level could not be changed if the fader was on solo - Switched to Qt5 build - Use system libopus - Added Jamulus.png as source (icon of adequate size) - initial version (3.3.3) OBS-URL: https://build.opensuse.org/request/show/880755 OBS-URL: https://build.opensuse.org/package/show/multimedia:apps/Jamulus?expand=0&rev=38
2021-03-28 16:46:42 +02:00
Group: Productivity/Multimedia/Other
URL: https://jamulus.io/
Source0: https://github.com/jamulussoftware/jamulus/archive/r%{tarball_version}/%{name}-%{version}.tar.gz
Source1: %{name}_icon.png
Source10: %{name}-public.service
Source11: %{name}-private.service
Source12: %{name}-newrec.service
Source13: %{name}-togglerec.service
Source20: %{name}.sysconfig
Source21: %{name}.firewalld
Source90: README.SUSE
BuildRequires: ImageMagick
BuildRequires: fdupes
BuildRequires: firewall-macros
BuildRequires: firewalld
BuildRequires: gcc-c++
BuildRequires: hicolor-icon-theme
BuildRequires: jack-devel
BuildRequires: pkgconfig
BuildRequires: pwdutils
BuildRequires: systemd-rpm-macros
BuildRequires: update-desktop-files
BuildRequires: pkgconfig(Qt5Concurrent)
BuildRequires: pkgconfig(Qt5Network)
BuildRequires: pkgconfig(Qt5Widgets)
BuildRequires: pkgconfig(Qt5Xml)
BuildRequires: pkgconfig(opus)
Requires: jack
Requires(pre): shadow
Requires(pre): %fillup_prereq
Requires(pre): group(nogroup)
Provides: llcon = %{version}
Obsoletes: llcon < %{version}
Provides: jamulus = %{version}
Obsoletes: jamulus < %{version}
%{?systemd_requires}
%description
The Jamulus software enables musicians to perform real-time jam sessions over
the internet. There is one server running the Jamulus server software which
collects the audio data from each Jamulus client software, mixes the audio data
and sends the mix back to each client.
%prep
%autosetup -p1 -n jamulus-r%{tarball_version}
install %{SOURCE1} .
install -m644 %{SOURCE90} .
%build
%qmake5 CONFIG+=opus_shared_lib CONFIG+=disable_version_check
%make_jobs
%install
install -D -m0755 Jamulus %{buildroot}%{_bindir}/%{name}
for s in 16 22 32 48 64 72 96 128 192; do
mkdir -p %{buildroot}%{_datadir}/icons/hicolor/${s}x${s}/apps
convert -strip -resize ${s}x${s} %{name}_icon.png \
%{buildroot}%{_datadir}/icons/hicolor/${s}x${s}/apps/%{name}.png
done
install -Dm0644 %{buildroot}%{_datadir}/icons/hicolor/48x48/apps/%{name}.png \
%{buildroot}%{_datadir}/pixmaps/%{name}.png
# sysconfig
install -d -m0755 %{buildroot}%{_fillupdir}
install -D -m0644 %{SOURCE20} %{buildroot}%{_fillupdir}/sysconfig.jamulus
# firewalld
install -D -m0644 %{SOURCE21} %{buildroot}%{_prefix}/lib/firewalld/services/jamulus.xml
# systemd/services
install -D -m0644 %{SOURCE10} %{buildroot}%{_unitdir}/jamulus-public.service
install -d -m0755 %{buildroot}%{_sbindir}
ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rcjamulus-public
install -D -m0644 %{SOURCE11} %{buildroot}%{_unitdir}/jamulus-private.service
install -d -m0755 %{buildroot}%{_sbindir}
ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rcjamulus-private
install -D -m0644 %{SOURCE12} %{buildroot}%{_unitdir}/jamulus-newrec.service
install -d -m0755 %{buildroot}%{_sbindir}
ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rcjamulus-newrec
install -D -m0644 %{SOURCE13} %{buildroot}%{_unitdir}/jamulus-togglerec.service
install -d -m0755 %{buildroot}%{_sbindir}
ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rcjamulus-togglerec
# desktop file
sed -i -e 's|$$TARGET|Jamulus|g' distributions/jamulus.desktop.in
sed -i -e 's|Icon=jamulus|Icon=Jamulus|g' distributions/jamulus.desktop.in
install -D -m 0644 distributions/jamulus.desktop.in %{buildroot}%{_datadir}/applications/%{name}.desktop
%suse_update_desktop_file %{name}
%fdupes %{buildroot}%{_datadir}
%pre
%service_add_pre jamulus-public.service jamulus-private.service jamulus-newrec.service jamulus-togglerec.service
getent passwd jamulus >/dev/null || \
useradd -r -g nogroup -d /var/lib/empty -s /bin/false \
-c "Jamulus Server" jamulus
%post
%service_add_post jamulus-public.service jamulus-private.service jamulus-newrec.service jamulus-togglerec.service
%{fillup_only -n jamulus}
%firewalld_reload
%preun
%service_del_preun jamulus-public.service jamulus-private.service jamulus-newrec.service jamulus-togglerec.service
%postun
%service_del_postun jamulus-public.service jamulus-private.service jamulus-newrec.service jamulus-togglerec.service
%files
%doc README.md ChangeLog README.SUSE
%license COPYING
%{_bindir}/%{name}
%{_datadir}/applications/%{name}.desktop
%{_datadir}/icons/hicolor/*/apps/%{name}.png
%{_datadir}/pixmaps/%{name}.png
# sysconfig
%{_fillupdir}/sysconfig.jamulus
# firewalld
%{_prefix}/lib/firewalld/services/jamulus.xml
# systemd/services
%{_unitdir}/jamulus-public.service
%{_sbindir}/rcjamulus-public
%{_unitdir}/jamulus-private.service
%{_sbindir}/rcjamulus-private
%{_unitdir}/jamulus-newrec.service
%{_sbindir}/rcjamulus-newrec
%{_unitdir}/jamulus-togglerec.service
%{_sbindir}/rcjamulus-togglerec
%changelog