mirror of
https://github.com/ElvishArtisan/rivendell.git
synced 2025-05-19 06:32:34 +02:00
2023-01-30 Fred Gleason <fredg@paravelsystems.com>
* Removed the 'single instance' requirement from all modules. * Removed the 'Allow Multiple Instances' dropdown from the 'Configure RDLibrary' dialog in rdadmin(1). * Removed the 'Allow Multiple Instances' dropdown from the 'Configure RDLogEdit' dialog in rdadmin(1). * Removed the wmctrl(1) dependency from the 'rivendell' DEB package. * Removed the wmctrl(1) dependency from the 'rivendell' RPM package. Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
This commit is contained in:
parent
43692497cb
commit
822fb1de92
@ -23962,3 +23962,11 @@
|
||||
* Fixed a bug in rdlogmanager(1) that would cause the pre-import
|
||||
and post-import event lists to fail to be propagated to the
|
||||
newly created event.
|
||||
2023-01-30 Fred Gleason <fredg@paravelsystems.com>
|
||||
* Removed the 'single instance' requirement from all modules.
|
||||
* Removed the 'Allow Multiple Instances' dropdown from the
|
||||
'Configure RDLibrary' dialog in rdadmin(1).
|
||||
* Removed the 'Allow Multiple Instances' dropdown from the
|
||||
'Configure RDLogEdit' dialog in rdadmin(1).
|
||||
* Removed the wmctrl(1) dependency from the 'rivendell' DEB package.
|
||||
* Removed the wmctrl(1) dependency from the 'rivendell' RPM package.
|
||||
|
4
INSTALL
4
INSTALL
@ -96,10 +96,6 @@ TagLib Audio Meta-Data Library, v1.8 or better
|
||||
A high-quality C++ library for reading and writing a variety of audio metadata
|
||||
formats. Available at https://taglib.org/.
|
||||
|
||||
wmctrl
|
||||
A UNIX/Linux command line tool to interact with an EWMH/NetWM compatible X
|
||||
Window Manager. Available in most distros.
|
||||
|
||||
X11 Window System
|
||||
Virtually all Linux distros should include this.
|
||||
|
||||
|
2
debian/control.src
vendored
2
debian/control.src
vendored
@ -7,7 +7,7 @@ Standards-Version: 4.4.1
|
||||
|
||||
Package: rivendell
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, mariadb-client, libqt5sql5-mysql, qttranslations5-l10n, apache2, curl, rsyslog, python3, python3-pycurl, python3-mysqldb, python3-serial, python3-requests, icedax, wmctrl, qt5-style-plugins, xsltproc
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, mariadb-client, libqt5sql5-mysql, qttranslations5-l10n, apache2, curl, rsyslog, python3, python3-pycurl, python3-mysqldb, python3-serial, python3-requests, icedax, qt5-style-plugins, xsltproc
|
||||
Replaces: rivendell-pypad
|
||||
Description: Radio Broadcast Automation System
|
||||
Rivendell is a complete radio broadcast automation solution, with
|
||||
|
@ -2,7 +2,7 @@
|
||||
//
|
||||
// Base GUI Application Class
|
||||
//
|
||||
// (C) Copyright 2021-2022 Fred Gleason <fredg@paravelsystems.com>
|
||||
// (C) Copyright 2021-2023 Fred Gleason <fredg@paravelsystems.com>
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License version 2 as
|
||||
@ -38,56 +38,6 @@ RDApplication::~RDApplication()
|
||||
}
|
||||
|
||||
|
||||
bool RDApplication::makeSingleInstance(QString *err_msg)
|
||||
{
|
||||
//
|
||||
// If we're already running, then just raise the window.
|
||||
//
|
||||
QStringList args;
|
||||
args.clear();
|
||||
args.push_back("-l");
|
||||
QProcess *proc=new QProcess(this);
|
||||
proc->start("wmctrl",args);
|
||||
proc->waitForFinished();
|
||||
if(proc->exitStatus()!=QProcess::NormalExit) {
|
||||
*err_msg=tr("wmctrl(1) process crashed");
|
||||
delete proc;
|
||||
return false;
|
||||
}
|
||||
if(proc->exitCode()!=0) {
|
||||
QString errs=QString::fromUtf8(proc->readAllStandardError());
|
||||
if(errs.isEmpty()) {
|
||||
*err_msg=tr("wmctrl(1) not found\n");
|
||||
}
|
||||
else {
|
||||
*err_msg=QString::asprintf("wmctrl(1) process returned error [%s]",
|
||||
errs.toUtf8().constData());
|
||||
}
|
||||
delete proc;
|
||||
return false;
|
||||
}
|
||||
bool found=false;
|
||||
QStringList f0=QString::fromUtf8(proc->readAllStandardOutput()).
|
||||
split("\n",QString::SkipEmptyParts);
|
||||
for(int i=0;i<f0.size();i++) {
|
||||
QStringList f1=f0.at(i).split(" ",QString::SkipEmptyParts);
|
||||
if(f1.size()>=6) {
|
||||
if((f1.at(3).trimmed().toLower()==commandName())&&
|
||||
(f1.at(4)==(QString("v")+VERSION))&&
|
||||
(f1.at(5)=="-")) {
|
||||
Raise(f1.at(0));
|
||||
found=true;
|
||||
}
|
||||
}
|
||||
}
|
||||
delete proc;
|
||||
if(found) {
|
||||
exit(0);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
RDIconEngine *RDApplication::iconEngine() const
|
||||
{
|
||||
return app_icon_engine;
|
||||
|
@ -31,7 +31,6 @@ class RDApplication : public RDCoreApplication
|
||||
RDApplication(const QString &module_name,const QString &cmdname,
|
||||
const QString &usage,QObject *parent);
|
||||
~RDApplication();
|
||||
bool makeSingleInstance(QString *err_msg);
|
||||
RDIconEngine *iconEngine() const;
|
||||
static QString locale();
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
//
|
||||
// Edit an RDLibrary Configuration
|
||||
//
|
||||
// (C) Copyright 2002-2022 Fred Gleason <fredg@paravelsystems.com>
|
||||
// (C) Copyright 2002-2023 Fred Gleason <fredg@paravelsystems.com>
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License version 2 as
|
||||
@ -271,19 +271,6 @@ EditRDLibrary::EditRDLibrary(RDStation *station,RDStation *cae_station,
|
||||
lib_limit_search_label->setGeometry(10,398,175,19);
|
||||
lib_limit_search_label->setAlignment(Qt::AlignRight|Qt::AlignVCenter);
|
||||
|
||||
//
|
||||
// Allow Multiple Instances
|
||||
//
|
||||
lib_singleton_box=new QComboBox(this);
|
||||
lib_singleton_box->setGeometry(190,422,80,19);
|
||||
lib_singleton_box->insertItem(0,tr("No"));
|
||||
lib_singleton_box->insertItem(1,tr("Yes"));
|
||||
QLabel *lib_singleton_label=
|
||||
new QLabel(tr("Allow Multiple Instances")+":",this);
|
||||
lib_singleton_label->setFont(labelFont());
|
||||
lib_singleton_label->setGeometry(10,422,175,19);
|
||||
lib_singleton_label->setAlignment(Qt::AlignRight|Qt::AlignVCenter);
|
||||
|
||||
//
|
||||
// Defaults
|
||||
//
|
||||
@ -440,7 +427,6 @@ EditRDLibrary::EditRDLibrary(RDStation *station,RDStation *cae_station,
|
||||
lib_editor_box->setCurrentIndex(lib_lib->enableEditor());
|
||||
lib_converter_box->setCurrentIndex(lib_lib->srcConverter());
|
||||
lib_limit_search_box->setCurrentIndex((int)lib_lib->limitSearch());
|
||||
lib_singleton_box->setCurrentIndex(!lib_lib->isSingleton());
|
||||
}
|
||||
|
||||
|
||||
@ -565,7 +551,6 @@ void EditRDLibrary::okData()
|
||||
lib_lib->setSrcConverter(lib_converter_box->currentIndex());
|
||||
lib_lib->setLimitSearch((RDLibraryConf::SearchLimit)
|
||||
lib_limit_search_box->currentIndex());
|
||||
lib_lib->setIsSingleton(lib_singleton_box->currentIndex()==0);
|
||||
done(0);
|
||||
}
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
//
|
||||
// Edit an RDLibrry Configuration
|
||||
//
|
||||
// (C) Copyright 2002-2022 Fred Gleason <fredg@paravelsystems.com>
|
||||
// (C) Copyright 2002-2023 Fred Gleason <fredg@paravelsystems.com>
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License version 2 as
|
||||
@ -71,7 +71,6 @@ class EditRDLibrary : public RDDialog
|
||||
QComboBox *lib_editor_box;
|
||||
QComboBox *lib_converter_box;
|
||||
QComboBox *lib_limit_search_box;
|
||||
QComboBox *lib_singleton_box;
|
||||
};
|
||||
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
//
|
||||
// Edit an RDLogedit Configuration
|
||||
//
|
||||
// (C) Copyright 2002-2021 Fred Gleason <fredg@paravelsystems.com>
|
||||
// (C) Copyright 2002-2023 Fred Gleason <fredg@paravelsystems.com>
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License version 2 as
|
||||
@ -282,20 +282,6 @@ EditRDLogedit::EditRDLogedit(RDStation *station,RDStation *cae_station,
|
||||
lib_default_transtype_box->insertItem(1,tr("Segue"));
|
||||
lib_default_transtype_box->insertItem(2,tr("Stop"));
|
||||
|
||||
//
|
||||
// Allow Multiple Instances
|
||||
//
|
||||
lib_singleton_box=new QComboBox(this);
|
||||
lib_singleton_box->setGeometry(180,434,100,19);
|
||||
QLabel *lib_singleton_label=
|
||||
new QLabel(tr("Allow Multiple Instances")+":",this);
|
||||
lib_singleton_label->setFont(labelFont());
|
||||
lib_singleton_label->setGeometry(0,434,175,19);
|
||||
lib_singleton_label->
|
||||
setAlignment(Qt::AlignRight|Qt::AlignVCenter);
|
||||
lib_singleton_box->insertItem(0,tr("No"));
|
||||
lib_singleton_box->insertItem(1,tr("Yes"));
|
||||
|
||||
//
|
||||
// Ok Button
|
||||
//
|
||||
@ -379,7 +365,6 @@ EditRDLogedit::EditRDLogedit(RDStation *station,RDStation *cae_station,
|
||||
ShowBitRates(lib_format_box->currentIndex(),lib_lib->bitrate());
|
||||
lib_enable_second_start_box->setCurrentIndex(lib_lib->enableSecondStart());
|
||||
lib_default_transtype_box->setCurrentIndex(lib_lib->defaultTransType());
|
||||
lib_singleton_box->setCurrentIndex(!lib_lib->isSingleton());
|
||||
}
|
||||
|
||||
|
||||
@ -508,7 +493,6 @@ void EditRDLogedit::okData()
|
||||
lib_lib->setEnableSecondStart(lib_enable_second_start_box->currentIndex());
|
||||
lib_lib->setDefaultTransType(
|
||||
(RDLogLine::TransType)lib_default_transtype_box->currentIndex());
|
||||
lib_lib->setIsSingleton(lib_singleton_box->currentIndex()==0);
|
||||
|
||||
done(0);
|
||||
}
|
||||
|
@ -2,7 +2,7 @@
|
||||
//
|
||||
// Edit an RDLogEdit Configuration
|
||||
//
|
||||
// (C) Copyright 2002-2022 Fred Gleason <fredg@paravelsystems.com>
|
||||
// (C) Copyright 2002-2023 Fred Gleason <fredg@paravelsystems.com>
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License version 2 as
|
||||
@ -66,7 +66,6 @@ class EditRDLogedit : public RDDialog
|
||||
QLineEdit *lib_recstartcart_edit;
|
||||
QLineEdit *lib_recendcart_edit;
|
||||
QComboBox *lib_default_transtype_box;
|
||||
QComboBox *lib_singleton_box;
|
||||
QString lib_filter;
|
||||
QString lib_group;
|
||||
};
|
||||
|
@ -70,19 +70,10 @@ MainWidget::MainWidget(RDConfig *config,QWidget *parent)
|
||||
//
|
||||
air_startup_datetime=QDateTime(QDate::currentDate(),QTime::currentTime());
|
||||
|
||||
//
|
||||
// Ensure that we're the only instance
|
||||
//
|
||||
rda=new RDApplication("RDAirPlay","rdairplay",RDAIRPLAY_USAGE,this);
|
||||
if(!rda->makeSingleInstance(&err_msg)) {
|
||||
QMessageBox::critical(this,"RDAirPlay - "+tr("Error"),
|
||||
tr("Startup error")+": "+err_msg+".");
|
||||
exit(RDCoreApplication::ExitPriorInstance);
|
||||
}
|
||||
|
||||
//
|
||||
// Open the Database
|
||||
//
|
||||
rda=new RDApplication("RDAirPlay","rdairplay",RDAIRPLAY_USAGE,this);
|
||||
if(!rda->open(&err_msg,NULL,true)) {
|
||||
QMessageBox::critical(this,"RDAirPlay - "+tr("Error"),err_msg);
|
||||
exit(1);
|
||||
|
@ -2,7 +2,7 @@
|
||||
//
|
||||
// A Dedicated Cart Slot Utility for Rivendell.
|
||||
//
|
||||
// (C) Copyright 2012-2022 Fred Gleason <fredg@paravelsystems.com>
|
||||
// (C) Copyright 2012-2023 Fred Gleason <fredg@paravelsystems.com>
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License version 2 as
|
||||
@ -40,15 +40,6 @@ MainWidget::MainWidget(RDConfig *c,QWidget *parent)
|
||||
exit(1);
|
||||
}
|
||||
|
||||
//
|
||||
// Ensure that we're the only instance
|
||||
//
|
||||
if(!rda->makeSingleInstance(&err_msg)) {
|
||||
QMessageBox::critical(this,"RDCartSlots - "+tr("Error"),
|
||||
tr("Startup error")+": "+err_msg+".");
|
||||
exit(RDCoreApplication::ExitPriorInstance);
|
||||
}
|
||||
|
||||
//
|
||||
// Read Command Options
|
||||
//
|
||||
|
@ -2,7 +2,7 @@
|
||||
//
|
||||
// A PodCast Management Utility for Rivendell.
|
||||
//
|
||||
// (C) Copyright 2002-2022 Fred Gleason <fredg@paravelsystems.com>
|
||||
// (C) Copyright 2002-2023 Fred Gleason <fredg@paravelsystems.com>
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License version 2 as
|
||||
@ -66,15 +66,6 @@ MainWidget::MainWidget(RDConfig *c,QWidget *parent)
|
||||
setWindowIcon(rda->iconEngine()->
|
||||
applicationIcon(RDIconEngine::RdCastManager,22));
|
||||
|
||||
//
|
||||
// Ensure that we're the only instance
|
||||
//
|
||||
if(!rda->makeSingleInstance(&err_msg)) {
|
||||
QMessageBox::critical(this,"RDCastManager - "+tr("Error"),
|
||||
tr("Startup error")+": "+err_msg+".");
|
||||
exit(RDCoreApplication::ExitPriorInstance);
|
||||
}
|
||||
|
||||
//
|
||||
// Read Command Options
|
||||
//
|
||||
|
@ -2,7 +2,7 @@
|
||||
//
|
||||
// The Event Schedule Manager for Rivendell.
|
||||
//
|
||||
// (C) Copyright 2002-2022 Fred Gleason <fredg@paravelsystems.com>
|
||||
// (C) Copyright 2002-2023 Fred Gleason <fredg@paravelsystems.com>
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License version 2 as
|
||||
@ -72,15 +72,6 @@ MainWidget::MainWidget(RDConfig *c,QWidget *parent)
|
||||
exit(1);
|
||||
}
|
||||
|
||||
//
|
||||
// Ensure that we're the only instance
|
||||
//
|
||||
if(!rda->makeSingleInstance(&err_msg)) {
|
||||
QMessageBox::critical(this,"RDCatch - "+tr("Error"),
|
||||
tr("Startup error")+": "+err_msg+".");
|
||||
exit(RDCoreApplication::ExitPriorInstance);
|
||||
}
|
||||
|
||||
//
|
||||
// Read Command Options
|
||||
//
|
||||
|
@ -2,7 +2,7 @@
|
||||
//
|
||||
// The Library Utility for Rivendell.
|
||||
//
|
||||
// (C) Copyright 2002-2022 Fred Gleason <fredg@paravelsystems.com>
|
||||
// (C) Copyright 2002-2023 Fred Gleason <fredg@paravelsystems.com>
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License version 2 as
|
||||
@ -93,17 +93,6 @@ MainWidget::MainWidget(RDConfig *c,QWidget *parent)
|
||||
}
|
||||
setWindowIcon(rda->iconEngine()->applicationIcon(RDIconEngine::RdLibrary,22));
|
||||
|
||||
if(rda->libraryConf()->isSingleton()) {
|
||||
//
|
||||
// Ensure that we're the only instance
|
||||
//
|
||||
if(!rda->makeSingleInstance(&err_msg)) {
|
||||
QMessageBox::critical(this,"RDLibrary - "+tr("Error"),
|
||||
tr("Startup error")+": "+err_msg+".");
|
||||
exit(RDCoreApplication::ExitPriorInstance);
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Read Command Options
|
||||
//
|
||||
|
@ -2,7 +2,7 @@
|
||||
//
|
||||
// The Log Editor Utility for Rivendell.
|
||||
//
|
||||
// (C) Copyright 2002-2022 Fred Gleason <fredg@paravelsystems.com>
|
||||
// (C) Copyright 2002-2023 Fred Gleason <fredg@paravelsystems.com>
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License version 2 as
|
||||
@ -67,17 +67,6 @@ MainWidget::MainWidget(RDConfig *c,QWidget *parent)
|
||||
}
|
||||
log_import_path=RDGetHomeDir();
|
||||
|
||||
if(rda->logeditConf()->isSingleton()) {
|
||||
//
|
||||
// Ensure that we're the only instance
|
||||
//
|
||||
if(!rda->makeSingleInstance(&err_msg)) {
|
||||
QMessageBox::critical(this,"RDLogEdit - "+tr("Error"),
|
||||
tr("Startup error")+": "+err_msg+".");
|
||||
exit(RDCoreApplication::ExitPriorInstance);
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Read Command Options
|
||||
//
|
||||
|
@ -2,7 +2,7 @@
|
||||
//
|
||||
// The User Login/Logout Utility for Rivendell.
|
||||
//
|
||||
// (C) Copyright 2002-2022 Fred Gleason <fredg@paravelsystems.com>
|
||||
// (C) Copyright 2002-2023 Fred Gleason <fredg@paravelsystems.com>
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License version 2 as
|
||||
@ -54,15 +54,6 @@ MainWidget::MainWidget(RDConfig *c,QWidget *parent)
|
||||
}
|
||||
setWindowIcon(rda->iconEngine()->applicationIcon(RDIconEngine::Rivendell,22));
|
||||
|
||||
//
|
||||
// Ensure that we're the only instance
|
||||
//
|
||||
if(!rda->makeSingleInstance(&err_msg)) {
|
||||
QMessageBox::critical(this,"RDLogin - "+tr("Error"),
|
||||
tr("Startup error")+": "+err_msg+".");
|
||||
exit(RDCoreApplication::ExitPriorInstance);
|
||||
}
|
||||
|
||||
//
|
||||
// Read Command Options
|
||||
//
|
||||
|
@ -2,7 +2,7 @@
|
||||
//
|
||||
// The Log Generator Utility for Rivendell.
|
||||
//
|
||||
// (C) Copyright 2002-2022 Fred Gleason <fredg@paravelsystems.com>
|
||||
// (C) Copyright 2002-2023 Fred Gleason <fredg@paravelsystems.com>
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License version 2 as
|
||||
@ -61,15 +61,6 @@ MainWidget::MainWidget(RDConfig *c,QWidget *parent)
|
||||
applicationIcon(RDIconEngine::RdLogManager,22));
|
||||
setWindowTitle(QString("RDLogManager v")+VERSION+" -");
|
||||
|
||||
//
|
||||
// Ensure that we're the only instance
|
||||
//
|
||||
if(!rda->makeSingleInstance(&err_msg)) {
|
||||
QMessageBox::critical(this,"RDLogManager - "+tr("Error"),
|
||||
tr("Startup error")+": "+err_msg+".");
|
||||
exit(RDCoreApplication::ExitPriorInstance);
|
||||
}
|
||||
|
||||
//
|
||||
// CAE Connection
|
||||
//
|
||||
|
@ -2,7 +2,7 @@
|
||||
//
|
||||
// A Dedicated Cart Wall Utility for Rivendell.
|
||||
//
|
||||
// (C) Copyright 2002-2022 Fred Gleason <fredg@paravelsystems.com>
|
||||
// (C) Copyright 2002-2023 Fred Gleason <fredg@paravelsystems.com>
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License version 2 as
|
||||
@ -60,15 +60,6 @@ MainWidget::MainWidget(RDConfig *c,QWidget *parent)
|
||||
}
|
||||
setWindowIcon(rda->iconEngine()->applicationIcon(RDIconEngine::RdPanel,22));
|
||||
|
||||
//
|
||||
// Ensure that we're the only instance
|
||||
//
|
||||
if(!rda->makeSingleInstance(&err_msg)) {
|
||||
QMessageBox::critical(this,"RDPanel - "+tr("Error"),
|
||||
tr("Startup error")+": "+err_msg+".");
|
||||
exit(RDCoreApplication::ExitPriorInstance);
|
||||
}
|
||||
|
||||
//
|
||||
// Read Command Options
|
||||
//
|
||||
|
@ -3,7 +3,7 @@
|
||||
@GENERATED_SCRIPT_FILE_WARNING@
|
||||
|
||||
## The Rivendell Radio Automation System
|
||||
## Copyright (C) 2002-2022 Fred Gleason <fredg@paravelsystems.com>
|
||||
## Copyright (C) 2002-2023 Fred Gleason <fredg@paravelsystems.com>
|
||||
##
|
||||
## This program is free software; you can redistribute it and/or modify
|
||||
## it under the terms of version 2 of the GNU General Public License as
|
||||
@ -30,7 +30,7 @@ Release: @RPM_RELEASE@
|
||||
License: GPL
|
||||
Packager: Fred Gleason <fredg@paravelsystems.com>
|
||||
Source: rivendell-@VERSION@.tar.gz
|
||||
Requires: @MYSQL_PKG@ @QT_MYSQL_PKG@ @APACHE_PKG@ curl @USERMODE_PKG@ rsyslog qt5-qtstyleplugins qt5-qttranslations @PYPAD_DEPS@ libxslt icedax wmctrl
|
||||
Requires: @MYSQL_PKG@ @QT_MYSQL_PKG@ @APACHE_PKG@ curl @USERMODE_PKG@ rsyslog qt5-qtstyleplugins qt5-qttranslations @PYPAD_DEPS@ libxslt icedax
|
||||
BuildRequires: qt5-qtbase-devel qt5-linguist
|
||||
BuildRoot: /var/tmp/rivendell-@VERSION@
|
||||
Obsoletes: rivendell-base < 4.0.0 rivendell-opsguide < 4.0.0 rivendell-pypad < 4.0.0
|
||||
|
Loading…
x
Reference in New Issue
Block a user