From: Rafael Sadowski Subject: sysutils/bacula switch to Qt6 To: The OpenBSD ports mailing-list Date: Tue, 26 May 2026 07:20:14 +0200 This diff backports Qt6 patches from gentoo. I also removed the qwt lib dependency. This was already incorrect before and wasn't being used. bat only need the qwt header for building. Double checked in the qmake pro file. Since I couldn't get that stupid configure file to locate QT6 properly, I just removed the check. I launched both Qt tools and had a bit of a play around. However, I didn’t have a proper server running. Last but not least, I’ve switched from http to https. OK? Cheers Rafael diff --git a/sysutils/bacula/Makefile b/sysutils/bacula/Makefile index fdda6def7c0..94d7ee77250 100644 --- a/sysutils/bacula/Makefile +++ b/sysutils/bacula/Makefile @@ -16,9 +16,15 @@ PKGNAME-bat= bacula-bat-$V PKGNAME-mysql= bacula-mysql-$V PKGNAME-pgsql= bacula-pgsql-$V PKGNAME-sqlite3= bacula-sqlite3-$V - +REVISION-bat= 1 +REVISION-sqlite3= 1 +REVISION-main= 0 +REVISION-mysql= 0 +REVISION-pgsql= 0 REVISION-server= 0 +REVISION-server= 1 + CATEGORIES= sysutils SHARED_LIBS += bac 11.1 @@ -34,7 +40,7 @@ SHARED_LIBS += baccats-postgresql ${BACCATS_LIBV} SHARED_LIBS += baccats-sqlite3 ${BACCATS_LIBV} SITES= ${SITE_SOURCEFORGE:=bacula/} -HOMEPAGE= http://www.bacula.org/ +HOMEPAGE= https://www.bacula.org/ WANTLIB += c crypto m pthread ssl z ${COMPILER_LIBCXX} @@ -84,7 +90,7 @@ CONFIGURE_ARGS= --enable-smartalloc \ --with-sqlite3 MAKE_FLAGS= NO_ECHO= -USE_LIBTOOL= gnu# base libtool with Qt5 is in the too-hard basket +USE_LIBTOOL= gnu# base libtool with Qt6 is in the too-hard basket LIBTOOL_FLAGS= --tag=disable-static CONFIGURE_ENV= CONFIG_SITE="${PORTSDIR}/infrastructure/db/config.site" \ @@ -118,15 +124,15 @@ WANTLIB-mysql += m mariadb ${COMPILER_LIBCXX} LIB_DEPENDS-mysql += ${MODGCC4_CPPLIBDEP} \ databases/mariadb -WANTLIB-sqlite3 += sqlite3 m pthread z ${COMPILER_LIBCXX} +WANTLIB-sqlite3 += sqlite3 m pthread ${COMPILER_LIBCXX} LIB_DEPENDS-sqlite3= ${MODGCC4_CPPLIBDEP} \ databases/sqlite3 -MODULES += x11/qt5 +MODULES += x11/qt6 MODQT_DEPS = No WANTLIB-bat += ${WANTLIB} bac baccfg bacfind -WANTLIB-bat += GL Qt5Core Qt5Gui Qt5Widgets qwt +WANTLIB-bat += GL Qt6Core Qt6Gui Qt6Widgets WANTLIB-bat += lib/inotify/inotify RUN_DEPENDS-bat= ${RUN_DEPENDS} \ @@ -134,8 +140,7 @@ RUN_DEPENDS-bat= ${RUN_DEPENDS} \ LIB_DEPENDS-bat= ${LIB_DEPENDS} \ ${MODQT_LIB_DEPENDS} \ devel/libinotify \ - sysutils/bacula,-main \ - x11/qwt + sysutils/bacula,-main RUN_DEPENDS-server= lang/gawk @@ -145,10 +150,8 @@ RUN_DEPENDS-server= lang/gawk CONFIGURE_ARGS += --disable-bat .else CONFIGURE_ARGS += --enable-bat -# something in tray-monitor seems to still depend on this (at least, -# it complains if junked during the build), though it looks like the dep -# is supposed to have been removed by now. -BUILD_DEPENDS += x11/qwt +# Depends on qwt header files only +BUILD_DEPENDS= x11/qwt,-common .endif .if !${BUILD_PACKAGES:M-mysql} diff --git a/sysutils/bacula/patch-src_qt-console_bat_pro b/sysutils/bacula/patch-src_qt-console_bat_pro new file mode 100644 index 00000000000..9762819367e --- /dev/null +++ b/sysutils/bacula/patch-src_qt-console_bat_pro @@ -0,0 +1,14 @@ +Index: src/qt-console/bat.pro +--- src/qt-console/bat.pro.orig ++++ src/qt-console/bat.pro +@@ -30,8 +30,8 @@ QMAKE_INSTALL_PROGRAM = $${LIBTOOL_INSTALL} install -m + QMAKE_CLEAN += .libs/* bat + + qwt { +- INCLUDEPATH += +- LIBS += ++ INCLUDEPATH += /usr/local/include ++ LIBS += -lqwt-qt6 + } + + macx { diff --git a/sysutils/bacula/patches/patch-autoconf_configure_in b/sysutils/bacula/patches/patch-autoconf_configure_in new file mode 100644 index 00000000000..20d2c050d43 --- /dev/null +++ b/sysutils/bacula/patches/patch-autoconf_configure_in @@ -0,0 +1,12 @@ +Index: autoconf/configure.in +--- autoconf/configure.in.orig ++++ autoconf/configure.in +@@ -456,7 +456,7 @@ dnl look for Qt4 + BAT_DIR=src/qt-console + else + dnl look for Qt5 +- abc=`$PKG_CONFIG Qt5Gui` ++ abc=`PKG_CONFIG_PATH="/usr/local/lib/qt6/pkgconfig${PKG_CONFIG_PATH:+:$PKG_CONFIG_PATH}" $PKG_CONFIG --exists Qt6Gui` + pkg=$? + if test $pkg = 0; then + BAT_DIR="src/qt-console src/qt-console/tray-monitor" diff --git a/sysutils/bacula/patches/patch-configure b/sysutils/bacula/patches/patch-configure index 0b47cfe28c9..55765820bb2 100644 --- a/sysutils/bacula/patches/patch-configure +++ b/sysutils/bacula/patches/patch-configure @@ -19,7 +19,27 @@ Index: configure FD_PLUGIN_DIR="src/plugins/fd" DIR_PLUGIN_DIR="src/plugins/dir" DLIB="-rpath \$(libdir)" -@@ -22612,7 +22612,7 @@ if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : +@@ -22046,19 +22046,7 @@ fi + + BAT_DIR= + if test x$support_bat = xyes; then +- abc=`$PKG_CONFIG QtGui` +- pkg=$? +- if test $pkg = 0; then +- BAT_DIR=src/qt-console +- else +- abc=`$PKG_CONFIG Qt5Gui` +- pkg=$? +- if test $pkg = 0; then + BAT_DIR="src/qt-console src/qt-console/tray-monitor" +- else +- as_fn_error $? "Unable to find either Qt4 or Qt5 installation needed by bat" "$LINENO" 5 +- fi +- fi + fi + + +@@ -22612,7 +22600,7 @@ if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : $as_echo "#define HAVE_READLINE 1" >>confdefs.h @@ -28,7 +48,7 @@ Index: configure got_readline="yes" else -@@ -22651,7 +22651,7 @@ $as_echo "#define HAVE_READLINE 1" >>confdefs.h +@@ -22651,7 +22639,7 @@ $as_echo "#define HAVE_READLINE 1" >>confdefs.h got_readline="yes" CONS_INC="-I${TOP_DIR}/depkgs/readline" @@ -37,7 +57,7 @@ Index: configure CONS_LDFLAGS="-L${TOP_DIR}/depkgs/readline" PRTREADLINE_SRC="${TOP_DIR}/depkgs/readline" -@@ -30612,13 +30612,19 @@ if test "${with_lzo+set}" = set; then : +@@ -30612,13 +30600,19 @@ if test "${with_lzo+set}" = set; then : ;; yes|*) if test -f ${with_lzo}/include/lzo/lzoconf.h; then @@ -58,7 +78,7 @@ Index: configure as_ac_Header=`$as_echo "ac_cv_header_${with_lzo}/lzo/lzoconf.h" | $as_tr_sh` ac_fn_c_check_header_mongrel "$LINENO" "${with_lzo}/lzo/lzoconf.h" "$as_ac_Header" "$ac_includes_default" if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : -@@ -30638,6 +30644,8 @@ else +@@ -30638,6 +30632,8 @@ else fi @@ -67,7 +87,7 @@ Index: configure ;; esac -@@ -32454,6 +32462,7 @@ netbsd) +@@ -32454,6 +32450,7 @@ netbsd) DISTVER=`uname -a |awk '{print $3}'` lld="qd" llu="qu" @@ -75,7 +95,7 @@ Index: configure TAPEDRIVE="/dev/nrst0" PSCMD="ps -ax -o pid,command" PTHREAD_LIB="-pthread" -@@ -32472,6 +32481,7 @@ openbsd) +@@ -32472,6 +32469,7 @@ openbsd) platforms/openbsd/bacula-fd \ platforms/openbsd/bacula-sd \ platforms/openbsd/bacula-dir" diff --git a/sysutils/bacula/patches/patch-src_qt-console_help_help_cpp b/sysutils/bacula/patches/patch-src_qt-console_help_help_cpp new file mode 100644 index 00000000000..f810be7c5a4 --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_help_help_cpp @@ -0,0 +1,32 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/help/help.cpp +--- src/qt-console/help/help.cpp.orig ++++ src/qt-console/help/help.cpp +@@ -35,8 +35,8 @@ Help::Help(const QString &path, const QString &file, Q + QWidget(parent) + { + setAttribute(Qt::WA_DeleteOnClose); /* Make sure we go away */ +- setAttribute(Qt::WA_GroupLeader); /* allow calling from modal dialog */ +- ++ setWindowModality(Qt::NonModal); /* allow calling from modal dialog */ ++ + setupUi(this); /* create window */ + + textBrowser->setSearchPaths(QStringList() << HELPDIR << path << ":/images"); +@@ -57,11 +57,12 @@ void Help::updateTitle() + + void Help::displayFile(const QString &file) + { +- QRegExp rx; ++ QRegularExpression rx; + rx.setPattern("/\\.libs"); + QString path = QApplication::applicationDirPath(); +- int pos = rx.indexIn(path); +- if (pos) ++ QRegularExpressionMatch match = rx.match(path); ++ int pos = match.capturedStart(); ++ if (pos != -1) + path = path.remove(pos, 6); + path += "/help"; + new Help(path, file); diff --git a/sysutils/bacula/patches/patch-src_qt-console_job_job_cpp b/sysutils/bacula/patches/patch-src_qt-console_job_job_cpp new file mode 100644 index 00000000000..d950b604c65 --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_job_job_cpp @@ -0,0 +1,77 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/job/job.cpp +--- src/qt-console/job/job.cpp.orig ++++ src/qt-console/job/job.cpp +@@ -223,6 +223,7 @@ void Job::storeBwLimit(int val) + + void Job::updateRunInfo() + { ++ QRegularExpressionMatch match; + QString cmd; + QStringList results; + QStringList lst; +@@ -256,12 +257,12 @@ void Job::updateRunInfo() + * Bytes=610976 + * + */ +- QRegExp jobline("(JobId) (\\d+) Job "); +- QRegExp itemline("([\\w /]+)[:=]\\s*(.+)"); +- QRegExp filesline("Files: Examined=([\\d,]+) Backed up=([\\d,])"); +- QRegExp oldline("Files=([\\d,]+) Bytes=([\\d,]+) Bytes/sec=([\\d,]+) Errors=([\\d,]+)"); +- QRegExp restoreline("Files: Restored=([\\d,]+) Expected=([\\d,]+) Completed=([\\d,]+)%"); +- QRegExp restoreline2("Files Examined=([\\d,]+) Expected Files=([\\d,]+) Percent Complete=([\\d,]+)"); ++ QRegularExpression jobline("(JobId) (\\d+) Job "); ++ QRegularExpression itemline("([\\w /]+)[:=]\\s*(.+)"); ++ QRegularExpression filesline("Files: Examined=([\\d,]+) Backed up=([\\d,])"); ++ QRegularExpression oldline("Files=([\\d,]+) Bytes=([\\d,]+) Bytes/sec=([\\d,]+) Errors=([\\d,]+)"); ++ QRegularExpression restoreline("Files: Restored=([\\d,]+) Expected=([\\d,]+) Completed=([\\d,]+)%"); ++ QRegularExpression restoreline2("Files Examined=([\\d,]+) Expected Files=([\\d,]+) Percent Complete=([\\d,]+)"); + + QString com(","); + QString empty(""); +@@ -270,9 +271,10 @@ void Job::updateRunInfo() + foreach (QString mline, results) { + foreach (QString line, mline.split("\n")) { + line = line.trimmed(); +- if (oldline.indexIn(line) >= 0) { ++ match = oldline.match(line); ++ if (match.hasMatch()) { + if (parseit) { +- lst = oldline.capturedTexts(); ++ lst = match.capturedTexts(); + label_JobErrors->setText(lst[4]); + label_Speed->setText(convertBytesSI(lst[3].replace(com, empty).toULongLong())+"/s"); + label_JobFiles->setText(lst[1]); +@@ -280,9 +282,9 @@ void Job::updateRunInfo() + } + continue; + +- } else if (filesline.indexIn(line) >= 0) { ++ } else if (match = filesline.match(line); match.hasMatch()) { + if (parseit) { +- lst = filesline.capturedTexts(); // Will also catch Backed up ++ lst = match.capturedTexts(); // Will also catch Backed up + label_FilesExamined->setText(lst[1]); + } + continue; +@@ -294,15 +296,13 @@ void Job::updateRunInfo() + // label_FilesExamined->setText(lst[1]); // Can also handle Expected and Completed + // } + // continue; +- +- } else if (jobline.indexIn(line) >= 0) { +- lst = jobline.capturedTexts(); ++ } else if (match = jobline.match(line); match.hasMatch()) { ++ lst = match.capturedTexts(); + lst.removeFirst(); + +- } else if (itemline.indexIn(line) >= 0) { +- lst = itemline.capturedTexts(); ++ } else if (match = itemline.match(line); match.hasMatch()) { ++ lst = match.capturedTexts(); + lst.removeFirst(); +- + } else { + if (mainWin->m_miscDebug) + Pmsg1(0, "bad line=%s\n", line.toUtf8().data()); diff --git a/sysutils/bacula/patches/patch-src_qt-console_joblist_joblist_cpp b/sysutils/bacula/patches/patch-src_qt-console_joblist_joblist_cpp new file mode 100644 index 00000000000..a635b50823b --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_joblist_joblist_cpp @@ -0,0 +1,14 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/joblist/joblist.cpp +--- src/qt-console/joblist/joblist.cpp.orig ++++ src/qt-console/joblist/joblist.cpp +@@ -66,7 +66,7 @@ JobList::JobList(const QString &mediaName, const QStri + + QGridLayout *gridLayout = new QGridLayout(this); + gridLayout->setSpacing(6); +- gridLayout->setMargin(9); ++ gridLayout->setContentsMargins(9,9,9,9); + gridLayout->setObjectName(QString::fromUtf8("gridLayout")); + + m_splitter = new QSplitter(Qt::Vertical, this); diff --git a/sysutils/bacula/patches/patch-src_qt-console_mediaedit_mediaedit_cpp b/sysutils/bacula/patches/patch-src_qt-console_mediaedit_mediaedit_cpp new file mode 100644 index 00000000000..849c88eac47 --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_mediaedit_mediaedit_cpp @@ -0,0 +1,14 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/mediaedit/mediaedit.cpp +--- src/qt-console/mediaedit/mediaedit.cpp.orig ++++ src/qt-console/mediaedit/mediaedit.cpp +@@ -82,7 +82,7 @@ MediaEdit::MediaEdit(QTreeWidgetItem *parentWidget, QS + } + + QString where = " WHERE Media.VolumeName = '" + mediaId + "' "; +- if (mediaId.contains(QRegExp("^[0-9]+$"))) { ++ if (mediaId.contains(QRegularExpression("^[0-9]+$"))) { + where = " WHERE Media.MediaId=" + mediaId; + } + query += " FROM Media" diff --git a/sysutils/bacula/patches/patch-src_qt-console_qstd_cpp b/sysutils/bacula/patches/patch-src_qt-console_qstd_cpp new file mode 100644 index 00000000000..6efd9eeb59f --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_qstd_cpp @@ -0,0 +1,15 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/qstd.cpp +--- src/qt-console/qstd.cpp.orig ++++ src/qt-console/qstd.cpp +@@ -30,7 +30,8 @@ int qstd::promptInt(int base /* =10 */) { /* Usage: in + QString numstr; + int result; + bool ok; +- cout << ": " << flush; ++ cout << ": "; ++ cout.flush(); + while (1) { + numstr = cin.readLine(); + result = numstr.toInt(&ok, base); diff --git a/sysutils/bacula/patches/patch-src_qt-console_restore_brestore_cpp b/sysutils/bacula/patches/patch-src_qt-console_restore_brestore_cpp new file mode 100644 index 00000000000..15395f6dd7b --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_restore_brestore_cpp @@ -0,0 +1,14 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/restore/brestore.cpp +--- src/qt-console/restore/brestore.cpp.orig ++++ src/qt-console/restore/brestore.cpp +@@ -162,7 +162,7 @@ void bRestore::displayFiles(int64_t pathid, QString pa + if (m_path == "/") { + m_path = ""; + } else { +- m_path.remove(QRegExp("[^/]+/$")); ++ m_path.remove(QRegularExpression("[^/]+/$")); + } + + } else if (path == "/" && m_path == "") { diff --git a/sysutils/bacula/patches/patch-src_qt-console_restore_prerestore_cpp b/sysutils/bacula/patches/patch-src_qt-console_restore_prerestore_cpp new file mode 100644 index 00000000000..04503b02bfb --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_restore_prerestore_cpp @@ -0,0 +1,14 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/restore/prerestore.cpp +--- src/qt-console/restore/prerestore.cpp.orig ++++ src/qt-console/restore/prerestore.cpp +@@ -271,7 +271,7 @@ bool prerestorePage::checkJobIdList() + "Press OK to continue?"), QMessageBox::Ok ); + return false; + } +- QStringList joblist = line.split(",", QString::SkipEmptyParts); ++ QStringList joblist = line.split(",", Qt::SkipEmptyParts); + bool allintokay = true, alljobok = true, allisjob = true; + QString jobName(""), clientName(""); + foreach (QString job, joblist) { diff --git a/sysutils/bacula/patches/patch-src_qt-console_restore_restore_cpp b/sysutils/bacula/patches/patch-src_qt-console_restore_restore_cpp new file mode 100644 index 00000000000..c8db101b7fb --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_restore_restore_cpp @@ -0,0 +1,15 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/restore/restore.cpp +--- src/qt-console/restore/restore.cpp.orig ++++ src/qt-console/restore/restore.cpp +@@ -109,7 +109,8 @@ void restorePage::fillDirectory() + strip_trailing_junk(p); + if (*p == '$' || !*p) { continue; } + if (first) { +- if (m_rx.indexIn(QString(p)) != -1) { continue; } ++ QRegularExpressionMatch rxm = m_rx.match(QString(p)); ++ if (rxm.hasMatch()) { continue; } + first = false; + } + l = p; diff --git a/sysutils/bacula/patches/patch-src_qt-console_restore_restore_h b/sysutils/bacula/patches/patch-src_qt-console_restore_restore_h new file mode 100644 index 00000000000..7b6cb8bd2e2 --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_restore_restore_h @@ -0,0 +1,14 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/restore/restore.h +--- src/qt-console/restore/restore.h.orig ++++ src/qt-console/restore/restore.h +@@ -125,7 +125,7 @@ private slots: (private) + QString m_cwd; + QHash m_dirPaths; + QHash m_dirTreeItems; +- QRegExp m_rx; ++ QRegularExpression m_rx; + QString m_splitText; + }; + diff --git a/sysutils/bacula/patches/patch-src_qt-console_restore_restore_ui b/sysutils/bacula/patches/patch-src_qt-console_restore_restore_ui new file mode 100644 index 00000000000..8fea9fd85a2 --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_restore_restore_ui @@ -0,0 +1,14 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/restore/restore.ui +--- src/qt-console/restore/restore.ui.orig ++++ src/qt-console/restore/restore.ui +@@ -219,7 +219,7 @@ + + + +- ++ + 144 + 1 + diff --git a/sysutils/bacula/patches/patch-src_qt-console_restore_restoretree_cpp b/sysutils/bacula/patches/patch-src_qt-console_restore_restoretree_cpp new file mode 100644 index 00000000000..8366c480687 --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_restore_restoretree_cpp @@ -0,0 +1,100 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/restore/restoretree.cpp +--- src/qt-console/restore/restoretree.cpp.orig ++++ src/qt-console/restore/restoretree.cpp +@@ -44,7 +44,7 @@ restoreTree::restoreTree() : Pages() + + QGridLayout *gridLayout = new QGridLayout(this); + gridLayout->setSpacing(6); +- gridLayout->setMargin(9); ++ gridLayout->setContentsMargins(9,9,9,9); + gridLayout->setObjectName(QString::fromUtf8("gridLayout")); + + m_splitter = new QSplitter(Qt::Vertical, this); +@@ -426,12 +426,12 @@ void restoreTree::directoryCurrentItemChanged(QTreeWid + tableItem = new QTableWidgetItem(field, 1); + /* Possible flags are Qt::ItemFlags flag = Qt::ItemIsSelectable | Qt::ItemIsEditablex + * | Qt::ItemIsDragEnabled | Qt::ItemIsDropEnabled | Qt::ItemIsUserCheckable +- * | Qt::ItemIsEnabled | Qt::ItemIsTristate; */ ++ * | Qt::ItemIsEnabled | Qt::ItemIsAutoTristate; */ + tableItem->setForeground(blackBrush); + /* Just in case a column ever gets added */ + if (mainWin->m_sqlDebug) Pmsg1(000, "Column=%d\n", column); + if (column == 0) { +- Qt::ItemFlags flag = Qt::ItemIsUserCheckable | Qt::ItemIsEnabled | Qt::ItemIsTristate; ++ Qt::ItemFlags flag = Qt::ItemIsUserCheckable | Qt::ItemIsEnabled | Qt::ItemIsAutoTristate; + tableItem->setFlags(flag); + tableItem->setData(Qt::UserRole, QVariant(directory)); + fileTable->setItem(row, column, tableItem); +@@ -537,13 +537,13 @@ void restoreTree::fileCurrentItemChanged(QTableWidgetI + } + } + tableItem = new QTableWidgetItem(field, 1); +- tableItem->setFlags(0); ++ tableItem->setFlags(Qt::NoItemFlags); + tableItem->setForeground(blackBrush); + tableItem->setData(Qt::UserRole, QVariant(directory)); + versionTable->setItem(row, column, tableItem); + if (mainWin->m_sqlDebug) Pmsg1(000, "Column=%d\n", column); + if (column == 0) { +- Qt::ItemFlags flag = Qt::ItemIsUserCheckable | Qt::ItemIsEnabled | Qt::ItemIsTristate; ++ Qt::ItemFlags flag = Qt::ItemIsUserCheckable | Qt::ItemIsEnabled | Qt::ItemIsAutoTristate; + tableItem->setFlags(flag); + m_versionCheckStateList.append(Qt::Unchecked); + tableItem->setCheckState(Qt::Unchecked); +@@ -687,7 +687,7 @@ void restoreTree::populateJobTable() + } + } + tableItem = new QTableWidgetItem(field, 1); +- tableItem->setFlags(0); ++ tableItem->setFlags(Qt::NoItemFlags); + tableItem->setForeground(blackBrush); + jobTable->setItem(row, column, tableItem); + if (mainWin->m_sqlDebug) Pmsg1(000, "Column=%d\n", column); +@@ -695,12 +695,12 @@ void restoreTree::populateJobTable() + bool ok; + int purged = fieldlist[purgedIndex].toInt(&ok, 10); + if (!((ok) && (purged == 1))) { +- Qt::ItemFlags flag = Qt::ItemIsUserCheckable | Qt::ItemIsEnabled | Qt::ItemIsTristate; ++ Qt::ItemFlags flag = Qt::ItemIsUserCheckable | Qt::ItemIsEnabled | Qt::ItemIsAutoTristate; + tableItem->setFlags(flag); + tableItem->setCheckState(Qt::Checked); + tableItem->setBackground(Qt::green); + } else { +- tableItem->setFlags(0); ++ tableItem->setFlags(Qt::NoItemFlags); + tableItem->setCheckState(Qt::Unchecked); + } + } +@@ -708,12 +708,12 @@ void restoreTree::populateJobTable() + } + } + tableItem = new QTableWidgetItem(QIcon(QString::fromUtf8(":images/go-up.png")), "", 1); +- tableItem->setFlags(0); ++ tableItem->setFlags(Qt::NoItemFlags); + tableItem->setForeground(blackBrush); + jobTable->setItem(row, column, tableItem); + column++; + tableItem = new QTableWidgetItem(QIcon(QString::fromUtf8(":images/go-down.png")), "", 1); +- tableItem->setFlags(0); ++ tableItem->setFlags(Qt::NoItemFlags); + tableItem->setForeground(blackBrush); + jobTable->setItem(row, column, tableItem); + row++; +@@ -1404,6 +1404,7 @@ void restoreTree::directorySetIcon(int operation, int + */ + void restoreTree::restoreButtonPushed() + { ++#ifdef tb + /* Set progress bars and repaint */ + prLabel1->setVisible(true); + prLabel1->setText(tr("Task 1 of 3")); +@@ -1622,6 +1623,7 @@ void restoreTree::restoreButtonPushed() + prBar2->setVisible(false); + prLabel1->setVisible(false); + prLabel2->setVisible(false); ++#endif + } + + int restoreTree::mostRecentVersionfromFullPath(QString &fullPath) diff --git a/sysutils/bacula/patches/patch-src_qt-console_run_run_cpp b/sysutils/bacula/patches/patch-src_qt-console_run_run_cpp new file mode 100644 index 00000000000..b406dc767d9 --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_run_run_cpp @@ -0,0 +1,29 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/run/run.cpp +--- src/qt-console/run/run.cpp.orig ++++ src/qt-console/run/run.cpp +@@ -73,14 +73,13 @@ runPage::runPage(const QString &defJob, const QString + void runPage::init() + { + QDateTime dt; +- QDesktopWidget *desk = QApplication::desktop(); + QRect scrn; + + m_name = tr("Run"); + pgInitialize(); + setupUi(this); + /* Get screen rectangle */ +- scrn = desk->screenGeometry(desk->primaryScreen()); ++ scrn = QGuiApplication::primaryScreen()->availableGeometry(); + /* Position this window in the middle of the screen */ + this->move((scrn.width()-this->width())/2, (scrn.height()-this->height())/2); + QTreeWidgetItem* thisitem = mainWin->getFromHash(this); +@@ -181,6 +180,6 @@ void runPage::job_name_change(int index) + m_console->dir_cmd(cmd, m_console->level_list); + levelCombo->clear(); + levelCombo->addItems(m_console->level_list); +- levelCombo->setCurrentIndex(levelCombo->findText(job_defs.level, 0 /*Qt::MatchExactly*/)); ++ levelCombo->setCurrentIndex(levelCombo->findText(job_defs.level, Qt::MatchExactly)); + } + } diff --git a/sysutils/bacula/patches/patch-src_qt-console_run_runcmd_cpp b/sysutils/bacula/patches/patch-src_qt-console_run_runcmd_cpp new file mode 100644 index 00000000000..689fb0a2dbf --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_run_runcmd_cpp @@ -0,0 +1,25 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/run/runcmd.cpp +--- src/qt-console/run/runcmd.cpp.orig ++++ src/qt-console/run/runcmd.cpp +@@ -60,7 +60,7 @@ void runCmdPage::fill() + { + QString item, val; + QStringList items; +- QRegExp rx("^.*:\\s*(\\S.*$)"); /* Regex to get value */ ++ QRegularExpression rx("^.*:\\s*(\\S.*$)"); /* Regex to get value */ + + clientCombo->addItems(m_console->client_list); + filesetCombo->addItems(m_console->fileset_list); +@@ -74,8 +74,8 @@ void runCmdPage::fill() + item = m_console->msg(m_conn); + items = item.split("\n"); + foreach(item, items) { +- rx.indexIn(item); +- val = rx.cap(1); ++ QRegularExpressionMatch mrx = rx.match(item); ++ val = mrx.captured(1); + Dmsg1(100, "Item=%s\n", item.toUtf8().data()); + Dmsg1(100, "Value=%s\n", val.toUtf8().data()); + diff --git a/sysutils/bacula/patches/patch-src_qt-console_status_clientstat_cpp b/sysutils/bacula/patches/patch-src_qt-console_status_clientstat_cpp new file mode 100644 index 00000000000..5826f6a27b2 --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_status_clientstat_cpp @@ -0,0 +1,14 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/status/clientstat.cpp +--- src/qt-console/status/clientstat.cpp.orig ++++ src/qt-console/status/clientstat.cpp +@@ -166,7 +166,7 @@ void ClientStat::populateTerminated() + field = field.trimmed(); /* strip leading & trailing spaces */ + p_tableitem = new QTableWidgetItem(field, 1); + p_tableitem->setForeground(blackBrush); +- p_tableitem->setFlags(0); ++ p_tableitem->setFlags(Qt::NoItemFlags); + if (flaglist[column].contains("R")) + p_tableitem->setTextAlignment(Qt::AlignRight); + if (flaglist[column].contains("C")) { diff --git a/sysutils/bacula/patches/patch-src_qt-console_status_dirstat_cpp b/sysutils/bacula/patches/patch-src_qt-console_status_dirstat_cpp new file mode 100644 index 00000000000..0af77169de3 --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_status_dirstat_cpp @@ -0,0 +1,14 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/status/dirstat.cpp +--- src/qt-console/status/dirstat.cpp.orig ++++ src/qt-console/status/dirstat.cpp +@@ -157,7 +157,7 @@ void DirStat::populateTerminated() + field = field.trimmed(); /* strip leading & trailing spaces */ + p_tableitem = new QTableWidgetItem(field, 1); + p_tableitem->setForeground(blackBrush); +- p_tableitem->setFlags(0); ++ p_tableitem->setFlags(Qt::NoItemFlags); + if (flaglist[column].contains("R")) + p_tableitem->setTextAlignment(Qt::AlignRight); + if (flaglist[column].contains("C")) { diff --git a/sysutils/bacula/patches/patch-src_qt-console_status_storstat_cpp b/sysutils/bacula/patches/patch-src_qt-console_status_storstat_cpp new file mode 100644 index 00000000000..56b11f781a9 --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_status_storstat_cpp @@ -0,0 +1,14 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/status/storstat.cpp +--- src/qt-console/status/storstat.cpp.orig ++++ src/qt-console/status/storstat.cpp +@@ -254,7 +254,7 @@ void StorStat::populateTerminated() + field = field.trimmed(); /* strip leading & trailing spaces */ + p_tableitem = new QTableWidgetItem(field, 1); + p_tableitem->setForeground(blackBrush); +- p_tableitem->setFlags(0); ++ p_tableitem->setFlags(Qt::NoItemFlags); + if (flaglist[column].contains("R")) + p_tableitem->setTextAlignment(Qt::AlignRight); + if (flaglist[column].contains("C")) { diff --git a/sysutils/bacula/patches/patch-src_qt-console_storage_content_cpp b/sysutils/bacula/patches/patch-src_qt-console_storage_content_cpp new file mode 100644 index 00000000000..7aa7280349a --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_storage_content_cpp @@ -0,0 +1,27 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/storage/content.cpp +--- src/qt-console/storage/content.cpp.orig ++++ src/qt-console/storage/content.cpp +@@ -190,10 +190,10 @@ void Content::populateContent() + tableTray->clearContents(); + + // take only valid records, TODO: Add D to get drive status +- QStringList results = results_all.filter(QRegExp("^[IS]\\|[0-9]+\\|")); ++ QStringList results = results_all.filter(QRegularExpression("^[IS]\\|[0-9]+\\|")); + tableContent->setRowCount(results.size()); + +- QStringList io_results = results_all.filter(QRegExp("^I\\|[0-9]+\\|")); ++ QStringList io_results = results_all.filter(QRegularExpression("^I\\|[0-9]+\\|")); + tableTray->setRowCount(io_results.size()); + + QString resultline; +@@ -271,7 +271,7 @@ void Content::populateContent() + + tableDrive->verticalHeader()->hide(); + /* Get count of rows needed (Drives) */ +- QStringList drives = results_all.filter(QRegExp("^D\\|[0-9]+\\|")); ++ QStringList drives = results_all.filter(QRegularExpression("^D\\|[0-9]+\\|")); + /* Ensure we have sufficient rows for Drive display */ + tableDrive->setRowCount(drives.size()); + row = 0; diff --git a/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_desktop-gui_cdp-main-ui_h b/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_desktop-gui_cdp-main-ui_h new file mode 100644 index 00000000000..c432bbbcbdc --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_desktop-gui_cdp-main-ui_h @@ -0,0 +1,23 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/tray-monitor/desktop-gui/cdp-main-ui.h +--- src/qt-console/tray-monitor/desktop-gui/cdp-main-ui.h.orig ++++ src/qt-console/tray-monitor/desktop-gui/cdp-main-ui.h +@@ -18,7 +18,7 @@ + */ + + #ifndef CDPUI_H +-#define CPDUI_H ++#define CDPUI_H + + #include "../tray-monitor/common.h" + #include "backupservice.h" +@@ -31,7 +31,7 @@ + + #include + #include +-#include ++#include + #include + #include + #include diff --git a/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_dirstatus_cpp b/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_dirstatus_cpp new file mode 100644 index 00000000000..2a45bfb5d1f --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_dirstatus_cpp @@ -0,0 +1,28 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/tray-monitor/dirstatus.cpp +--- src/qt-console/tray-monitor/dirstatus.cpp.orig ++++ src/qt-console/tray-monitor/dirstatus.cpp +@@ -76,9 +76,9 @@ void DIRStatus::taskDone(task *t) + TableItemFormatter item(*status.tableRunning, row++); + item.setNumericFld(col++, QString(edit_uint64(rjob->JobId, ed1))); + item.setTextFld(col++, QString(rjob->Job)); +- item.setJobLevelFld(col++, QString(rjob->JobLevel)); ++ item.setJobLevelFld(col++, QString((char *)&rjob->JobLevel)); + item.setTextFld(col++, QString(rjob->Client)); +- item.setJobStatusFld(col++, QString(rjob->JobStatus)); ++ item.setJobStatusFld(col++, QString((char *)&rjob->JobStatus)); + item.setTextFld(col++, QString(rjob->Storage)); + item.setNumericFld(col++, QString(edit_uint64(rjob->JobFiles, ed1))); + item.setBytesFld(col++, QString(edit_uint64(rjob->JobBytes, ed1))); +@@ -109,8 +109,8 @@ void DIRStatus::taskDone(task *t) + TableItemFormatter item(*status.tableTerminated, row++); + item.setNumericFld(col++, QString(edit_uint64(ljob->JobId, ed1))); + item.setTextFld(col++, QString(ljob->Job)); +- item.setJobLevelFld(col++, QString(ljob->JobLevel)); +- item.setJobStatusFld(col++, QString(ljob->JobStatus)); ++ item.setJobLevelFld(col++, QString((char *)&ljob->JobLevel)); ++ item.setJobStatusFld(col++, QString((char *)&ljob->JobStatus)); + item.setNumericFld(col++, QString(edit_uint64(ljob->JobFiles, ed1))); + item.setBytesFld(col++, QString(edit_uint64(ljob->JobBytes, ed1))); + item.setNumericFld(col++, QString(edit_uint64(ljob->Errors, ed1))); diff --git a/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_fdstatus_cpp b/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_fdstatus_cpp new file mode 100644 index 00000000000..fb22fb1b2ff --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_fdstatus_cpp @@ -0,0 +1,25 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/tray-monitor/fdstatus.cpp +--- src/qt-console/tray-monitor/fdstatus.cpp.orig ++++ src/qt-console/tray-monitor/fdstatus.cpp +@@ -76,7 +76,7 @@ void FDStatus::taskDone(task *t) + TableItemFormatter item(*status.tableRunning, row++); + item.setNumericFld(col++, QString(edit_uint64(rjob->JobId, ed1))); + item.setTextFld(col++, QString(rjob->Job)); +- item.setJobLevelFld(col++, QString(rjob->JobLevel)); ++ item.setJobLevelFld(col++, QString((char *)&rjob->JobLevel)); + item.setNumericFld(col++, QString(edit_uint64(rjob->JobFiles, ed1))); + item.setBytesFld(col++, QString(edit_uint64(rjob->JobBytes, ed1))); + item.setNumericFld(col++, QString(edit_uint64(rjob->Errors, ed1))); +@@ -107,8 +107,8 @@ void FDStatus::taskDone(task *t) + TableItemFormatter item(*status.tableTerminated, row++); + item.setNumericFld(col++, QString(edit_uint64(ljob->JobId, ed1))); + item.setTextFld(col++, QString(ljob->Job)); +- item.setJobLevelFld(col++, QString(ljob->JobLevel)); +- item.setJobStatusFld(col++, QString(ljob->JobStatus)); ++ item.setJobLevelFld(col++, QString((char *)&ljob->JobLevel)); ++ item.setJobStatusFld(col++, QString((char *)&ljob->JobStatus)); + item.setNumericFld(col++, QString(edit_uint64(ljob->JobFiles, ed1))); + item.setBytesFld(col++, QString(edit_uint64(ljob->JobBytes, ed1))); + item.setNumericFld(col++, QString(edit_uint64(ljob->Errors, ed1))); diff --git a/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_fileselectwizardpage_cpp b/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_fileselectwizardpage_cpp new file mode 100644 index 00000000000..378168a83b4 --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_fileselectwizardpage_cpp @@ -0,0 +1,14 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/tray-monitor/fileselectwizardpage.cpp +--- src/qt-console/tray-monitor/fileselectwizardpage.cpp.orig ++++ src/qt-console/tray-monitor/fileselectwizardpage.cpp +@@ -237,7 +237,7 @@ void FileSelectWizardPage::changeCurrentFolder(const Q + if (m_currentPathStr == "/") { + m_currentPathStr = ""; + } else { +- m_currentPathStr.remove(QRegExp("[^/]+/$")); ++ m_currentPathStr.remove(QRegularExpression("[^/]+/$")); + } + + } else if (path == "/" && m_currentPathStr == "") { diff --git a/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_runjob_cpp b/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_runjob_cpp new file mode 100644 index 00000000000..edaf7d0dbc1 --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_runjob_cpp @@ -0,0 +1,14 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/tray-monitor/runjob.cpp +--- src/qt-console/tray-monitor/runjob.cpp.orig ++++ src/qt-console/tray-monitor/runjob.cpp +@@ -414,7 +414,7 @@ void TSched::timerEvent(QTimerEvent *event) + msgbox.setText(QString("The job \"%1\" will start automatically in few seconds...").arg(parser.argv[i])); + msgbox.setStandardButtons(QMessageBox::Ok | QMessageBox::Ignore); + msgbox.setDefaultButton(QMessageBox::Ok); +- msgbox.button(QMessageBox::Ok)->animateClick(6000); ++ msgbox.button(QMessageBox::Ok)->animateClick(); + } + switch(msgbox.exec()) { + case QMessageBox::Ok: diff --git a/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_sdstatus_cpp b/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_sdstatus_cpp new file mode 100644 index 00000000000..ce8134c78fc --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_sdstatus_cpp @@ -0,0 +1,25 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/tray-monitor/sdstatus.cpp +--- src/qt-console/tray-monitor/sdstatus.cpp.orig ++++ src/qt-console/tray-monitor/sdstatus.cpp +@@ -75,7 +75,7 @@ void SDStatus::taskDone(task *t) + TableItemFormatter item(*status.tableRunning, row++); + item.setNumericFld(col++, QString(edit_uint64(rjob->JobId, ed1))); + item.setTextFld(col++, QString(rjob->Job)); +- item.setJobLevelFld(col++, QString(rjob->JobLevel)); ++ item.setJobLevelFld(col++, QString((char *)&rjob->JobLevel)); + item.setTextFld(col++, QString(rjob->Client)); + item.setTextFld(col++, QString(rjob->Storage)); + item.setNumericFld(col++, QString(edit_uint64(rjob->JobFiles, ed1))); +@@ -107,8 +107,8 @@ void SDStatus::taskDone(task *t) + TableItemFormatter item(*status.tableTerminated, row++); + item.setNumericFld(col++, QString(edit_uint64(ljob->JobId, ed1))); + item.setTextFld(col++, QString(ljob->Job)); +- item.setJobLevelFld(col++, QString(ljob->JobLevel)); +- item.setJobStatusFld(col++, QString(ljob->JobStatus)); ++ item.setJobLevelFld(col++, QString((char *)&ljob->JobLevel)); ++ item.setJobStatusFld(col++, QString((char *)&ljob->JobStatus)); + item.setNumericFld(col++, QString(edit_uint64(ljob->JobFiles, ed1))); + item.setBytesFld(col++, QString(edit_uint64(ljob->JobBytes, ed1))); + item.setNumericFld(col++, QString(edit_uint64(ljob->Errors, ed1))); diff --git a/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_task_cpp b/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_task_cpp new file mode 100644 index 00000000000..d9e31dfd5b2 --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_task_cpp @@ -0,0 +1,49 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/tray-monitor/task.cpp +--- src/qt-console/tray-monitor/task.cpp.orig ++++ src/qt-console/tray-monitor/task.cpp +@@ -913,14 +913,14 @@ bool task::get_client_jobs(const char* client) + res->bs->fsend(".bvfs_get_jobs client=%s\n", client); + while (get_next_line(res)) { + QString line(curline); +- QStringList line_lst = line.split(" ", QString::SkipEmptyParts); ++ QStringList line_lst = line.split(" ", Qt::SkipEmptyParts); + + model->setItem(row, 0, new QStandardItem(line_lst[0])); + + model->setItem(row, 1, new QStandardItem(line_lst[3])); + + QDateTime date; +- date.setTime_t(line_lst[1].toUInt()); ++ date.setSecsSinceEpoch(line_lst[1].toUInt()); + QStandardItem *dateItem = new QStandardItem(); + dateItem->setData(date, Qt::DisplayRole); + model->setItem(row, 3, dateItem); +@@ -1027,7 +1027,7 @@ bool task::get_job_files(const char* job, uint64_t pat + //+ " limit=" + limit + " offset=" + offset ; + while (get_next_line(res)) { + QString line(curline); +- QStringList line_lst = line.split("\t", QString::KeepEmptyParts); ++ QStringList line_lst = line.split("\t", Qt::KeepEmptyParts); + if ((line_lst.size() == 6) && line_lst[5] != ".") + { + DirectoryItem *d = new DirectoryItem(); +@@ -1063,7 +1063,7 @@ bool task::get_job_files(const char* job, uint64_t pat + + while (get_next_line(res)) { + QString line(curline); +- QStringList line_lst = line.split("\t", QString::SkipEmptyParts); ++ QStringList line_lst = line.split("\t", Qt::SkipEmptyParts); + if ((line_lst.size() == 6) && line_lst[5] != ".") + { + FileItem *f = new FileItem(); +@@ -1424,7 +1424,7 @@ QString task::parse_plugins(const QString& jobIds, con + while (get_next_line(res)) { + QString line(curline); + line = line.simplified(); +- QStringList line_lst = line.split(":", QString::SkipEmptyParts); ++ QStringList line_lst = line.split(":", Qt::SkipEmptyParts); + + if (!line_lst.empty() && fieldName.compare(line_lst[0]) == 0) { + sl << line_lst[1]; diff --git a/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_tray-ui_h b/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_tray-ui_h new file mode 100644 index 00000000000..cb1c734a2a7 --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_tray-monitor_tray-ui_h @@ -0,0 +1,23 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/tray-monitor/tray-ui.h +--- src/qt-console/tray-monitor/tray-ui.h.orig ++++ src/qt-console/tray-monitor/tray-ui.h +@@ -347,7 +347,7 @@ private slots: + } + if (dirs.count() > 1) { + /* TODO: Set Modal attribute */ +- QString dir = QInputDialog::getItem(this, _("Select a Director"), "Director:", dirs, 0, false, &ok, 0); ++ QString dir = QInputDialog::getItem(this, _("Select a Director"), "Director:", dirs, 0, false, &ok, Qt::Widget); + if (!ok) { + return NULL; + } +@@ -410,7 +410,7 @@ private slots: + if (oldnbjobs) { + QString q; + tray->setIcon(QIcon(":/images/R.png")); +- tray->setToolTip(q.sprintf("Bacula Tray Monitor - %d job%s running", oldnbjobs, oldnbjobs>1?"s":"")); ++ tray->setToolTip(q.asprintf("Bacula Tray Monitor - %d job%s running", oldnbjobs, oldnbjobs>1?"s":"")); + //tray->showMessage(); Can use this function to display a popup + + } else { diff --git a/sysutils/bacula/patches/patch-src_qt-console_util_comboutil_h b/sysutils/bacula/patches/patch-src_qt-console_util_comboutil_h new file mode 100644 index 00000000000..21afc39f8df --- /dev/null +++ b/sysutils/bacula/patches/patch-src_qt-console_util_comboutil_h @@ -0,0 +1,14 @@ +bacula-15.0.3-qt6-gentoo.patch from https://dev.gentoo.org/~tomjbe/distfiles/ + +Index: src/qt-console/util/comboutil.h +--- src/qt-console/util/comboutil.h.orig ++++ src/qt-console/util/comboutil.h +@@ -24,7 +24,7 @@ + + class QComboBox; + class QString; +-class QStringList; ++//class QStringList; + + /* selects value val on combo, if exists */ + void comboSel(QComboBox *combo, const QString &val);