diff options
44 files changed, 1875 insertions, 58 deletions
diff --git a/freefilesync/debian/changelog b/freefilesync/debian/changelog index 4b1a593..fbdcbf7 100644 --- a/freefilesync/debian/changelog +++ b/freefilesync/debian/changelog @@ -1,3 +1,35 @@ +freefilesync (11.1-2+devuan) obs; urgency=low + + * add traditional option to main grid view + + -- Ben Stack <bgstack15@gmail.com> Sun, 06 Sep 2020 20:59:36 -0400 + +freefilesync (11.1-1+devuan) obs; urgency=low + + * [bgstack15] still has the broken file tree layout + * New file group layout on main grid (reloaded) + * Alternate colors for main grid folder groups + * Added file group context menu + * Quick selection of items in folder group + * Fixed FTP access errors with Explicit SSL/TLS + * Fixed Google Drive error when double quotes in file name + * Fixed RTL layout bug with number input control + * Fixed grid column default sizes + * Fixed grid rendering performance during mouse scrolling + * Update all config files transactionally + * Respect user-preferred number/time format (Linux) + * Fixed floating panels not being resizable (Linux) + * Instantly open selection context menu on right mouse button down + * Further improved high DPI support + * Updated deprecated system API calls (requires macOS 10.10 or later) + * Fixed crash when accessing Nexis storage (macOS) + * Avoid buffer flush when aborting native file output + * Clear preview after folder history selection + * Pre-allocate target file without setting size + * Unified system error message formatting + + -- Ben Stack <bgstack15@gmail.com> Tue, 01 Sep 2020 20:33:42 -0400 + freefilesync (11.0-1+devuan) obs; urgency=medium * Revised file layout on main grid diff --git a/freefilesync/debian/freefilesync+devuan.dsc b/freefilesync/debian/freefilesync+devuan.dsc index 32c4ba9..e6a707d 100644 --- a/freefilesync/debian/freefilesync+devuan.dsc +++ b/freefilesync/debian/freefilesync+devuan.dsc @@ -2,7 +2,7 @@ Format: 3.0 (quilt) Source: freefilesync Binary: freefilesync Architecture: any -Version: 11.0-1+devuan +Version: 11.1-2+devuan Maintainer: B Stack <bgstack15@gmail.com> Homepage: https://freefilesync.org/ Standards-Version: 4.1.4 diff --git a/freefilesync/debian/patches/ffs_devuan_gtk3.patch b/freefilesync/debian/patches/ffs_devuan_gtk3.patch index 16268d1..8a5e83e 100644 --- a/freefilesync/debian/patches/ffs_devuan_gtk3.patch +++ b/freefilesync/debian/patches/ffs_devuan_gtk3.patch @@ -1,8 +1,7 @@ Author: B Stack Source: Original research -Date: 2020-03-18 -Message: Main patch to compile on Devuan using GTK3. BROKEN for FreeFileSync 10.21! -This reintroduces the gtk-3 usage, because Debian/Devuan stopped packaging libwxgtk3.0-dev (which used gtk2) and only does libwxgtk3.0-gtk3-dev. However, by reintroducing the gtk3, it brings back the old gtk3 instability from my previous packaging effort: https://freefilesync.org/forum/viewtopic.php?t=4918. /mnt/public/packages/old/freefilesync/freefilesync-9.7-1.master.tgz. Upstream never replied, but did note in the source that gtk3 is inherently unstable. +Date: 2020-08-31 +Message: Main patch to compile on Devuan using GTK3. diff -x '*.swp' -x '.git*' -x '*.orig' -x '*.rej' -Naur 10.18-0/FreeFileSync/Source/Makefile 10.18-1/FreeFileSync/Source/Makefile --- 10.11-0/FreeFileSync/Source/Makefile 2019-04-12 08:05:57.000000000 -0400 +++ 10.18-1/FreeFileSync/Source/Makefile 2019-11-21 09:42:57.408243242 -0500 @@ -35,15 +34,3 @@ diff -x '*.rej' -x '*.orig' -x '*.git*' -Naur 10.24-0/FreeFileSync/Source/RealTi cppFiles= cppFiles+=application.cpp -diff -x '*.swp' -x '.git*' -x '*.orig' -x '*.rej' -Naur 10.18-0/wx+/dc.h 10.18-1/wx+/dc.h ---- 10.18-0/wx+/dc.h 2019-11-21 08:24:23.967769384 -0500 -+++ 10.18-1/wx+/dc.h 2019-11-21 09:42:12.779786504 -0500 -@@ -54,7 +54,7 @@ - #ifdef wxHAVE_DPI_INDEPENDENT_PIXELS //pulled from wx/window.h: https://github.com/wxWidgets/wxWidgets/blob/master/include/wx/window.h#L2029 - return d; //e.g. macOS, GTK3 - #else //https://github.com/wxWidgets/wxWidgets/blob/master/src/common/wincmn.cpp#L2865 -- static_assert(GTK_MAJOR_VERSION == 2); -+ static_assert(GTK_MAJOR_VERSION == 3); - //GTK2 doesn't properly support high DPI: https://freefilesync.org/forum/viewtopic.php?t=6114 - //=> requires general fix at wxWidgets-level - assert(wxTheApp); //only call after wxWidgets was initalized! diff --git a/freefilesync/debian/patches/ffs_no_check_updates.patch b/freefilesync/debian/patches/ffs_no_check_updates.patch index 62f4e7e..fcbeb97 100644 --- a/freefilesync/debian/patches/ffs_no_check_updates.patch +++ b/freefilesync/debian/patches/ffs_no_check_updates.patch @@ -1,7 +1,7 @@ -diff --exclude '*.orig' -Naur 10.14-0/FreeFileSync/Source/ui/main_dlg.cpp 10.14-1/FreeFileSync/Source/ui/main_dlg.cpp ---- 10.9-0/FreeFileSync/Source/ui/main_dlg.cpp 2019-02-10 22:01:42.029158919 -0500 -+++ 11.0-1/FreeFileSync/Source/ui/main_dlg.cpp 2020-07-22 11:49:13.747407290 -0400 -@@ -5538,7 +5538,7 @@ +diff -x '*.orig' -x '*.rej' -Naur 11.1-0/FreeFileSync/Source/ui/main_dlg.cpp 11.1-1/FreeFileSync/Source/ui/main_dlg.cpp +--- 11.1-0/FreeFileSync/Source/ui/main_dlg.cpp 2020-08-31 20:04:21.621863187 -0400 ++++ 11.1-1/FreeFileSync/Source/ui/main_dlg.cpp 2020-08-31 20:55:07.732089665 -0400 +@@ -5606,7 +5606,7 @@ globalCfg_.gui.lastUpdateCheck = 0; //reset to GlobalSettings.xml default value! m_menuItemCheckVersionAuto->Check(updateCheckActive(globalCfg_.gui.lastUpdateCheck)); @@ -10,7 +10,7 @@ diff --exclude '*.orig' -Naur 10.14-0/FreeFileSync/Source/ui/main_dlg.cpp 10.14- if (shouldRunAutomaticUpdateCheck(globalCfg_.gui.lastUpdateCheck)) { flashStatusInformation(_("Searching for program updates...")); -@@ -5546,6 +5546,7 @@ +@@ -5614,6 +5614,7 @@ automaticUpdateCheckEval(this, globalCfg_.gui.lastUpdateCheck, globalCfg_.gui.lastOnlineVersion, automaticUpdateCheckRunAsync(automaticUpdateCheckPrepare(*this).get()).get()); } @@ -18,16 +18,15 @@ diff --exclude '*.orig' -Naur 10.14-0/FreeFileSync/Source/ui/main_dlg.cpp 10.14- } -@@ -5553,7 +5554,7 @@ - { - //execute just once per startup! - Disconnect(wxEVT_IDLE, wxIdleEventHandler(MainDialog::OnRegularUpdateCheck), nullptr, this); -- +@@ -5623,6 +5624,7 @@ + [[maybe_unused]] bool ubOk = Unbind(wxEVT_IDLE, &MainDialog::onRegularUpdateCheck, this); + assert(ubOk); + + /* if (shouldRunAutomaticUpdateCheck(globalCfg_.gui.lastUpdateCheck)) { flashStatusInformation(_("Searching for program updates...")); -@@ -5567,6 +5568,7 @@ +@@ -5636,6 +5638,7 @@ resultAsync.get()); //run on main thread: }); } @@ -35,10 +34,10 @@ diff --exclude '*.orig' -Naur 10.14-0/FreeFileSync/Source/ui/main_dlg.cpp 10.14- } -diff --exclude '*.orig' -Naur 10.14-0/FreeFileSync/Source/ui/version_check.cpp 10.14-1/FreeFileSync/Source/ui/version_check.cpp ---- 10.9-0/FreeFileSync/Source/ui/version_check.cpp 2019-02-10 22:01:42.126160041 -0500 -+++ 11.0-1/FreeFileSync/Source/ui/version_check.cpp 2020-07-22 11:43:36.895201090 -0400 -@@ -69,6 +69,8 @@ +diff -x '*.orig' -x '*.rej' -Naur 11.1-0/FreeFileSync/Source/ui/version_check.cpp 11.1-1/FreeFileSync/Source/ui/version_check.cpp +--- 11.1-0/FreeFileSync/Source/ui/version_check.cpp 2020-08-31 20:04:21.573862614 -0400 ++++ 11.1-1/FreeFileSync/Source/ui/version_check.cpp 2020-08-31 20:48:08.102811585 -0400 +@@ -70,6 +70,8 @@ bool fff::shouldRunAutomaticUpdateCheck(time_t lastUpdateCheck) { @@ -47,7 +46,7 @@ diff --exclude '*.orig' -Naur 10.14-0/FreeFileSync/Source/ui/version_check.cpp 1 if (lastUpdateCheck == getVersionCheckInactiveId()) return false; -@@ -159,8 +161,7 @@ +@@ -155,8 +157,7 @@ { try { @@ -56,8 +55,8 @@ diff --exclude '*.orig' -Naur 10.14-0/FreeFileSync/Source/ui/version_check.cpp 1 + const std::string buf = ""; updateDetailsMsg = utfTo<std::wstring>(buf); } - catch (const zen::SysError& e) { throw FileError(_("Failed to retrieve update information."), e.toString()); } -@@ -189,8 +190,7 @@ + catch (const SysError& e) { throw FileError(_("Failed to retrieve update information."), e.toString()); } +@@ -185,8 +186,7 @@ std::string getOnlineVersion(const std::vector<std::pair<std::string, std::string>>& postParams) //throw SysError { @@ -67,7 +66,7 @@ diff --exclude '*.orig' -Naur 10.14-0/FreeFileSync/Source/ui/version_check.cpp 1 return trimCpy(response); } -@@ -237,13 +237,13 @@ +@@ -233,13 +233,13 @@ const std::string onlineVersion = getOnlineVersion(geHttpPostParameters(parent)); //throw SysError lastOnlineVersion = onlineVersion; @@ -83,6 +82,5 @@ diff --exclude '*.orig' -Naur 10.14-0/FreeFileSync/Source/ui/version_check.cpp 1 - setMainInstructions(_("FreeFileSync is up to date."))); + setMainInstructions(_("Use your package manager for any updates to FreeFileSync."))); } - catch (const zen::SysError& e) + catch (const SysError& e) { - diff --git a/freefilesync/debian/patches/ffs_traditional_view.patch b/freefilesync/debian/patches/ffs_traditional_view.patch new file mode 100644 index 0000000..e602033 --- /dev/null +++ b/freefilesync/debian/patches/ffs_traditional_view.patch @@ -0,0 +1,275 @@ +diff --git a/FreeFileSync/Source/ui/file_grid.cpp b/FreeFileSync/Source/ui/file_grid.cpp +index 4ee72b97..d9b9a4c7 100644 +--- a/FreeFileSync/Source/ui/file_grid.cpp ++++ b/FreeFileSync/Source/ui/file_grid.cpp +@@ -437,6 +437,7 @@ private: + case ItemPathFormat::relative: + return utfTo<std::wstring>(fsObj->getRelativePath<side>()); + case ItemPathFormat::full: ++ case ItemPathFormat::traditional: + return AFS::getDisplayPath(fsObj->getAbstractPath<side>()); + } + assert(false); +@@ -615,6 +616,16 @@ private: + else //=> BaseFolderPair + groupParentFolder = AFS::getDisplayPath(pdi.fsObj->base().getAbstractPath<side>()); + break; ++ case ItemPathFormat::traditional: ++ if (auto groupFolder = dynamic_cast<const FolderPair*>(pdi.folderGroupObj)) ++ { ++ groupName = utfTo<std::wstring>(groupFolder->template getItemName<side>()); ++ groupParentFolder = AFS::getDisplayPath(groupFolder->parent().template getAbstractPath<side>()) + \ ++ FILE_NAME_SEPARATOR + utfTo<std::wstring>(groupFolder->template getItemName<side>()); ++ } ++ else //=> BaseFolderPair ++ groupParentFolder = AFS::getDisplayPath(pdi.fsObj->base().getAbstractPath<side>()); ++ break; + } + //add slashes for better readability + assert(!contains(groupParentFolder, L'/') || !contains(groupParentFolder, L'\\')); +@@ -650,72 +661,84 @@ private: + int widthGroupName = groupName .empty() ? 0 : ((iconMgr ? iconSize + gridGap_ : 0) + getTextExtentBuffered(dc, groupName).x + (iconMgr ? gridGap_ : 0)); + int widthGroupItems = (iconMgr ? iconSize + gridGap_ : 0) + groupItemNamesWidth; + +- //not enough space? => collapse +- if (int excessWidth = gridGap_ + widthGroupParent + widthGroupName + widthGroupItems - maxWidth; +- excessWidth > 0) ++ switch (itemPathFormat_) + { +- if (multiItemGroup && !groupParentFolder.empty() && !groupName.empty()) +- { +- //1. render group components on two rows +- stackedGroupRender = true; +- +- if (!endsWith(groupParentFolder, L'/' ) && +- !endsWith(groupParentFolder, L'\\')) +- groupParentFolder += groupParentSep; +- groupParentFolder += ELLIPSIS; +- +- widthGroupParent = getTextExtentBuffered(dc, groupParentFolder).x + gridGap_; +- +- int widthGroupStack = std::max(widthGroupParent, widthGroupName); +- excessWidth = gridGap_ + widthGroupStack + widthGroupItems - maxWidth; +- +- if (excessWidth > 0) +- { +- //2. shrink group stack (group parent only) +- if (widthGroupParent > widthGroupName) +- { +- widthGroupStack = widthGroupParent = std::max(widthGroupParent - excessWidth, widthGroupName); +- excessWidth = gridGap_ + widthGroupStack + widthGroupItems - maxWidth; +- } +- if (excessWidth > 0) +- { +- //3. shrink item rendering +- widthGroupItems = std::max(widthGroupItems - excessWidth, (iconMgr ? iconSize + gridGap_ : 0) + ellipsisWidth); +- excessWidth = gridGap_ + widthGroupStack + widthGroupItems - maxWidth; +- +- if (excessWidth > 0) +- { +- //4. shrink group stack +- widthGroupStack = std::max(widthGroupStack - excessWidth, (iconMgr ? iconSize + gridGap_ : 0) + ellipsisWidth + (iconMgr ? gridGap_ : 0)); +- +- widthGroupParent = std::min(widthGroupParent, widthGroupStack); +- widthGroupName = std::min(widthGroupName, widthGroupStack); +- } +- } +- } +- } +- else //group details on single row +- { +- //1. shrink group parent +- if (!groupParentFolder.empty()) +- { +- widthGroupParent = std::max(widthGroupParent - excessWidth, ellipsisWidth + (iconMgr ? gridGap_ : 0)); +- excessWidth = gridGap_ + widthGroupParent + widthGroupName + widthGroupItems - maxWidth; +- } +- if (excessWidth > 0) +- { +- //2. shrink item rendering +- widthGroupItems = std::max(widthGroupItems - excessWidth, (iconMgr ? iconSize + gridGap_ : 0) + ellipsisWidth); +- excessWidth = gridGap_ + widthGroupParent + widthGroupName + widthGroupItems - maxWidth; +- +- if (excessWidth > 0) +- //3. shrink group name +- if (!groupName.empty()) +- widthGroupName = std::max(widthGroupName - excessWidth, (iconMgr ? iconSize + gridGap_ : 0) + ellipsisWidth + (iconMgr ? gridGap_ : 0)); +- } +- } ++ case ItemPathFormat::traditional: ++ //widthGroupName = 0; ++ widthGroupParent -= widthGroupName ; ++ break; ++ case ItemPathFormat::name: ++ case ItemPathFormat::relative: ++ case ItemPathFormat::full: ++ default: ++ // the insane logic of the new views ++ //not enough space? => collapse ++ if (int excessWidth = gridGap_ + widthGroupParent + widthGroupName + widthGroupItems - maxWidth; ++ excessWidth > 0) ++ { ++ if (multiItemGroup && !groupParentFolder.empty() && !groupName.empty()) ++ { ++ //1. render group components on two rows ++ stackedGroupRender = true; ++ ++ if (!endsWith(groupParentFolder, L'/' ) && ++ !endsWith(groupParentFolder, L'\\')) ++ groupParentFolder += groupParentSep; ++ groupParentFolder += ELLIPSIS; ++ ++ widthGroupParent = getTextExtentBuffered(dc, groupParentFolder).x + gridGap_; ++ ++ int widthGroupStack = std::max(widthGroupParent, widthGroupName); ++ excessWidth = gridGap_ + widthGroupStack + widthGroupItems - maxWidth; ++ ++ if (excessWidth > 0) ++ { ++ //2. shrink group stack (group parent only) ++ if (widthGroupParent > widthGroupName) ++ { ++ widthGroupStack = widthGroupParent = std::max(widthGroupParent - excessWidth, widthGroupName); ++ excessWidth = gridGap_ + widthGroupStack + widthGroupItems - maxWidth; ++ } ++ if (excessWidth > 0) ++ { ++ //3. shrink item rendering ++ widthGroupItems = std::max(widthGroupItems - excessWidth, (iconMgr ? iconSize + gridGap_ : 0) + ellipsisWidth); ++ excessWidth = gridGap_ + widthGroupStack + widthGroupItems - maxWidth; ++ ++ if (excessWidth > 0) ++ { ++ //4. shrink group stack ++ widthGroupStack = std::max(widthGroupStack - excessWidth, (iconMgr ? iconSize + gridGap_ : 0) + ellipsisWidth + (iconMgr ? gridGap_ : 0)); ++ ++ widthGroupParent = std::min(widthGroupParent, widthGroupStack); ++ widthGroupName = std::min(widthGroupName, widthGroupStack); ++ } ++ } ++ } ++ } ++ else //group details on single row ++ { ++ //1. shrink group parent ++ if (!groupParentFolder.empty()) ++ { ++ widthGroupParent = std::max(widthGroupParent - excessWidth, ellipsisWidth + (iconMgr ? gridGap_ : 0)); ++ excessWidth = gridGap_ + widthGroupParent + widthGroupName + widthGroupItems - maxWidth; ++ } ++ if (excessWidth > 0) ++ { ++ //2. shrink item rendering ++ widthGroupItems = std::max(widthGroupItems - excessWidth, (iconMgr ? iconSize + gridGap_ : 0) + ellipsisWidth); ++ excessWidth = gridGap_ + widthGroupParent + widthGroupName + widthGroupItems - maxWidth; ++ ++ if (excessWidth > 0) ++ //3. shrink group name ++ if (!groupName.empty()) ++ widthGroupName = std::max(widthGroupName - excessWidth, (iconMgr ? iconSize + gridGap_ : 0) + ellipsisWidth + (iconMgr ? gridGap_ : 0)); ++ } ++ } ++ } ++ break; + } +- + return + { + itemName, +@@ -786,6 +809,9 @@ private: + rectGroup = rectGroupParent = rectGroupName = rectTmp; + + rectGroupParent.width = widthGroupParent; ++ // re-add back the width of groupname so that the directory name is clickable ++ if (itemPathFormat_ == ItemPathFormat::traditional) ++ rectGroupParent.width += widthGroupName; + rectGroupName .width = widthGroupName; + + if (stackedGroupRender) +@@ -837,7 +863,7 @@ private: + dc.GradientFillLinear(rectNav, getColorSelectionGradientFrom(), backCol, wxEAST); + } + +- if (!groupName.empty() && row == groupBeginRow) ++ if (!(itemPathFormat_ == ItemPathFormat::traditional) && !groupName.empty() && row == groupBeginRow) + { + wxDCTextColourChanger textColorGroupName(dc); + if (static_cast<HoverAreaGroup>(rowHover) == HoverAreaGroup::groupName) +@@ -855,9 +881,9 @@ private: + drawCellText(dc, rectGroupName, groupName, wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL, &getTextExtentBuffered(dc, groupName)); + } + +- if (!groupParentFolder.empty() && ++ if (itemPathFormat_ == ItemPathFormat::traditional || (!groupParentFolder.empty() && + ((stackedGroupRender && row == groupBeginRow + 1) || +- (!stackedGroupRender && row == groupBeginRow))) ++ (!stackedGroupRender && row == groupBeginRow)))) + { + drawCellText(dc, rectGroupParent, groupParentFolder, wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL, &getTextExtentBuffered(dc, groupParentFolder)); + } +@@ -1020,6 +1046,8 @@ private: + return _("Relative path"); + case ItemPathFormat::full: + return _("Full path"); ++ case ItemPathFormat::traditional: ++ return _("Traditional"); + } + assert(false); + break; +diff --git a/FreeFileSync/Source/ui/file_grid_attr.h b/FreeFileSync/Source/ui/file_grid_attr.h +index 324619c1..7511a1ab 100644 +--- a/FreeFileSync/Source/ui/file_grid_attr.h ++++ b/FreeFileSync/Source/ui/file_grid_attr.h +@@ -79,6 +79,7 @@ enum class ItemPathFormat + name, + relative, + full, ++ traditional, + }; + + const ItemPathFormat defaultItemPathFormatLeftGrid = ItemPathFormat::relative; +diff --git a/FreeFileSync/Source/ui/main_dlg.cpp b/FreeFileSync/Source/ui/main_dlg.cpp +index 491b7321..2d5c20c3 100644 +--- a/FreeFileSync/Source/ui/main_dlg.cpp ++++ b/FreeFileSync/Source/ui/main_dlg.cpp +@@ -2716,6 +2716,7 @@ void MainDialog::onGridLabelContextRim(bool leftSide) + addFormatEntry(_("Item name" ), ItemPathFormat::name); + addFormatEntry(_("Relative path"), ItemPathFormat::relative); + addFormatEntry(_("Full path" ), ItemPathFormat::full); ++ addFormatEntry(_("Traditional" ), ItemPathFormat::traditional); + + //---------------------------------------------------------------------------------------------- + menu.addSeparator(); +diff -x .git -Naur 11.1-1/FreeFileSync/Source/config.cpp 11.1-2/FreeFileSync/Source/config.cpp +--- 11.1-1/FreeFileSync/Source/config.cpp 2020-09-01 19:07:43.715122167 -0400 ++++ 11.1-2/FreeFileSync/Source/config.cpp 2020-09-10 09:38:14.539542699 -0400 +@@ -528,6 +528,9 @@ + case ItemPathFormat::full: + output = "Full"; + break; ++ case ItemPathFormat::traditional: ++ output = "Traditional"; ++ break; + } + } + +@@ -541,6 +545,8 @@ + value = ItemPathFormat::relative; + else if (tmp == "Full") + value = ItemPathFormat::full; ++ else if (tmp == "Traditional") ++ value = ItemPathFormat::traditional; + else + return false; + return true; +diff -x .git -Naur 11.1-1/FreeFileSync/Source/ui/file_view.cpp 11.1-2/FreeFileSync/Source/ui/file_view.cpp +--- 11.1-1/FreeFileSync/Source/ui/file_view.cpp 2020-09-01 19:07:43.719122215 -0400 ++++ 11.1-2/FreeFileSync/Source/ui/file_view.cpp 2020-09-10 09:40:11.609044834 -0400 +@@ -798,6 +798,7 @@ + break; + + case ItemPathFormat::full: ++ case ItemPathFormat::traditional: + if ( ascending && onLeft) std::sort(sortedRef_.begin(), sortedRef_.end(), LessFullPath<true, LEFT_SIDE>(folderPairs_)); + else if ( ascending && !onLeft) std::sort(sortedRef_.begin(), sortedRef_.end(), LessFullPath<true, RIGHT_SIDE>(folderPairs_)); + else if (!ascending && onLeft) std::sort(sortedRef_.begin(), sortedRef_.end(), LessFullPath<false, LEFT_SIDE>(folderPairs_)); diff --git a/freefilesync/debian/patches/revert_zenju_aggressive_upstreamisms.patch b/freefilesync/debian/patches/revert_zenju_aggressive_upstreamisms.patch index 8ca60c2..12a1b43 100644 --- a/freefilesync/debian/patches/revert_zenju_aggressive_upstreamisms.patch +++ b/freefilesync/debian/patches/revert_zenju_aggressive_upstreamisms.patch @@ -77,7 +77,7 @@ diff -x '*.rej' -x '*.orig' -x '*.git*' -Naur 10.24-0/wx+/choice_enum.h 10.24-1/ - const int selectedPos = ctrl.GetSelection(); + const Enum currentValue = getEnumVal(mapping, ctrl); -- if (0 <= selectedPos && selectedPos < static_cast<int>(mapping.descrList.size())) +- if (0 <= selectedPos && selectedPos < std::ssize(mapping.descrList)) - { - if (const auto& [text, tooltip] = mapping.descrList[selectedPos].second; - !tooltip.empty()) @@ -92,3 +92,223 @@ diff -x '*.rej' -x '*.orig' -x '*.git*' -Naur 10.24-0/wx+/choice_enum.h 10.24-1/ } } + +Version: 11.1 +Message: this one is really just a fix of Zenju's sloppy Makefile. He'll figure it out on his own for v11.2. If I tell him now, he'll replace the source tarball for 11.1 which will mess up everyone's checksums. +diff -x '*.orig' -x '*.rej' -aur 11.1-1/FreeFileSync/Source/Makefile 11.1-2/FreeFileSync/Source/Makefile +--- 11.1-1/FreeFileSync/Source/Makefile 2020-09-01 20:07:26.751011466 -0400 ++++ 11.1-2/FreeFileSync/Source/Makefile 2020-09-01 20:17:31.030611773 -0400 +@@ -95,6 +95,7 @@ + cppFiles+=../../zen/shutdown.cpp + cppFiles+=../../zen/sys_error.cpp + cppFiles+=../../zen/sys_info.cpp ++cppFiles+=../../zen/sys_version.cpp + cppFiles+=../../zen/thread.cpp + cppFiles+=../../zen/zlib_wrap.cpp + cppFiles+=../../wx+/file_drop.cpp +Message: Now have to revert wxWidgets 3.1.4 upstreamisms +cd 11.1-0 ; git diff HEAD~1 -- $( grep -l -rIE 'wxASCII_STR' ) > ~/foo1 ; ( cd ../11.1-2 ; vi ~/foo1 $( grep -l -rIE 'wxASCII_STR' ) ; ) +cd 11.1-0 ; git diff HEAD~1 -- $( grep -l -rIE 'wxDD_SHOW_HIDDEN' ) > ~/foo1 ; ( cd ../11.1-2 ; vi ~/foo1 $( grep -l -rIE 'wxDD_SHOW_HIDDEN' ) ; ) +diff -x '*.orig' -x '*.rej' -aur 11.1-1/FreeFileSync/Source/RealTimeSync/folder_selector2.cpp 11.1-2/FreeFileSync/Source/RealTimeSync/folder_selector2.cpp +--- 11.1-1/FreeFileSync/Source/RealTimeSync/folder_selector2.cpp 2020-09-01 19:07:43.703122022 -0400 ++++ 11.1-2/FreeFileSync/Source/RealTimeSync/folder_selector2.cpp 2020-09-01 20:13:16.679447647 -0400 +@@ -145,7 +145,7 @@ + } + + Zstring newFolderPath; +- wxDirDialog dirPicker(parent_, _("Select a folder"), utfTo<wxString>(defaultFolderPath), wxDD_DEFAULT_STYLE | wxDD_SHOW_HIDDEN); ++ wxDirDialog dirPicker(parent_, _("Select a folder"), utfTo<wxString>(defaultFolderPath)); //put modal wxWidgets dialogs on stack: creating on freestore leads to memleak! + if (dirPicker.ShowModal() != wxID_OK) + return; + newFolderPath = utfTo<Zstring>(dirPicker.GetPath()); +diff -x '*.orig' -x '*.rej' -aur 11.1-1/FreeFileSync/Source/ui/command_box.h 11.1-2/FreeFileSync/Source/ui/command_box.h +--- 11.1-1/FreeFileSync/Source/ui/command_box.h 2020-09-01 19:07:43.719122215 -0400 ++++ 11.1-2/FreeFileSync/Source/ui/command_box.h 2020-09-01 20:09:56.840929352 -0400 +@@ -30,7 +30,7 @@ + const wxString choices[] = nullptr, + long style = 0, + const wxValidator& validator = wxDefaultValidator, +- const wxString& name = wxASCII_STR(wxComboBoxNameStr)); ++ const wxString& name = wxComboBoxNameStr); + + void setHistory(const std::vector<Zstring>& history, size_t historyMax) { history_ = history; historyMax_ = historyMax; } + std::vector<Zstring> getHistory() const { return history_; } +diff -x '*.orig' -x '*.rej' -aur 11.1-1/FreeFileSync/Source/ui/folder_history_box.h 11.1-2/FreeFileSync/Source/ui/folder_history_box.h +--- 11.1-1/FreeFileSync/Source/ui/folder_history_box.h 2020-09-01 19:07:43.719122215 -0400 ++++ 11.1-2/FreeFileSync/Source/ui/folder_history_box.h 2020-09-01 20:09:50.624849989 -0400 +@@ -68,7 +68,7 @@ + const wxString choices[] = nullptr, + long style = 0, + const wxValidator& validator = wxDefaultValidator, +- const wxString& name = wxASCII_STR(wxComboBoxNameStr)); ++ const wxString& name = wxComboBoxNameStr); + + void setHistory(std::shared_ptr<HistoryList> sharedHistory) { sharedHistory_ = std::move(sharedHistory); } + std::shared_ptr<HistoryList> getHistory() { return sharedHistory_; } +diff -x '*.orig' -x '*.rej' -aur 11.1-1/FreeFileSync/Source/ui/folder_selector.cpp 11.1-2/FreeFileSync/Source/ui/folder_selector.cpp +--- 11.1-1/FreeFileSync/Source/ui/folder_selector.cpp 2020-09-01 20:07:25.907000676 -0400 ++++ 11.1-2/FreeFileSync/Source/ui/folder_selector.cpp 2020-09-01 20:13:48.791852316 -0400 +@@ -227,9 +227,10 @@ + } + + Zstring shellItemPath; +- wxDirDialog dirPicker(parent_, _("Select a folder"), utfTo<wxString>(defaultFolderPath), wxDD_DEFAULT_STYLE | wxDD_SHOW_HIDDEN); +- //GTK2: "Show hidden" is also available as a context menu option in the folder picker! +- //It looks like wxDD_SHOW_HIDDEN only sets the default when opening for the first time!? ++ wxDirDialog dirPicker(parent_, _("Select a folder"), utfTo<wxString>(defaultFolderPath)); //put modal wxWidgets dialogs on stack: creating on freestore leads to memleak! ++ ++ //-> following doesn't seem to do anything at all! still "Show hidden" is available as a context menu option: ++ //::gtk_file_chooser_set_show_hidden(GTK_FILE_CHOOSER(dirPicker.m_widget), true /*show_hidden*/); + + if (dirPicker.ShowModal() != wxID_OK) + return; +diff -x '*.orig' -x '*.rej' -aur 11.1-1/wx+/bitmap_button.h 11.1-2/wx+/bitmap_button.h +--- 11.1-1/wx+/bitmap_button.h 2020-09-01 19:07:43.727122311 -0400 ++++ 11.1-2/wx+/bitmap_button.h 2020-09-01 20:10:31.385364671 -0400 +@@ -26,7 +26,7 @@ + const wxSize& size = wxDefaultSize, + long style = 0, + const wxValidator& validator = wxDefaultValidator, +- const wxString& name = wxASCII_STR(wxButtonNameStr)) : ++ const wxString& name = wxButtonNameStr) : + wxBitmapButton(parent, id, wxNullBitmap, pos, size, style, validator, name) + { + SetLabel(label); +diff -x '*.orig' -x '*.rej' -aur 11.1-1/wx+/dc.h 11.1-2/wx+/dc.h +--- 11.1-1/wx+/dc.h 2020-09-01 19:09:33.652448178 -0400 ++++ 11.1-2/wx+/dc.h 2020-09-01 20:08:43.183988180 -0400 +@@ -68,9 +68,6 @@ + inline + int fastFromDIP(int d) //like wxWindow::FromDIP (but tied to primary monitor and buffered) + { +-#ifndef wxHAVE_DPI_INDEPENDENT_PIXELS +-#error why is wxHAVE_DPI_INDEPENDENT_PIXELS not defined? +-#endif + //GTK2 doesn't properly support high DPI: https://freefilesync.org/forum/viewtopic.php?t=6114 + //=> requires general fix at wxWidgets-level + +diff -x '*.orig' -x '*.rej' -aur 11.1-1/wx+/graph.h 11.1-2/wx+/graph.h +--- 11.1-1/wx+/graph.h 2020-09-01 19:07:43.731122359 -0400 ++++ 11.1-2/wx+/graph.h 2020-09-01 20:10:36.541429649 -0400 +@@ -153,7 +153,7 @@ + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = wxTAB_TRAVERSAL | wxNO_BORDER, +- const wxString& name = wxASCII_STR(wxPanelNameStr)); ++ const wxString& name = wxPanelNameStr); + + class CurveAttributes + { +diff -x '*.orig' -x '*.rej' -aur 11.1-1/wx+/grid.cpp 11.1-2/wx+/grid.cpp +--- 11.1-1/wx+/grid.cpp 2020-09-01 20:07:24.418981662 -0400 ++++ 11.1-2/wx+/grid.cpp 2020-09-01 20:10:23.745268393 -0400 +@@ -268,7 +268,7 @@ + { + public: + SubWindow(Grid& parent) : +- wxWindow(&parent, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxWANTS_CHARS | wxBORDER_NONE, wxASCII_STR(wxPanelNameStr)), ++ wxWindow(&parent, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxWANTS_CHARS | wxBORDER_NONE, wxPanelNameStr), + parent_(parent) + { + Bind(wxEVT_PAINT, [this](wxPaintEvent& event) { onPaintEvent(event); }); +diff -x '*.orig' -x '*.rej' -aur 11.1-1/wx+/grid.h 11.1-2/wx+/grid.h +--- 11.1-1/wx+/grid.h 2020-09-01 19:07:43.731122359 -0400 ++++ 11.1-2/wx+/grid.h 2020-09-01 20:10:48.817584344 -0400 +@@ -149,7 +149,7 @@ + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = wxTAB_TRAVERSAL | wxNO_BORDER, +- const wxString& name = wxASCII_STR(wxPanelNameStr)); ++ const wxString& name = wxPanelNameStr); + + size_t getRowCount() const; + +diff -x '*.orig' -x '*.rej' -aur 11.1-1/wx+/toggle_button.h 11.1-2/wx+/toggle_button.h +--- 11.1-1/wx+/toggle_button.h 2020-09-01 19:07:43.731122359 -0400 ++++ 11.1-2/wx+/toggle_button.h 2020-09-01 20:10:44.629531569 -0400 +@@ -24,7 +24,7 @@ + const wxSize& size = wxDefaultSize, + long style = 0, + const wxValidator& validator = wxDefaultValidator, +- const wxString& name = wxASCII_STR(wxButtonNameStr)) : ++ const wxString& name = wxButtonNameStr) : + wxBitmapButton(parent, id, bitmap, pos, size, style, validator, name) {} + + //wxButton constructor +@@ -35,7 +35,7 @@ + const wxSize& size = wxDefaultSize, + long style = 0, + const wxValidator& validator = wxDefaultValidator, +- const wxString& name = wxASCII_STR(wxButtonNameStr)) : ++ const wxString& name = wxButtonNameStr) : + wxBitmapButton(parent, id, wxNullBitmap, pos, size, style, validator, name) + { + SetLabel(label); +Version: 11.1 +Message: Had to revert gui_status_handler.cpp and .h entirely to version 11.0 to avoid the wx 3.1.4-isms here. +diff --git a/FreeFileSync/Source/ui/gui_status_handler.cpp b/FreeFileSync/Source/ui/gui_status_handler.cpp +index 3cb6aaaa..9484af2c 100644 +--- a/FreeFileSync/Source/ui/gui_status_handler.cpp ++++ b/FreeFileSync/Source/ui/gui_status_handler.cpp +@@ -43,8 +43,8 @@ StatusHandlerTemporaryPanel::StatusHandlerTemporaryPanel(MainDialog& dlg, + mainDlg_.Update(); //don't wait until idle event! + + //register keys +- mainDlg_. Bind(wxEVT_CHAR_HOOK, &StatusHandlerTemporaryPanel::onLocalKeyEvent, this); +- mainDlg_.m_buttonCancel->Bind(wxEVT_COMMAND_BUTTON_CLICKED, &StatusHandlerTemporaryPanel::onAbortCompare, this); ++ mainDlg_.Connect(wxEVT_CHAR_HOOK, wxKeyEventHandler(StatusHandlerTemporaryPanel::OnKeyPressed), nullptr, this); ++ mainDlg_.m_buttonCancel->Connect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(StatusHandlerTemporaryPanel::OnAbortCompare), nullptr, this); + } + + +@@ -128,9 +128,8 @@ StatusHandlerTemporaryPanel::~StatusHandlerTemporaryPanel() + mainDlg_.auiMgr_.Update(); + + //unregister keys +- [[maybe_unused]] bool ubOk1 = mainDlg_. Unbind(wxEVT_CHAR_HOOK, &StatusHandlerTemporaryPanel::onLocalKeyEvent, this); +- [[maybe_unused]] bool ubOk2 = mainDlg_.m_buttonCancel->Unbind(wxEVT_COMMAND_BUTTON_CLICKED, &StatusHandlerTemporaryPanel::onAbortCompare, this); +- assert(ubOk1 && ubOk2); ++ mainDlg_.Disconnect(wxEVT_CHAR_HOOK, wxKeyEventHandler(StatusHandlerTemporaryPanel::OnKeyPressed), nullptr, this); ++ mainDlg_.m_buttonCancel->Disconnect(wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler(StatusHandlerTemporaryPanel::OnAbortCompare), nullptr, this); + + mainDlg_.compareStatus_->teardown(); + +@@ -314,20 +313,20 @@ void StatusHandlerTemporaryPanel::forceUiUpdateNoThrow() + } + + +-void StatusHandlerTemporaryPanel::onLocalKeyEvent(wxKeyEvent& event) ++void StatusHandlerTemporaryPanel::OnKeyPressed(wxKeyEvent& event) + { + const int keyCode = event.GetKeyCode(); + if (keyCode == WXK_ESCAPE) + { + wxCommandEvent dummy; +- onAbortCompare(dummy); ++ OnAbortCompare(dummy); + } + + event.Skip(); + } + + +-void StatusHandlerTemporaryPanel::onAbortCompare(wxCommandEvent& event) ++void StatusHandlerTemporaryPanel::OnAbortCompare(wxCommandEvent& event) + { + userRequestAbort(); + } +diff --git a/FreeFileSync/Source/ui/gui_status_handler.h b/FreeFileSync/Source/ui/gui_status_handler.h +index e8ed01e4..2a9e00d2 100644 +--- a/FreeFileSync/Source/ui/gui_status_handler.h ++++ b/FreeFileSync/Source/ui/gui_status_handler.h +@@ -41,8 +41,8 @@ public: + Result reportResults(); //noexcept!! + + private: +- void onLocalKeyEvent(wxKeyEvent& event); +- void onAbortCompare(wxCommandEvent& event); //handle abort button click ++ void OnKeyPressed(wxKeyEvent& event); ++ void OnAbortCompare(wxCommandEvent& event); //handle abort button click + void showStatsPanel(); + + MainDialog& mainDlg_; diff --git a/freefilesync/debian/patches/series b/freefilesync/debian/patches/series index 7ce7a97..7896b6e 100644 --- a/freefilesync/debian/patches/series +++ b/freefilesync/debian/patches/series @@ -8,3 +8,4 @@ ffs_libssh2.patch ffs_curl.patch revert_zenju_aggressive_upstreamisms.patch ffs_gcc.patch +ffs_traditional_view.patch diff --git a/palemoon-stackrpms-ublock-origin/palemoon-stackrpms-ublock-origin.spec b/palemoon-stackrpms-ublock-origin/palemoon-stackrpms-ublock-origin.spec index 88945e6..f58571e 100644 --- a/palemoon-stackrpms-ublock-origin/palemoon-stackrpms-ublock-origin.spec +++ b/palemoon-stackrpms-ublock-origin/palemoon-stackrpms-ublock-origin.spec @@ -4,7 +4,7 @@ #%%global app_id Name: %{app_name}-ublock-origin -Version: 1.16.4.24 +Version: 1.16.4.25 Release: 1 Summary: uBlock Origin installed to the system Pale Moon extensions directory @@ -51,6 +51,9 @@ rm -rf %{buildroot} %{moz_extensions}/*.xpi %changelog +* Tue Aug 25 2020 B Stack <bgstack15@gmail.com> - 1.16.4.25-1 +- Update + * Tue Aug 11 2020 B Stack <bgstack15@gmail.com> - 1.16.4.24-1 - Update diff --git a/palemoon-ublock-origin/debian/changelog b/palemoon-ublock-origin/debian/changelog index c987d2f..2ecbe1a 100644 --- a/palemoon-ublock-origin/debian/changelog +++ b/palemoon-ublock-origin/debian/changelog @@ -1,3 +1,9 @@ +palemoon-ublock-origin (1.16.4.25-1+devuan) obs; urgency=medium + + * Update + + -- B Stack <bgstack15@gmail.com> Tue, 25 Aug 2020 14:33:11 -0400 + palemoon-ublock-origin (1.16.4.24-1+devuan) obs; urgency=medium * Update diff --git a/palemoon-ublock-origin/palemoon-ublock-origin.spec b/palemoon-ublock-origin/palemoon-ublock-origin.spec index fa703e9..420954e 100644 --- a/palemoon-ublock-origin/palemoon-ublock-origin.spec +++ b/palemoon-ublock-origin/palemoon-ublock-origin.spec @@ -4,7 +4,7 @@ #%%global app_id Name: %{app_name}-ublock-origin -Version: 1.16.4.24 +Version: 1.16.4.25 Release: 1 Summary: uBlock Origin installed to the system Pale Moon extensions directory @@ -51,6 +51,9 @@ rm -rf %{buildroot} %{moz_extensions}/*.xpi %changelog +* Tue Aug 25 2020 B Stack <bgstack15@gmail.com> - 1.16.4.25-1 +- Update + * Tue Aug 11 2020 B Stack <bgstack15@gmail.com> - 1.16.4.24-1 - Update diff --git a/palemoon/README.md b/palemoon/README.md index 500a3b1..13fd5bf 100644 --- a/palemoon/README.md +++ b/palemoon/README.md @@ -19,5 +19,9 @@ Credit goes to so many sources and inspirations: * https://build.opensuse.org/package/view_file/network/palemoon/palemoon.spec?expand=1 * instructions for compiling on centos 6 and 7 http://developer.palemoon.org/Developer_Guide:Build_Instructions/Pale_Moon/Linux#head:CentOS_6 +Fold the debian changelog notes with: + + :'<,'>!fold -w 72 -s | sed -r -e 's/^([^ ])/ \1/' + # Differences from upstream None diff --git a/palemoon/debian/changelog b/palemoon/debian/changelog index 56054f4..a79d50c 100644 --- a/palemoon/debian/changelog +++ b/palemoon/debian/changelog @@ -1,3 +1,64 @@ +palemoon (28.13.0-4+devuan) obs; urgency=low + + * Import xfce-helper/palemoon.desktop from stevep@mxlinux.org release + + -- Ben Stack <bgstack15@gmail.com> Wed, 09 Sep 2020 14:43:04 -0400 + +palemoon (28.13.0-3+devuan) obs; urgency=medium + + * This is a compatibility, bugfix and security update. Special thanks + to our new code contributors this cycle (you know who you are)! + - Updated the included site-specific user-agent overrides for a + number of websites that need them. + - Rewritten the browser's padlock code to use more modern APIs and + provide more accurate security status indication. + - Now also with localized tooltips! + - Fixed a missing close button on the undo prompt after removing a + thumbnail from the QuickDial new tab page. + - Fixed an issue with the alternative stylesheet menu in the + browser's UI not working. + - Implemented the use of intrinsic aspect ratios for images to + improve layout during load and page positioning. + - Added a preference to the use of node.getRootNode and disabled by + default. See implementation notes. + - Added CSS -webkit-appearance as an alias for -moz-appearance to + improve compatibility with websites that only try to use + Chrome-specific keywords to style standard form elements. + - Updated the SQLite library to 3.33.0. + - Reinstated precise floating point precision model in JavaScript + for those alternate builders who foolishly try to use the inaccurate + "fast" model. + - Improved spec compliance of modular JavaScript use (ECMAScript + modules). + - Changed media errors to be a more generic response, and added a + preference (media.sourceErrorDetails.enabled) to enable detailed error + reporting of media errors for debugging purposes. + - Previously, detailed errors were provided by default which could + lead to privacy issues. + - Improved code stability of the AbortController implementation. + - Fixed a race condition in the secure connection library (NSS). + - Security issues fixed: CVE-2020-15664, CVE-2020-15666, + CVE-2020-15667, CVE-2020-15668 and CVE-2020-15669. + - Unified XUL Platform Mozilla Security Patch Summary: 4 fixed, 1 + defense-in-depth, 1 rejected, 9 not applicable. + * Implementation notes + - In 28.11.0 we introduced node.getRootNode because some websites + would fail with an error if this function was not present. + Unfortunately, this caused problems with other sites that (incorrectly) + assume Google WebComponents are available when this utility function is + present (feature detection gone wrong). While it is considered by some + to be part of the Google WebComponents implementation, it actually has + utility value outside of that use. Because of the problems caused, + we've added a preference and disabled it by default, fixing these kinds + of websites. + - When needed, you can re-enable this function with + dom.getRootNode.enabled + - This should improve web compatibility by default yet still allow + users to enable this function for websites that use its utility but do + not use WebComponents. + + -- Ben Stack <bgstack15@gmail.com> Fri, 04 Sep 2020 19:50:02 -0400 + palemoon (28.12.0-1+devuan) obs; urgency=medium * This is a development, bugfix and security update. diff --git a/palemoon/debian/control b/palemoon/debian/control index ccb8064..653be92 100644 --- a/palemoon/debian/control +++ b/palemoon/debian/control @@ -26,7 +26,7 @@ Homepage: http://www.palemoon.org/ Package: palemoon Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, - libavcodec54 | libavcodec-extra54 |libavcodec55 | libavcodec-extra55 | libavcodec56 | libavcodec-extra56 | libavcodec57 | libavcodec-extra57 | libavcodec58 | libavcodec-extra58 | libavcodec-ffmpeg56 | libavcodec-ffmpeg-extra56 + libavcodec54 | libavcodec-extra54 | libavcodec55 | libavcodec-extra55 | libavcodec56 | libavcodec-extra56 | libavcodec57 | libavcodec-extra57 | libavcodec58 | libavcodec-extra58 | libavcodec-ffmpeg56 | libavcodec-ffmpeg-extra56 Provides: gnome-www-browser, www-browser, x-www-browser Conflicts: palemoon-nonsse2 Replaces: palemoon-nonsse2 diff --git a/palemoon/debian/install b/palemoon/debian/install index b26e91b..f6a08b2 100644 --- a/palemoon/debian/install +++ b/palemoon/debian/install @@ -1,2 +1,3 @@ +debian/xfce-helper/palemoon.desktop usr/share/xfce4/helpers palemoon/branding/official/palemoon.desktop usr/share/applications debian/bgstack15-palemoon-prefs.js /usr/lib/palemoon/browser/defaults/preferences/ diff --git a/palemoon/debian/mozconfig b/palemoon/debian/mozconfig index 445c209..0d0a0a3 100644 --- a/palemoon/debian/mozconfig +++ b/palemoon/debian/mozconfig @@ -25,6 +25,7 @@ ac_add_options --enable-devtools ac_add_options --enable-jemalloc ac_add_options --with-pthreads ac_add_options --enable-strip +ac_add_options --enable-phoenix-extensions # Disables ac_add_options --disable-debug ac_add_options --disable-eme diff --git a/palemoon/debian/mozconfig-unstable b/palemoon/debian/mozconfig-unstable index aa04e06..6fd829e 100644 --- a/palemoon/debian/mozconfig-unstable +++ b/palemoon/debian/mozconfig-unstable @@ -25,6 +25,7 @@ ac_add_options --enable-devtools ac_add_options --enable-jemalloc ac_add_options --with-pthreads ac_add_options --enable-strip +ac_add_options --enable-phoenix-extensions # Disables ac_add_options --disable-debug ac_add_options --disable-eme diff --git a/palemoon/debian/palemoon_devuan.dsc b/palemoon/debian/palemoon+devuan.dsc index f1fd278..1897122 100644 --- a/palemoon/debian/palemoon_devuan.dsc +++ b/palemoon/debian/palemoon+devuan.dsc @@ -2,7 +2,7 @@ Format: 3.0 (quilt) Source: palemoon Binary: palemoon Architecture: any -Version: 28.12.0-1+devuan +Version: 28.13.0-4+devuan Maintainer: B Stack <bgstack15@gmail.com> Homepage: http://www.palemoon.org/ Standards-Version: 4.1.4 @@ -10,7 +10,7 @@ Build-Depends: debhelper (>= 12), autoconf2.13, libasound2-dev, libdbus-glib-1-d Package-List: palemoon deb web optional arch=any Files: - 00000000000000000000000000000000 1 palemoon_28.9.0.2.orig-platform.tar.gz - 00000000000000000000000000000000 1 palemoon_28.9.0.2.orig.tar.gz - 00000000000000000000000000000000 1 palemoon_28.9.0.2-1+devuan.debian.tar.xz + 00000000000000000000000000000000 1 palemoon.orig-platform.tar.gz + 00000000000000000000000000000000 1 palemoon.orig.tar.gz + 00000000000000000000000000000000 1 palemoon+devuan.debian.tar.xz Original-Maintainer: Steven Pusser <stevep@mxlinux.org> diff --git a/palemoon/debian/xfce-helper/palemoon.desktop b/palemoon/debian/xfce-helper/palemoon.desktop new file mode 100644 index 0000000..2b546c4 --- /dev/null +++ b/palemoon/debian/xfce-helper/palemoon.desktop @@ -0,0 +1,13 @@ +[Desktop Entry] +Version=1.0 +Encoding=UTF-8 +Icon=palemoon +Name=Pale Moon +NoDisplay=true +StartupNotify=false +Terminal=false +Type=X-XFCE-Helper +X-XFCE-Binaries=palemoon; +X-XFCE-Category=WebBrowser +X-XFCE-Commands=%B; +X-XFCE-CommandsWithParameter=%B "%s"; diff --git a/palemoon/palemoon-mozconfig b/palemoon/palemoon-mozconfig index e377731..4578798 100644 --- a/palemoon/palemoon-mozconfig +++ b/palemoon/palemoon-mozconfig @@ -26,6 +26,7 @@ ac_add_options --enable-av1 #ac_add_options --enable-shared-js ac_add_options --enable-strip ac_add_options --with-pthreads +ac_add_options --enable-phoenix-extensions ac_add_options --disable-tests ac_add_options --disable-debug diff --git a/palemoon/palemoon.spec b/palemoon/palemoon.spec index 87dac14..3ca9b8d 100644 --- a/palemoon/palemoon.spec +++ b/palemoon/palemoon.spec @@ -5,7 +5,7 @@ %global stackrpms_custom 1 # derive from inside the full source tree or from notes at https://github.com/MoonchildProductions/Pale-Moon/releases # git submodule | awk -v "name=platform" '$2 == name {gsub("-","",$1); print $1}' -%global submodule_platform_tag RELBASE_20200730 +%global submodule_platform_tag RELBASE_20200901 # additional repos to get python27 and devtoolset-7 # for el6 and el7: Software Collection;, for x86_64 only @@ -42,8 +42,8 @@ Name: palemoon-stackrpms Name: palemoon %endif Summary: Pale Moon web browser -Version: 28.12.0 -Release: 1 +Version: 28.13.0 +Release: 2 Group: Networking/Web License: MPLv2.0 @@ -285,6 +285,12 @@ update-mime-database -n ${_datadir}/mime 1>/dev/null 2>&1 & : %doc AUTHORS LICENSE %changelog +* Fri Sep 25 2020 B Stack <bgstack15@gmail.com> - 28.13.0-2 +- use valid RELBASE. Upstream probably unpublished RELBASE_20200831 + +* Fri Sep 04 2020 B Stack <bgstack15@gmail.com> - 28.13.0-1 +- update version + * Wed Aug 05 2020 B Stack <bgstack15@gmail.com> - 28.12.0-1 - update version diff --git a/puddletag/README.md b/puddletag/README.md new file mode 100644 index 0000000..dfdf88d --- /dev/null +++ b/puddletag/README.md @@ -0,0 +1,16 @@ +# puddletag upstream +https://gitlab.com/bgstack15/puddletag which itself is a fork of https://github.com/keithgg/puddletag +Forked from https://packages.debian.org/sid/puddletag + +# Reason for being in stackrpms +Devuan has puddletag, however, the main version of the application depends on python2 and pyqt4. Debian (upstream of Devuan) just dropped the pyqt4 release, and the options to continue support is in either the pyqt5 branch of puddletag or the py3 (qt4) branch of puddletag. So now + +# Alternatives +https://build.opensuse.org/package/view_file/home:ecsos/puddletag/puddletag.spec?expand=1 + +# Reverse dependency matrix +Distro | puddletag version +---------- | ---------------- +Devuan | 2.0.0 + +# Differences from upstream diff --git a/puddletag/debian/README.Debian b/puddletag/debian/README.Debian new file mode 100644 index 0000000..7e6c6e3 --- /dev/null +++ b/puddletag/debian/README.Debian @@ -0,0 +1,4 @@ +Some interesting services: + +- Where to report bugs upstream: http://code.google.com/p/puddletag/issues/list +- Upstream documentation: http://puddletag.sourceforge.net/docs.html diff --git a/puddletag/debian/changelog b/puddletag/debian/changelog new file mode 100644 index 0000000..cc415f1 --- /dev/null +++ b/puddletag/debian/changelog @@ -0,0 +1,152 @@ +puddletag (2.0.1-1+devuan) obs; urgency=high + + * New upstream release with Python3 and Qt5 port. + * Fork debian debian.tar.xz and remove all docs steps which + were broken. + * Bump compat level to 12 + * Omit pybuild which was just causing build issues. + + -- Ben Stack <bgstack15@gmail.com> Wed, 16 Sep 2020 21:27:33 -0400 + +puddletag (1.2.0-2) unstable; urgency=medium + + [ Ondřej Nový ] + * d/copyright: Use https protocol in Format field + + [ Sandro Tosi ] + * debian/copyright + - extend packaging copyright years + * debian/control + - bump Standards-Version to 4.3.0 (no changes needed) + * bump compat level to 11 + + -- Sandro Tosi <morph@debian.org> Sun, 03 Feb 2019 13:09:12 -0500 + +puddletag (1.2.0-1) unstable; urgency=medium + + * New upstream release + * debian/patches/88a3ad2e3a46c549dc03a408fab2813d02c0ea58.patch + - remove, included in upstream release + * debian/rules + - install README.rst not a broken symlink; Closes: #846600 + * declare compat level 10 + + -- Sandro Tosi <morph@debian.org> Sat, 10 Dec 2016 19:23:10 -0500 + +puddletag (1.1.1-2) unstable; urgency=medium + + * debian/patches/88a3ad2e3a46c549dc03a408fab2813d02c0ea58.patch + - support an updated python-mutagen; Closes: #833910 + + -- Sandro Tosi <morph@debian.org> Sun, 14 Aug 2016 19:07:53 +0100 + +puddletag (1.1.1-1) unstable; urgency=medium + + * New upstream release + * debian/copyright + - update Source location + - extend packaging copyright years + - adapt file location to new upstream code organization + - update docs copyright/license information + * debian/watch + - look for new releases on github + * debian/control + - update Homepage field + - add python-levenshtein to Recommends (needed for diffs submodule) + - add python-mysqldb to Recommends (needed for amarok integration) + - bump Standards-Version to 3.9.8 (no changes needed) + * debian/rules + - install upstream changelog + - docs location is now 'puddletag-docs' + - install extra docs as arguments to dh_installdocs + - install python module & program from 'source' + * debian/patches/489acd2ee62eb5fbff95f8220dc8958c14871931.patch + - removed, merged upstream + * debian/patches/add_missing_doc_files.patch + - removed, merged upstream + + -- Sandro Tosi <morph@debian.org> Wed, 27 Apr 2016 12:43:17 +0100 + +puddletag (1.0.5-1) unstable; urgency=medium + + * New upstream release + * debian/control( + - remove Rogério from Uploaders, thanks for all your work; Closes: #777514 + - switch me to Maintainer (team to Uploaders) + - add python-sphinx-bootstrap-theme to b-d-i, needed to build doc + - drop python-musicbrainz2 Recommends, implemented internally; + Closes: #786358 + - bump Standards-Version to 3.9.6 (no changes needed) + * debian/copyright + - extend packaging copyright years + * debian/patches/add_missing_doc_files.patch + - add missing files, required to build doc + * Switch from pysupport to dh_python2; Closes: #786288 + * debian/patches/489acd2ee62eb5fbff95f8220dc8958c14871931.patch + - fix crash at startup, due to new Qt4; Closes: #791752 + + -- Sandro Tosi <morph@debian.org> Mon, 27 Jul 2015 00:01:56 +0100 + +puddletag (1.0.2-1) unstable; urgency=low + + [ Jakub Wilk ] + * Use canonical URIs for Vcs-* fields. + + [ Sandro Tosi ] + * New upstream release; Closes: #712021 + * debian/copyright + - extended debian packaging copyright years + * debian/control + - bump Standards-Version to 3.9.5 (no changes needed) + + -- Sandro Tosi <morph@debian.org> Tue, 31 Dec 2013 16:11:01 +0100 + +puddletag (1.0.1-1) experimental; urgency=low + + * New upstream release + * debian/control + - add libchromaprint-tools to Recommends, needed to enable AcoustID + * debian/rules + - use 'sphinx-build' to build documentation + + -- Sandro Tosi <morph@debian.org> Sat, 01 Sep 2012 12:42:44 +0200 + +puddletag (1.0.0-1) experimental; urgency=low + + * New upstream release + * debian/watch + - updated to recognize RC vesions + + -- Sandro Tosi <morph@debian.org> Wed, 22 Aug 2012 21:41:00 +0200 + +puddletag (1.0.0~rc1-1) unstable; urgency=low + + * New upstream release candidate + * debian/copyright + - updated for new upstream code + extended packaging copyright years + - use versioned link to copyright DEP + * debian/control + - added python-audioread, python-acoustid to Depends, needed for AcoustID + support + - bump Standards-Version to 3.9.3 (no changes needed) + + -- Sandro Tosi <morph@debian.org> Sun, 10 Jun 2012 12:47:33 +0200 + +puddletag (1.0.0~beta4-1) experimental; urgency=low + + [ Stefano Rivera ] + * Add missing Build-Depends on python-support; thanks to Jakub Wilk for the + report; Closes: #652342 + + [ Sandro Tosi ] + * New (beta) upstream release + * debian/watch + - handle beta releases + + -- Sandro Tosi <morph@debian.org> Mon, 13 Feb 2012 22:15:32 +0100 + +puddletag (0.10.6.3-1) unstable; urgency=low + + * Initial release; Closes: #617854 + + -- Sandro Tosi <morph@debian.org> Thu, 18 Aug 2011 11:29:45 +0200 diff --git a/puddletag/debian/compat b/puddletag/debian/compat new file mode 100644 index 0000000..48082f7 --- /dev/null +++ b/puddletag/debian/compat @@ -0,0 +1 @@ +12 diff --git a/puddletag/debian/control b/puddletag/debian/control new file mode 100644 index 0000000..b7c4535 --- /dev/null +++ b/puddletag/debian/control @@ -0,0 +1,35 @@ +Source: puddletag +Section: sound +Priority: optional +Maintainer: Ben Stack <bgstack15@gmail.com> +Build-Depends: debhelper (>= 11), python3, dh-python +Build-Depends-Indep: python3-sphinx, python3-sphinx-bootstrap-theme, python3-wheel, python3-markdown, python3-pyrss2gen, python3-pyqt5, python3-configobj, python3-mutagen, python3-pyparsing +Standards-Version: 4.3.0 +XS-Python-Version: all +Homepage: http://docs.puddletag.net/ +XSBC-Original-Maintainer: Sandro Tosi <morph@debian.org> + +Package: puddletag +Architecture: all +Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}, ${sphinxdoc:Depends}, python3-mutagen, python3-pyparsing, python3-configobj, python3-pyqt5, python3-pyqt5.qtsvg, python3-wheel, python3-markdown +Recommends: libchromaprint-tools, python3-levenshtein, python3-mysqldb +Suggests: quodlibet +Description: simple, powerful audio tag editor + puddletag is an audio tag editor (primarily created) for GNU/Linux + similar to the Windows program, Mp3tag. Unlike most taggers for + GNU/Linux, it uses a spreadsheet-like layout so that all the tags you + want to edit by hand are visible and easily editable. + . + The usual tag editor features are supported like extracting tag + information from filenames, renaming files based on their tags by + using patterns and basic tag editing. + . + Then there're Functions, which can do things like replace text, trim + it, do case conversions, etc. Actions can automate repetitive + tasks. You can import your QuodLibet library, lookup tags using + Amazon (including cover art), Discogs (does cover art too!), FreeDB + and MusicBrainz (and more). + . + Supported formats: ID3v1, ID3v2 (mp3), MP4 (mp4, m4a, etc.), + VorbisComments (ogg, flac), Musepack (mpc), Monkey's Audio (ape) and + WavPack (wv). diff --git a/puddletag/debian/copyright b/puddletag/debian/copyright new file mode 100644 index 0000000..5181864 --- /dev/null +++ b/puddletag/debian/copyright @@ -0,0 +1,97 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: puddletag +Source: https://github.com/keithgg/puddletag/ + +Files: * +Copyright: 2008-2012 concentricpuddle <concentricpuddle@gmail.com> +License: GPL-3 + On Debian systems, the full text of the GNU General Public + License version 3 can be found in the file + `/usr/share/common-licenses/GPL-3'. + +Files: puddletag-docs/_templates/offline/static/reset-fonts-grids.css puddletag-docs/_templates/djangodocs/static/reset-fonts-grids.css +Copyright: Copyright (c) 2008, Yahoo! Inc. All rights reserved. +License: BSD + +Files: puddletag-docs/_static/bootstrap-3.0.0/css/bootstrap.min.css puddletag-docs/_static/bootstrap-3.0.0/css/bootstrap-theme.min.css +Copyright: Copyright 2012-2015 Thomas Park +License: MIT +Comment: bootswatch v3.3.6, Based on Bootstrap + Bootstrap v3.3.6 (http://getbootstrap.com) + Copyright 2011-2015 Twitter, Inc. + Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + +Files: puddletag-docs/_static/bootstrap.min.css +License: MIT +Comment: normalize.css v2.1.3 | MIT License | git.io/normalize + +Files: puddletag-docs/_templates/rss/genindex.html puddletag-docs/_templates/rss/genindex-single.html puddletag-docs/_templates/rss/genindex-split.html puddletag-docs/_templates/rss/page.html +Copyright: Copyright 2007-2011 by the Sphinx team +License: BSD + +Files: source/puddlestuff/functions.py +Copyright: Copyright (C) 2008-2010 concentricpuddle +License: GPL-2 + +Files: source/puddlestuff/tagsources/CDDB.py +Copyright: 1999 Ben Gertzfield <che@debian.org> +License: GPL-2+ +Comment: taken from CDDB.py project + +Files: source/puddlestuff/tagsources/_acoustid.py +Copyright: Copyright 2012, Adrian Sampson. +License: MIT +Comment: This file is part of pyacoustid. + +Files: source/puddlestuff/audioinfo/_compatid3.py +Copyright: Copyright (C) 2006 Lukáš Lalinský + Copyright (C) 2005 Michael Urman +License: GPL-2+ +Comment: taken from Picard + +Files: source/puddlestuff/audioinfo/wma.py +License: GPL-2+ +Comment: derivative work from Picard's wma.py module + +Files: source/puddlestuff/data/{copy.png, cut.png, duplicate.png, edit.png, + filenew.png, preferences.png, playlist.png, quickaction.png, reload.png, + remove.png, undo.png, save.png, paste.png, action.png, open.png, addfolder.png} +License: GPL-3+ +Comment: embedded copies of oxygen-icon-theme image files + +Files: source/puddlestuff/resource.py +Comments: embed source/puddlestuff/data/*.png files. It is compiled by pyrcc4 + from source/puddlestuff/resourec.qrc, the QT resource file, that so it is its + preferred form of modification. + +Files: debian/* +Copyright: 2012-2019 Sandro Tosi <morph@debian.org> +License: same as upstream + +Files: debian/templatebuiltins.js +Copyright: Copyright (c) Django Software Foundation and individual contributors. +License: Main Django Code Licence + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + . + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + . + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + . + 3. Neither the name of Django nor the names of its contributors may be used + to endorse or promote products derived from this software without + specific prior written permission. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/puddletag/debian/gbp.conf b/puddletag/debian/gbp.conf new file mode 100644 index 0000000..3879982 --- /dev/null +++ b/puddletag/debian/gbp.conf @@ -0,0 +1,2 @@ +[DEFAULT] +debian-branch=debian/master diff --git a/puddletag/debian/puddletag+devuan.dsc b/puddletag/debian/puddletag+devuan.dsc new file mode 100644 index 0000000..8dabdd5 --- /dev/null +++ b/puddletag/debian/puddletag+devuan.dsc @@ -0,0 +1,17 @@ +Format: 3.0 (quilt) +Source: puddletag +Binary: puddletag +Architecture: all +Version: 2.0.1-1+devuan +Maintainer: Ben Stack <bgstack15@gmail.com> +Homepage: http://docs.puddletag.net/ +Standards-Version: 4.3.0 +Build-Depends: debhelper (>= 11), python3, dh-python +Build-Depends-Indep: python3-sphinx, python3-sphinx-bootstrap-theme, python3-wheel, python3-markdown, python3-pyrss2gen, python3-pyqt5, python3-configobj, python3-mutagen, python3-pyparsing +Package-List: + puddletag deb sound optional arch=all +Files: + 00000000000000000000000000000000 1 puddletag_2.0.1.orig.tar.gz + 00000000000000000000000000000000 1 puddletag_2.0.1-1+devuan.debian.tar.xz +Original-Maintainer: Sandro Tosi <morph@debian.org> +Python-Version: all diff --git a/puddletag/debian/puddletag.doc-base b/puddletag/debian/puddletag.doc-base new file mode 100644 index 0000000..c9b7733 --- /dev/null +++ b/puddletag/debian/puddletag.doc-base @@ -0,0 +1,11 @@ +Document: puddletag +Title: A simple, powerful audio tag editor +Author: concentricpuddle +Abstract: puddletag is just a tag editor. Although it’s likely better + than what you’re used to (unless you’ve used Mp3tag, in which case + it’s kinda like what you’re used to). +Section: Sound + +Format: HTML +Index: /usr/share/doc/puddletag/html/index.html +Files: /usr/share/doc/puddletag/html/* diff --git a/puddletag/debian/rules b/puddletag/debian/rules new file mode 100755 index 0000000..42976fb --- /dev/null +++ b/puddletag/debian/rules @@ -0,0 +1,39 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# Sample debian/rules that uses debhelper. +# This file was originally written by Joey Hess and Craig Small. +# As a special exception, when this file is copied by dh-make into a +# dh-make output file, you may use that output file without restriction. +# This special exception was added by Craig Small in version 0.37 of dh-make. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 +# Using pybuild causes build failures. Omitting pybuild throws tons of lintian warnings but it builds. +#export PYBUILD_NAME=puddletag +#export PYBUILD_SYSTEM=distutils +# ON DH INVOCATION: --buildsystem=pybuild + +%: + dh $@ --with python3,sphinxdoc + +override_dh_clean: + dh_clean + $(MAKE) -C puddletag-docs clean + +override_dh_auto_install: + cd $(CURDIR)/source ; \ + python3 setup.py install --root=$(CURDIR)/debian/puddletag --install-layout=deb + + $(MAKE) -C puddletag-docs documentation SPHINXBUILD=sphinx-build + +override_dh_installdocs: + dh_installdocs README.rst source/THANKS source/TODO + mv puddletag-docs/_build/documentation/ puddletag-docs/_build/html/ + dh_installdocs puddletag-docs/_build/html/ + dh_link /usr/share/doc/puddletag/html/docs.html /usr/share/doc/puddletag/html/index.html + +override_dh_compress: + dh_compress -X.txt + +override_dh_installchangelogs: + dh_installchangelogs source/changelog diff --git a/puddletag/debian/source/format b/puddletag/debian/source/format new file mode 100644 index 0000000..163aaf8 --- /dev/null +++ b/puddletag/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/puddletag/debian/watch b/puddletag/debian/watch new file mode 100644 index 0000000..a143e47 --- /dev/null +++ b/puddletag/debian/watch @@ -0,0 +1,3 @@ +version=3 +opts="filenamemangle=s/(?:.*?)?v?(\d[\d.]*)\.tar\.gz/puddletag-$1.tar.gz/" \ + https://github.com/puddletag/puddletag/tags (?:.*?/)?v?(\d[\d.]*)\.tar\.gz diff --git a/puddletag/stackrpms-2019-12-23.diff b/puddletag/stackrpms-2019-12-23.diff new file mode 100644 index 0000000..14ffa56 --- /dev/null +++ b/puddletag/stackrpms-2019-12-23.diff @@ -0,0 +1,751 @@ +diff -Naur /home/bgstack15/dev/puddletag-deb/debian/changelog /home/bgstack15/dev/stackrpms/puddletag/debian/changelog +--- /home/bgstack15/dev/puddletag-deb/debian/changelog 2019-02-03 13:09:12.000000000 -0500 ++++ /home/bgstack15/dev/stackrpms/puddletag/debian/changelog 2019-12-23 09:15:18.120451171 -0500 +@@ -1,3 +1,10 @@ ++puddletag-py3 (2.0.0-1+devuan) obs; urgency=high ++ ++ * Switch to py3 ++ * bump compat level to 12 ++ ++ -- B Stack <bgstack15@gmail.com> Mon, 23 Dec 2019 07:54:40 -0500 ++ + puddletag (1.2.0-2) unstable; urgency=medium + + [ Ondřej Nový ] +diff -Naur /home/bgstack15/dev/puddletag-deb/debian/compat /home/bgstack15/dev/stackrpms/puddletag/debian/compat +--- /home/bgstack15/dev/puddletag-deb/debian/compat 2019-02-03 13:09:12.000000000 -0500 ++++ /home/bgstack15/dev/stackrpms/puddletag/debian/compat 2019-12-23 07:56:05.951273864 -0500 +@@ -1 +1 @@ +-11 ++12 +diff -Naur /home/bgstack15/dev/puddletag-deb/debian/control /home/bgstack15/dev/stackrpms/puddletag/debian/control +--- /home/bgstack15/dev/puddletag-deb/debian/control 2019-02-03 13:09:12.000000000 -0500 ++++ /home/bgstack15/dev/stackrpms/puddletag/debian/control 2019-12-23 08:29:28.452060930 -0500 +@@ -1,20 +1,21 @@ +-Source: puddletag ++Source: puddletag-py3 + Section: sound + Priority: optional +-Maintainer: Sandro Tosi <morph@debian.org> +-Uploaders: Python Applications Packaging Team <python-apps-team@lists.alioth.debian.org> +-Build-Depends: debhelper (>= 11), python, dh-python +-Build-Depends-Indep: python-sphinx (>= 1.0.7+dfsg), python-sphinx-bootstrap-theme +-Standards-Version: 4.3.0 ++Maintainer: B Stack <bgstack15@gmail.com> ++XSBC-Original-Maintainer: Sandro Tosi <morph@debian.org> ++Build-Depends: debhelper (>= 12), python3 ++Build-Depends-Indep: python3-sphinx (>= 1.8.5), python3-sphinx-bootstrap-theme ++Standards-Version: 4.1.4 + XS-Python-Version: all + Homepage: http://docs.puddletag.net/ + Vcs-Git: https://salsa.debian.org/python-team/applications/puddletag.git + Vcs-Browser: https://salsa.debian.org/python-team/applications/puddletag + +-Package: puddletag ++Package: puddletag-py3 + Architecture: all +-Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}, ${sphinxdoc:Depends}, python-mutagen (>= 1.14), python-qt4 (>= 4.5), python-pyparsing (>= 1.5.1), python-configobj (>= 4.5), python-audioread, python-acoustid +-Recommends: libchromaprint-tools, python-levenshtein, python-mysqldb ++Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}, ${sphinxdoc:Depends}, python3-mutagen (>= 1.40.0), python3-pyqt4 (>= 4.5), python3-pyparsing (>= 2.4.2), python3-configobj (>= 4.5), python3-audioread, python3-acoustid ++Recommends: libchromaprint-tools, python3-levenshtein, python3-mysqldb ++Replaces: puddletag (<< 2.0.0) + Suggests: quodlibet + Description: simple, powerful audio tag editor + puddletag is an audio tag editor (primarily created) for GNU/Linux +diff -Naur /home/bgstack15/dev/puddletag-deb/debian/copyright /home/bgstack15/dev/stackrpms/puddletag/debian/copyright +--- /home/bgstack15/dev/puddletag-deb/debian/copyright 2019-02-03 13:09:12.000000000 -0500 ++++ /home/bgstack15/dev/stackrpms/puddletag/debian/copyright 2019-12-23 07:54:46.538447461 -0500 +@@ -1,97 +1,530 @@ + Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ + Upstream-Name: puddletag +-Source: https://github.com/keithgg/puddletag/ ++Source: <url://example.com> ++# ++# Please double check copyright with the licensecheck(1) command. ++ ++Files: .gitignore ++ README.rst ++ puddletag-docs/INSTALL ++ puddletag-docs/Makefile ++ puddletag-docs/_static/bootstrap-3.0.0/css/bootstrap-theme.min.css ++ puddletag-docs/_static/bootstrap-3.0.0/css/bootstrap.min.css ++ puddletag-docs/_static/bootstrap.min.css ++ puddletag-docs/_templates/bootstrap.min.css ++ puddletag-docs/_templates/djangodocs/blockonly.html ++ puddletag-docs/_templates/djangodocs/genindex.html ++ puddletag-docs/_templates/djangodocs/layout.html ++ puddletag-docs/_templates/djangodocs/modindex.html ++ puddletag-docs/_templates/djangodocs/non-doc.html ++ puddletag-docs/_templates/djangodocs/search.html ++ puddletag-docs/_templates/djangodocs/static/default.css ++ puddletag-docs/_templates/djangodocs/static/djangodocs.css ++ puddletag-docs/_templates/djangodocs/static/docicons-behindscenes.png ++ puddletag-docs/_templates/djangodocs/static/docicons-note.png ++ puddletag-docs/_templates/djangodocs/static/docicons-philosophy.png ++ puddletag-docs/_templates/djangodocs/static/homepage.css ++ puddletag-docs/_templates/djangodocs/theme.conf ++ puddletag-docs/_templates/globaltoc.html ++ puddletag-docs/_templates/layout.html ++ puddletag-docs/_templates/my_sidebar.html ++ puddletag-docs/_templates/navbar.html ++ puddletag-docs/_templates/offline/blockonly.html ++ puddletag-docs/_templates/offline/genindex.html ++ puddletag-docs/_templates/offline/layout.html ++ puddletag-docs/_templates/offline/modindex.html ++ puddletag-docs/_templates/offline/non-doc.html ++ puddletag-docs/_templates/offline/search.html ++ puddletag-docs/_templates/offline/static/default.css ++ puddletag-docs/_templates/offline/static/djangodocs.css ++ puddletag-docs/_templates/offline/static/docicons-behindscenes.png ++ puddletag-docs/_templates/offline/static/docicons-note.png ++ puddletag-docs/_templates/offline/static/docicons-philosophy.png ++ puddletag-docs/_templates/offline/static/homepage.css ++ puddletag-docs/_templates/offline/theme.conf ++ puddletag-docs/_templates/rss/genindex-single.html ++ puddletag-docs/_templates/rss/genindex-split.html ++ puddletag-docs/_templates/rss/genindex.html ++ puddletag-docs/_templates/rss/page.html ++ puddletag-docs/_templates/rss/search.html ++ puddletag-docs/_templates/rss/theme.conf ++ puddletag-docs/about.txt ++ puddletag-docs/checksums.txt ++ puddletag-docs/conf.py ++ puddletag-docs/createnews.py ++ puddletag-docs/docs.txt ++ puddletag-docs/download.txt ++ puddletag-docs/feed.png ++ puddletag-docs/fix_html.py ++ puddletag-docs/index.txt ++ puddletag-docs/make.bat ++ puddletag-docs/news.txt ++ puddletag-docs/news/2008-11-25 ++ puddletag-docs/news/2008-12-03 ++ puddletag-docs/news/2008-12-16 ++ puddletag-docs/news/2009-01-20 ++ puddletag-docs/news/2009-02-05 ++ puddletag-docs/news/2009-03-09 ++ puddletag-docs/news/2009-04-08 ++ puddletag-docs/news/2009-05-01 ++ puddletag-docs/news/2009-06-04 ++ puddletag-docs/news/2009-09-09 ++ puddletag-docs/news/2009-10-10 ++ puddletag-docs/news/2009-11-05 ++ puddletag-docs/news/2010-04-14 ++ puddletag-docs/news/2010-06-11 ++ puddletag-docs/news/2010-06-25 ++ puddletag-docs/news/2010-07-04 ++ puddletag-docs/news/2010-08-11 ++ puddletag-docs/news/2010-08-25 ++ puddletag-docs/news/2010-10-09 ++ puddletag-docs/news/2010-10-13 ++ puddletag-docs/news/2010-10-30 ++ puddletag-docs/news/2010-12-16 ++ puddletag-docs/news/2010-12-18 ++ puddletag-docs/news/2010-12-19 ++ puddletag-docs/news/2011-02-09 ++ puddletag-docs/news/2011-03-08 ++ puddletag-docs/news/2011-03-20 ++ puddletag-docs/news/2011-03-23 ++ puddletag-docs/news/2011-06-06 ++ puddletag-docs/news/2011-09-21 ++ puddletag-docs/news/2012-01-22 ++ puddletag-docs/news/2012-04-11 ++ puddletag-docs/news/2012-06-09 ++ puddletag-docs/news/2012-08-21 ++ puddletag-docs/news/2012-08-31 ++ puddletag-docs/news/2013-06-26 ++ puddletag-docs/news/2013-07-14 ++ puddletag-docs/news/2013-11-07 ++ puddletag-docs/news/2014-06-22 ++ puddletag-docs/news/2014-11-09 ++ puddletag-docs/news/2014-11-15 ++ puddletag-docs/news/2015-05-13 ++ puddletag-docs/news/2016-01-31 ++ puddletag-docs/news/2016-11-27 ++ puddletag-docs/offlinezip.py ++ puddletag-docs/screenshots.txt ++ puddletag-docs/screenshots/1.png ++ puddletag-docs/screenshots/2.png ++ puddletag-docs/screenshots/3.png ++ puddletag-docs/screenshots/4.png ++ puddletag-docs/screenshots/5.png ++ puddletag-docs/screenshots/6.png ++ puddletag-docs/screenshots/small1.png ++ puddletag-docs/screenshots/small2.png ++ puddletag-docs/screenshots/small3.png ++ puddletag-docs/screenshots/small4.png ++ puddletag-docs/screenshots/small6.png ++ puddletag-docs/source/filter.txt ++ puddletag-docs/source/function.txt ++ puddletag-docs/source/functionplugin.tar.gz ++ puddletag-docs/source/functionplugin/info ++ puddletag-docs/source/id3.txt ++ puddletag-docs/source/images/bg1.jpg ++ puddletag-docs/source/images/bg2.jpg ++ puddletag-docs/source/images/body_bg.png ++ puddletag-docs/source/images/border1.gif ++ puddletag-docs/source/images/border2.gif ++ puddletag-docs/source/images/boxbg.gif ++ puddletag-docs/source/images/buttonbg.gif ++ puddletag-docs/source/images/db1.gif ++ puddletag-docs/source/images/db2.gif ++ puddletag-docs/source/images/eg_tagsource.png ++ puddletag-docs/source/images/feed.png ++ puddletag-docs/source/images/footer_bg.png ++ puddletag-docs/source/images/hdrpic.jpg ++ puddletag-docs/source/images/header.png ++ puddletag-docs/source/images/header_bg.png ++ puddletag-docs/source/images/icon-comments.gif ++ puddletag-docs/source/images/icon-more.gif ++ puddletag-docs/source/images/icon-printerfriendly.gif ++ puddletag-docs/source/images/main_bg.png ++ puddletag-docs/source/images/menu_bg.png ++ puddletag-docs/source/images/menu_border.png ++ puddletag-docs/source/images/menuactive.gif ++ puddletag-docs/source/images/menubg.gif ++ puddletag-docs/source/images/menubg.png ++ puddletag-docs/source/images/pic1.jpg ++ puddletag-docs/source/images/pic2.jpg ++ puddletag-docs/source/images/pic3.jpg ++ puddletag-docs/source/images/tagsource_dialog.png ++ puddletag-docs/source/images/tagsource_dialog_tut4.png ++ puddletag-docs/source/images/tagsource_search.png ++ puddletag-docs/source/images/topbg.gif ++ puddletag-docs/source/images/tut3.png ++ puddletag-docs/source/images/tut3_window.png ++ puddletag-docs/source/masstag_images/choose_profile.png ++ puddletag-docs/source/masstag_images/configure_profile.png ++ puddletag-docs/source/masstag_images/configure_tagsource.png ++ puddletag-docs/source/masstag_images/field_desc.png ++ puddletag-docs/source/masstag_images/interactive.png ++ puddletag-docs/source/masstag_images/masstag_config1.png ++ puddletag-docs/source/masstag_images/masstag_config2.png ++ puddletag-docs/source/masstag_images/masstag_config3.png ++ puddletag-docs/source/masstag_images/masstag_config4.png ++ puddletag-docs/source/masstag_images/masstag_config5.png ++ puddletag-docs/source/masstag_images/masstag_config6.png ++ puddletag-docs/source/menus.txt ++ puddletag-docs/source/plugins.txt ++ puddletag-docs/source/preferences.txt ++ puddletag-docs/source/scripting.txt ++ puddletag-docs/source/tags.txt ++ puddletag-docs/source/tagsource.tar.gz ++ puddletag-docs/source/tagsources.txt ++ puddletag-docs/source/translate.txt ++ puddletag-docs/source/tut1.txt ++ puddletag-docs/source/tut1/1.png ++ puddletag-docs/source/tut1/1full.png ++ puddletag-docs/source/tut1/2.png ++ puddletag-docs/source/tut1/2clean.png ++ puddletag-docs/source/tut1/2full.png ++ puddletag-docs/source/tut1/3.png ++ puddletag-docs/source/tut1/3full.png ++ puddletag-docs/source/tut1/4.png ++ puddletag-docs/source/tut1/4full.png ++ puddletag-docs/source/tut1/5.png ++ puddletag-docs/source/tut1/5full.png ++ puddletag-docs/source/tut1/6.png ++ puddletag-docs/source/tut1/6full.png ++ puddletag-docs/source/tut1/actions.png ++ puddletag-docs/source/tut1/actionsbutton.png ++ puddletag-docs/source/tut1/addfolder.png ++ puddletag-docs/source/tut1/caseaction.png ++ puddletag-docs/source/tut1/caseactionedit.png ++ puddletag-docs/source/tut1/filetotag.png ++ puddletag-docs/source/tut1/format.png ++ puddletag-docs/source/tut1/formataction.png ++ puddletag-docs/source/tut1/functions.png ++ puddletag-docs/source/tut1/importfile.png ++ puddletag-docs/source/tut1/importfilewindow.png ++ puddletag-docs/source/tut1/k ++ puddletag-docs/source/tut1/k.png ++ puddletag-docs/source/tut1/musicbrainz.png ++ puddletag-docs/source/tut1/numbering.png ++ puddletag-docs/source/tut1/puddlescreen.png ++ puddletag-docs/source/tut1/puddlescreen2.png ++ puddletag-docs/source/tut1/quickactions.png ++ puddletag-docs/source/tut1/reload.png ++ puddletag-docs/source/tut1/renamedir.png ++ puddletag-docs/source/tut1/small1.png ++ puddletag-docs/source/tut1/tagtofile.png ++ puddletag-docs/source/tut1/textedit.png ++ puddletag-docs/source/tut1/toolbarbuttonscomplete.png ++ puddletag-docs/source/tut1/track.png ++ puddletag-docs/source/tut2.txt ++ puddletag-docs/source/tut3.txt ++ puddletag-docs/source/tut4.txt ++ puddletag-docs/source/tut5.txt ++ puddletag-docs/subs.txt ++ puddletag-docs/to_rss.py ++ puddletag-docs/update_checksums.py ++ source/HACKING ++ source/MANIFEST ++ source/NEWS ++ source/THANKS ++ source/TODO ++ source/create_macos_app_bundle.sh ++ source/create_release.sh ++ source/get_tag.py ++ source/menu ++ source/puddlestuff/__init__.py ++ source/puddlestuff/action_shortcuts.py ++ source/puddlestuff/actiondlg.py ++ source/puddlestuff/audio_filter.py ++ source/puddlestuff/audioinfo/__init__.py ++ source/puddlestuff/audioinfo/apev2.py ++ source/puddlestuff/audioinfo/constants.py ++ source/puddlestuff/audioinfo/id3.py ++ source/puddlestuff/audioinfo/mp4.py ++ source/puddlestuff/audioinfo/tag_versions.py ++ source/puddlestuff/audioinfo/util.py ++ source/puddlestuff/audioinfo/vorbis.py ++ source/puddlestuff/audioinfo/wma.py ++ source/puddlestuff/confirmations.py ++ source/puddlestuff/constants.py ++ source/puddlestuff/data/action.png ++ source/puddlestuff/data/addfolder.png ++ source/puddlestuff/data/cap.png ++ source/puddlestuff/data/caseconversion.action ++ source/puddlestuff/data/copy.png ++ source/puddlestuff/data/cut.png ++ source/puddlestuff/data/duplicate.png ++ source/puddlestuff/data/edit.png ++ source/puddlestuff/data/filenew.png ++ source/puddlestuff/data/filetotag.png ++ source/puddlestuff/data/icon.png ++ source/puddlestuff/data/larrow.png ++ source/puddlestuff/data/menus ++ source/puddlestuff/data/movedown.png ++ source/puddlestuff/data/moveup.png ++ source/puddlestuff/data/open.png ++ source/puddlestuff/data/paste.png ++ source/puddlestuff/data/playlist.png ++ source/puddlestuff/data/preferences.png ++ source/puddlestuff/data/puddlelogo.png ++ source/puddlestuff/data/puddletag.conf ++ source/puddlestuff/data/quickaction.png ++ source/puddlestuff/data/rarrow.png ++ source/puddlestuff/data/reload.png ++ source/puddlestuff/data/remove.png ++ source/puddlestuff/data/rename.png ++ source/puddlestuff/data/renamedirs.png ++ source/puddlestuff/data/save.png ++ source/puddlestuff/data/shortcuts ++ source/puddlestuff/data/standard.action ++ source/puddlestuff/data/tagtofile.png ++ source/puddlestuff/data/text-tag.png ++ source/puddlestuff/data/track.png ++ source/puddlestuff/data/undo.png ++ source/puddlestuff/duplicates/__init__.py ++ source/puddlestuff/duplicates/algwin.py ++ source/puddlestuff/duplicates/dupefuncs.py ++ source/puddlestuff/duplicates/matchfuncs.py ++ source/puddlestuff/findfunc.py ++ source/puddlestuff/funcprint.py ++ source/puddlestuff/functions_dialogs.py ++ source/puddlestuff/genres.py ++ source/puddlestuff/helperwin.py ++ source/puddlestuff/libraries/__init__.py ++ source/puddlestuff/libraries/quodlibetlib.py ++ source/puddlestuff/loadshortcuts.py ++ source/puddlestuff/logger.py ++ source/puddlestuff/m3u.py ++ source/puddlestuff/mainwin/__init__.py ++ source/puddlestuff/mainwin/action_dialogs.py ++ source/puddlestuff/mainwin/artwork.py ++ source/puddlestuff/mainwin/dirview.py ++ source/puddlestuff/mainwin/filterwin.py ++ source/puddlestuff/mainwin/funcs.py ++ source/puddlestuff/mainwin/logdialog.py ++ source/puddlestuff/mainwin/patterncombo.py ++ source/puddlestuff/mainwin/previews.py ++ source/puddlestuff/mainwin/storedtags.py ++ source/puddlestuff/mainwin/tagpanel.py ++ source/puddlestuff/mainwin/tagtools.py ++ source/puddlestuff/mainwin/teststuff.py ++ source/puddlestuff/masstag/__init__.py ++ source/puddlestuff/masstag/config.py ++ source/puddlestuff/masstag/dialogs.py ++ source/puddlestuff/pluginloader.py ++ source/puddlestuff/plugins/__init__.py ++ source/puddlestuff/plugins/dupe_fields/__init__.py ++ source/puddlestuff/plugins/dupe_fields/info ++ source/puddlestuff/plugins/export_tags/__init__.py ++ source/puddlestuff/plugins/extended_tags/__init__.py ++ source/puddlestuff/plugins/extended_tags/info ++ source/puddlestuff/plugins/id3_tools/__init__.py ++ source/puddlestuff/plugins/id3_tools/info ++ source/puddlestuff/plugins/modified_time/__init__.py ++ source/puddlestuff/plugins/modified_time/info ++ source/puddlestuff/plugins/save_tags/__init__.py ++ source/puddlestuff/plugins/save_tags/info ++ source/puddlestuff/plugins/view_all_fields/__init__.py ++ source/puddlestuff/plugins/view_all_fields/info ++ source/puddlestuff/puddleobjects.py ++ source/puddlestuff/puddlesettings.py ++ source/puddlestuff/puddletag.py ++ source/puddlestuff/releasewidget.py ++ source/puddlestuff/shortcutsettings.py ++ source/puddlestuff/tagmodel.py ++ source/puddlestuff/tagsources/CDDB.py ++ source/puddlestuff/tagsources/__init__.py ++ source/puddlestuff/tagsources/acoust_id.py ++ source/puddlestuff/tagsources/amazon.py ++ source/puddlestuff/tagsources/amg.py ++ source/puddlestuff/tagsources/discogs.py ++ source/puddlestuff/tagsources/exampletags.py ++ source/puddlestuff/tagsources/freedb.py ++ source/puddlestuff/tagsources/mp3tag/__init__.py ++ source/puddlestuff/tagsources/mp3tag/funcs.py ++ source/puddlestuff/tagsources/mp3tag/parse_debug.py ++ source/puddlestuff/tagsources/musicbrainz.py ++ source/puddlestuff/tagsources/parse_html.py ++ source/puddlestuff/translations.py ++ source/puddlestuff/util.py ++ source/puddlestuff/webdb.py ++ source/puddletag.1 ++ source/puddletag.desktop ++ source/puddletag.png ++ source/puddletag.pro ++ source/puddletag.public ++ source/puddletag.xpm ++ source/restore_tag.py ++ source/setup.py ++ source/tagbackup.py ++ source/update_translation.py ++Copyright: __NO_COPYRIGHT_NOR_LICENSE__ ++License: __NO_COPYRIGHT_NOR_LICENSE__ ++ ++Files: source/console ++ source/puddlestuff/libraries/amarok.py ++ source/puddlestuff/libraries/prokyon.py ++ source/puddlestuff/libraries/rhythmbox.py ++ source/puddlestuff/tagsources/example.py ++Copyright: 2008-2009 concentricpuddle ++License: GPL-2.0+ ++ This file is part of puddletag, a semi-good music tag editor. ++ . ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License as published by ++ the Free Software Foundation; either version 2 of the License, or ++ (at your option) any later version. ++ . ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ . ++ You should have received a copy of the GNU General Public License ++ along with this program; if not, write to the Free Software ++ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA ++ . ++ On Debian systems, the complete text of the GNU General Public License ++ Version 2 can be found in `/usr/share/common-licenses/GPL-2'. ++ ++Files: puddletag-docs/_templates/djangodocs/static/reset-fonts-grids.css ++ puddletag-docs/_templates/offline/static/reset-fonts-grids.css ++ source/puddlestuff/functions.py ++Copyright: 2008 Yahoo! Inc. Code licensed under the BSD License: http://developer.yahoo.net/yui/license.txt version: 2.5.1 ++ 2008-2010 concentricpuddle, GPLv2 ++License: __NO_LICENSE__ ++ ++Files: source/puddlestuff/tagsources/_acoustid.py ++Copyright: 2012 Adrian Sampson. ++License: MIT ++ Permission is hereby granted, free of charge, to any person obtaining ++ a copy of this software and associated documentation files (the ++ "Software"), to deal in the Software without restriction, including ++ without limitation the rights to use, copy, modify, merge, publish, ++ distribute, sublicense, and/or sell copies of the Software, and to ++ permit persons to whom the Software is furnished to do so, subject to ++ the following conditions: ++ . ++ The above copyright notice and this permission notice shall be ++ included in all copies or substantial portions of the Software. + +-Files: * ++Files: source/copyright + Copyright: 2008-2012 concentricpuddle <concentricpuddle@gmail.com> +-License: GPL-3 +- On Debian systems, the full text of the GNU General Public +- License version 3 can be found in the file +- `/usr/share/common-licenses/GPL-3'. +- +-Files: puddletag-docs/_templates/offline/static/reset-fonts-grids.css puddletag-docs/_templates/djangodocs/static/reset-fonts-grids.css +-Copyright: Copyright (c) 2008, Yahoo! Inc. All rights reserved. +-License: BSD +- +-Files: puddletag-docs/_static/bootstrap-3.0.0/css/bootstrap.min.css puddletag-docs/_static/bootstrap-3.0.0/css/bootstrap-theme.min.css +-Copyright: Copyright 2012-2015 Thomas Park +-License: MIT +-Comment: bootswatch v3.3.6, Based on Bootstrap +- Bootstrap v3.3.6 (http://getbootstrap.com) +- Copyright 2011-2015 Twitter, Inc. +- Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) +- +-Files: puddletag-docs/_static/bootstrap.min.css +-License: MIT +-Comment: normalize.css v2.1.3 | MIT License | git.io/normalize +- +-Files: puddletag-docs/_templates/rss/genindex.html puddletag-docs/_templates/rss/genindex-single.html puddletag-docs/_templates/rss/genindex-split.html puddletag-docs/_templates/rss/page.html +-Copyright: Copyright 2007-2011 by the Sphinx team +-License: BSD +- +-Files: source/puddlestuff/functions.py +-Copyright: Copyright (C) 2008-2010 concentricpuddle +-License: GPL-2 +- +-Files: source/puddlestuff/tagsources/CDDB.py +-Copyright: 1999 Ben Gertzfield <che@debian.org> +-License: GPL-2+ +-Comment: taken from CDDB.py project +- +-Files: source/puddlestuff/tagsources/_acoustid.py +-Copyright: Copyright 2012, Adrian Sampson. +-License: MIT +-Comment: This file is part of pyacoustid. +- +-Files: source/puddlestuff/audioinfo/_compatid3.py +-Copyright: Copyright (C) 2006 Lukáš Lalinský +- Copyright (C) 2005 Michael Urman +-License: GPL-2+ +-Comment: taken from Picard +- +-Files: source/puddlestuff/audioinfo/wma.py +-License: GPL-2+ +-Comment: derivative work from Picard's wma.py module +- +-Files: source/puddlestuff/data/{copy.png, cut.png, duplicate.png, edit.png, +- filenew.png, preferences.png, playlist.png, quickaction.png, reload.png, +- remove.png, undo.png, save.png, paste.png, action.png, open.png, addfolder.png} +-License: GPL-3+ +-Comment: embedded copies of oxygen-icon-theme image files +- +-Files: source/puddlestuff/resource.py +-Comments: embed source/puddlestuff/data/*.png files. It is compiled by pyrcc4 +- from source/puddlestuff/resourec.qrc, the QT resource file, that so it is its +- preferred form of modification. +- +-Files: debian/* +-Copyright: 2012-2019 Sandro Tosi <morph@debian.org> +-License: same as upstream +- +-Files: debian/templatebuiltins.js +-Copyright: Copyright (c) Django Software Foundation and individual contributors. +-License: Main Django Code Licence +- Redistribution and use in source and binary forms, with or without modification, +- are permitted provided that the following conditions are met: +- . +- 1. Redistributions of source code must retain the above copyright notice, +- this list of conditions and the following disclaimer. +- . +- 2. Redistributions in binary form must reproduce the above copyright +- notice, this list of conditions and the following disclaimer in the +- documentation and/or other materials provided with the distribution. +- . +- 3. Neither the name of Django nor the names of its contributors may be used +- to endorse or promote products derived from this software without +- specific prior written permission. +- . +- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +- ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +- WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +- DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +- ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +- (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +- LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +- ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ++License: GPL-3.0 ++ Copyright: ++ . ++ This package is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License as published by ++ the Free Software Foundation; version 3 dated June, 2007. ++ . ++ This package is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ . ++ You should have received a copy of the GNU General Public License ++ along with this package; if not, visit ++ . ++ <http://www.gnu.org/licenses/gpl-3.0.html> ++ . ++ On Debian GNU/Linux systems, the complete text of the GNU General ++ Public License can be found in `/usr/share/common-licenses/GPL-3' ++ . ++ Contains code from: ++ Picard (http://musicbrainz.org/doc/PicardTagger): GPLv2 ++ CDDB-py (http://cddb-py.sourceforge.net): GPLv2 ++ PyAcoustID (https://github.com/sampsyo/pyacoustid): MIT ++ . ++ And icons from the Oxygen Project (http://oxygen-icons.org) licensed under the GPLv3. ++ . ++ On Debian systems, the complete text of the GNU General Public License ++ Version 3 can be found in `/usr/share/common-licenses/GPL-3'. ++ ++Files: source/puddlestuff/audioinfo/_compatid3.py ++Copyright: 2005 Michael Urman ++ 2006 Lukáš Lalinský ++License: GPL-2.0+ ++ This program is free software; you can redistribute it and/or ++ modify it under the terms of the GNU General Public License ++ as published by the Free Software Foundation; either version 2 ++ of the License, or (at your option) any later version. ++ . ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ . ++ You should have received a copy of the GNU General Public License ++ along with this program; if not, write to the Free Software ++ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. ++ . ++ On Debian systems, the complete text of the GNU General Public License ++ Version 2 can be found in `/usr/share/common-licenses/GPL-2'. ++ ++Files: source/puddlestuff/about.py ++Copyright: __NO_COPYRIGHT__ in: source/puddlestuff/about.py ++License: __UNKNOWN__ ++ Licensed under GPLv3 (<a href="www.gnu.org/licenses/gpl-3.0.html">www.gnu.org/licenses/gpl-3.0.html</a>). ++ ++Files: source/puddlestuff/musiclib.py ++Copyright: __NO_COPYRIGHT__ in: source/puddlestuff/musiclib.py ++License: __UNKNOWN__ ++ self.libattrs.append( ++ {'name': name, 'desc':desc, 'author': author, 'module': lib}) ++ . ++ self.libattrs.extend(extralibs) ++ . ++ if not self.libattrs: ++ raise MusicLibError(0, errors[0]) ++ . ++ self.listbox.addItems([z['name'] for z in self.libattrs]) ++ ++Files: source/puddletag ++Copyright: __NO_COPYRIGHT__ in: source/puddletag ++License: __UNKNOWN__ ++ if langfile: ++ if not langfile.endswith('.qm'): ++ print(translate('Defaults', 'Invalid translation file.')) ++ ++Files: puddletag-docs/source/functionplugin/__init__.py ++Copyright: concentricpuddle, GPLv2 ++License: __UNKNOWN__ ++ There are three types of controls that are allowed in creating a dialog ++ for an Function. TEXT, COMBO and CHECKBOX correspond to a lineedit, combobox ++ and a checkbox respectively. ++ ++#---------------------------------------------------------------------------- ++# xml and html files (skipped): ++# puddletag-docs/rss.xml ++# puddletag-docs/_templates/rss/layout.html ++# puddletag-docs/source/images/tagsource_dialog_tut4\.svg ++# puddletag-docs/source/images/blank.svg ++# puddletag-docs/source/images/tut3.svg ++# puddletag-docs/source/images/tagsource_dialog_tut4.svg ++# puddletag-docs/source/images/eg_tagsource.svg ++# puddletag-docs/source/tut1/2numbered.svg ++# source/logo.svg ++# source/translations/puddletag_de.ts ++# source/translations/puddletag_pt_BR.qm ++# source/translations/puddletag_es_es.qm ++# source/translations/puddletag_ru_RU.qm ++# source/translations/puddletag_sv.ts ++# source/translations/puddletag_sv.qm ++# source/translations/puddletag_pt_BR.ts ++# source/translations/puddletag_fr.qm ++# source/translations/puddletag_nl-nl.qm ++# source/translations/puddletag_afr.ts ++# source/translations/puddletag_es_es.ts ++# source/translations/puddletag_cs.qm ++# source/translations/puddletag_de.qm ++# source/translations/puddletag_fr.ts ++# source/translations/puddletag_ru_RU.ts ++# source/translations/puddletag_nl-nl.ts ++# source/translations/puddletag_cs.ts ++# source/puddlestuff/resourec.qrc ++# source/puddlestuff/data/icon.svg ++ ++#---------------------------------------------------------------------------- ++# huge files (skipped): ++# puddletag-docs/screenshots/small5.png ++# source/puddlestuff/resource.py ++ ++#---------------------------------------------------------------------------- ++# Files marked as NO_LICENSE_TEXT_FOUND may be covered by the following ++# license/copyright files. +diff -Naur /home/bgstack15/dev/puddletag-deb/debian/gbp.conf /home/bgstack15/dev/stackrpms/puddletag/debian/gbp.conf +--- /home/bgstack15/dev/puddletag-deb/debian/gbp.conf 2019-02-03 13:09:12.000000000 -0500 ++++ /home/bgstack15/dev/stackrpms/puddletag/debian/gbp.conf 1969-12-31 19:00:00.000000000 -0500 +@@ -1,2 +0,0 @@ +-[DEFAULT] +-debian-branch=debian/master +diff -Naur /home/bgstack15/dev/puddletag-deb/debian/puddletag.doc-base /home/bgstack15/dev/stackrpms/puddletag/debian/puddletag.doc-base +--- /home/bgstack15/dev/puddletag-deb/debian/puddletag.doc-base 2019-02-03 13:09:12.000000000 -0500 ++++ /home/bgstack15/dev/stackrpms/puddletag/debian/puddletag.doc-base 2019-12-23 08:56:15.628664424 -0500 +@@ -1,4 +1,4 @@ +-Document: puddletag ++Document: puddletag-py3 + Title: A simple, powerful audio tag editor + Author: concentricpuddle + Abstract: puddletag is just a tag editor. Although it’s likely better +@@ -7,5 +7,5 @@ + Section: Sound + + Format: HTML +-Index: /usr/share/doc/puddletag/html/index.html +-Files: /usr/share/doc/puddletag/html/* ++Index: /usr/share/doc/puddletag-py3/html/index.html ++Files: /usr/share/doc/puddletag-py3/html/* +diff -Naur /home/bgstack15/dev/puddletag-deb/debian/README.Debian /home/bgstack15/dev/stackrpms/puddletag/debian/README.Debian +--- /home/bgstack15/dev/puddletag-deb/debian/README.Debian 2019-02-03 13:09:12.000000000 -0500 ++++ /home/bgstack15/dev/stackrpms/puddletag/debian/README.Debian 2019-12-23 09:17:06.905575979 -0500 +@@ -1,4 +1,5 @@ +-Some interesting services: ++puddletag-py3 for Devuan + +-- Where to report bugs upstream: http://code.google.com/p/puddletag/issues/list +-- Upstream documentation: http://puddletag.sourceforge.net/docs.html ++This release of puddletag is the python3 branch from a fork. ++ ++ -- B Stack <bgstack15@gmail.com> Mon, 23 Dec 2019 07:54:40 -0500 +diff -Naur /home/bgstack15/dev/puddletag-deb/debian/rules /home/bgstack15/dev/stackrpms/puddletag/debian/rules +--- /home/bgstack15/dev/puddletag-deb/debian/rules 2019-02-03 13:09:12.000000000 -0500 ++++ /home/bgstack15/dev/stackrpms/puddletag/debian/rules 2019-12-23 08:56:26.972781192 -0500 +@@ -10,7 +10,7 @@ + #export DH_VERBOSE=1 + + %: +- dh $@ --with python2,sphinxdoc ++ dh $@ --with python3,sphinxdoc + + override_dh_clean: + dh_clean +@@ -18,7 +18,7 @@ + + override_dh_auto_install: + cd $(CURDIR)/source ; \ +- python setup.py install --root=$(CURDIR)/debian/puddletag --install-layout=deb ++ python3 setup.py install --root=$(CURDIR)/debian/puddletag-py3 --install-layout=deb + + $(MAKE) -C puddletag-docs documentation SPHINXBUILD=sphinx-build + +diff -Naur /home/bgstack15/dev/puddletag-deb/debian/source/local-options /home/bgstack15/dev/stackrpms/puddletag/debian/source/local-options +--- /home/bgstack15/dev/puddletag-deb/debian/source/local-options 1969-12-31 19:00:00.000000000 -0500 ++++ /home/bgstack15/dev/stackrpms/puddletag/debian/source/local-options 2019-12-23 07:54:46.550447586 -0500 +@@ -0,0 +1,2 @@ ++#abort-on-upstream-changes ++#unapply-patches +diff -Naur /home/bgstack15/dev/puddletag-deb/debian/watch /home/bgstack15/dev/stackrpms/puddletag/debian/watch +--- /home/bgstack15/dev/puddletag-deb/debian/watch 2019-02-03 13:09:12.000000000 -0500 ++++ /home/bgstack15/dev/stackrpms/puddletag/debian/watch 2019-12-23 08:08:35.023049958 -0500 +@@ -1,3 +1,4 @@ ++# You must remove unused comment lines for the released package. + version=3 + opts="filenamemangle=s/(?:.*?)?v?(\d[\d.]*)\.tar\.gz/puddletag-$1.tar.gz/" \ + https://github.com/keithgg/puddletag/tags (?:.*?/)?v?(\d[\d.]*)\.tar\.gz diff --git a/waterfox-ublock-origin/debian/changelog b/waterfox-ublock-origin/debian/changelog index 0f79dd9..60a2b1b 100644 --- a/waterfox-ublock-origin/debian/changelog +++ b/waterfox-ublock-origin/debian/changelog @@ -1,3 +1,9 @@ +waterfox-ublock-origin (1.16.4.25-1+devuan) obs; urgency=medium + + * Update + + -- B Stack <bgstack15@gmail.com> Tue, 25 Aug 2020 14:33:11 -0400 + waterfox-ublock-origin (1.16.4.24-1+devuan) obs; urgency=medium * Update diff --git a/waterfox-ublock-origin/waterfox-ublock-origin.spec b/waterfox-ublock-origin/waterfox-ublock-origin.spec index 2fc699d..5c8a2b4 100644 --- a/waterfox-ublock-origin/waterfox-ublock-origin.spec +++ b/waterfox-ublock-origin/waterfox-ublock-origin.spec @@ -4,7 +4,7 @@ %global app_id \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\} Name: %{app_name}-ublock-origin -Version: 1.16.4.24 +Version: 1.16.4.25 Release: 1 Summary: uBlock Origin installed to system Waterfox extensions directory @@ -52,6 +52,9 @@ rm -rf %{buildroot} %{moz_extensions}/*/*.xpi %changelog +* Tue Aug 25 2020 B Stack <bgstack15@gmail.com> - 1.16.4.25-1 +- Update + * Tue Aug 11 2020 B Stack <bgstack15@gmail.com> - 1.16.4.24-1 - Update diff --git a/waterfox/26459c47f867dc1882fa7b87e32a9e8fc5e125e5.patch b/waterfox/26459c47f867dc1882fa7b87e32a9e8fc5e125e5.patch new file mode 100644 index 0000000..f600f17 --- /dev/null +++ b/waterfox/26459c47f867dc1882fa7b87e32a9e8fc5e125e5.patch @@ -0,0 +1,38 @@ +From 26459c47f867dc1882fa7b87e32a9e8fc5e125e5 Mon Sep 17 00:00:00 2001 +From: Andrea Marchesini <amarchesini@mozilla.com> +Date: Mon, 13 Jul 2020 08:34:07 +0000 +Subject: [PATCH] Bug 1650811 - Make Base64 compatible with ReadSegments() with + small buffers. r=asuth, a=RyanVM + +Differential Revision: https://phabricator.services.mozilla.com/D82522 +--- + netwerk/test/gtest/moz.build | 1 + + xpcom/io/Base64.cpp | 3 +++ + 2 files changed, 4 insertions(+) + +diff --git a/netwerk/test/gtest/moz.build b/netwerk/test/gtest/moz.build +index 34a06c9943ac..fa7c90ff3bdd 100644 +--- a/netwerk/test/gtest/moz.build ++++ b/netwerk/test/gtest/moz.build +@@ -6,6 +6,7 @@ + + UNIFIED_SOURCES += [ + 'TestBase64Stream.cpp', ++ 'TestBufferedInputStream.cpp', + 'TestHeaders.cpp', + 'TestHttpAuthUtils.cpp', + 'TestProtocolProxyService.cpp', +diff --git a/xpcom/io/Base64.cpp b/xpcom/io/Base64.cpp +index 2f9f50b6528b..72ad070c4bf5 100644 +--- a/xpcom/io/Base64.cpp ++++ b/xpcom/io/Base64.cpp +@@ -107,6 +107,9 @@ nsresult EncodeInputStream_Encoder(nsIInputStream* aStream, void* aClosure, + // We consume the whole data always. + *aWriteCount = aCount; + ++ // We consume the whole data always. ++ *aWriteCount = aCount; ++ + // If we have any data left from last time, encode it now. + uint32_t countRemaining = aCount; + const unsigned char* src = (const unsigned char*)aFromSegment; diff --git a/waterfox/debian/changelog b/waterfox/debian/changelog index cf17a67..8fe42fc 100644 --- a/waterfox/debian/changelog +++ b/waterfox/debian/changelog @@ -1,3 +1,14 @@ +waterfox (2020.08-1+devuan) obs; urgency=medium + + - Latest version + * Updated Network Security Services + * Set maximum supported TLS version to 1.3 and minimum to 1.2 + * Updated SQLite library + * Improved <table> support + * Latest security advisories patched (best effort) + + -- Ben Stack <bgstack15@gmail.com> Tue, 25 Aug 2020 14:26:28 -0400 + waterfox (2020.07-1+devuan) obs; urgency=medium - Latest version. No release notes yet on waterfox.net diff --git a/waterfox/debian/waterfox_devuan.dsc b/waterfox/debian/waterfox_devuan.dsc index 84f1627..9d4a57a 100644 --- a/waterfox/debian/waterfox_devuan.dsc +++ b/waterfox/debian/waterfox_devuan.dsc @@ -2,7 +2,7 @@ Format: 3.0 (quilt) Source: waterfox Binary: waterfox Architecture: any -Version: 2020.07.2-1+devuan +Version: 2020.08-1+devuan Maintainer: B Stack <bgstack15@gmail.com> Homepage: https://www.waterfox.net/ Standards-Version: 4.1.4 diff --git a/waterfox/waterfox.spec b/waterfox/waterfox.spec index e3444f4..3b3e5af 100644 --- a/waterfox/waterfox.spec +++ b/waterfox/waterfox.spec @@ -153,10 +153,14 @@ BuildRequires: %{scl_buildreq} %if 0%{?rhel} >= 7 %global system_webp 0 %endif +# added for 2020.08 because right now el8 does not have sqlite >= 3.30.1 +%if 0%{?rhel} == 8 +%global system_sqlite 0 +%endif Summary: Waterfox Web browser Name: waterfox -Version: 2020.07.2 +Version: 2020.08 Release: 11%{?branch:.%{branch}}%{?gver}%{?dist} URL: https://www.waterfox.net License: MPLv1.1 or GPLv2+ or LGPLv2+ @@ -221,6 +225,7 @@ Patch420: https://hg.mozilla.org/mozilla-central/raw-rev/97dae871389b#/mo # Upstream updates/PRs/Reverts #Patch???: %%{vc_url}/commit/commit.patch#/%%{name}-gh-commit.patch +Patch450: %{vc_url}/commit/26459c47f867dc1882fa7b87e32a9e8fc5e125e5.patch#/%{name}-gh-26459c4.patch # Debian patches Patch500: mozilla-440908.patch @@ -425,6 +430,8 @@ This package contains results of tests executed during build. %patch419 -p1 -b .mozilla-1320560 %patch420 -p1 -b .mozilla-1389436 +%patch450 -p1 -b .gh26459c4 -R + # Debian extension patch %patch500 -p1 -b .440908 @@ -457,9 +464,9 @@ done # 3: no apply # 4: uncertain for i in \ - 702179 991253 1021761 1144632 1288587 1379148 1393235 1393283 1393627 1395486 1396722 \ + 702179 730495 991253 1021761 1144632 1288587 1379148 1393235 1393283 1393627 1395486 1396722 \ 1401909 1419762 1427126 1430508 1433747 1452576 1453127 1454285 1455235 1466606 1469257 \ - 1384121 1384701 1388744 1401063 1413143 1415883 1402442 1437450 \ + 1384121 1384701 1388744 1401063 1406396 1413143 1415883 1402442 1437450 \ 1447519 do rm -f _patches/patch-bug${i} @@ -1082,11 +1089,14 @@ fi #--------------------------------------------------------------------- %changelog -* Tue Aug 11 2020 B Stack <bgstack15@gmail.com> - 2020.07.2-11.classic +* Wed Aug 26 2020 B Stack <bgstack15@gmail.com> - 2020.08-11.classic - add el7 and el8 support - repackage for stackrpms - disable simd globally +* Tue Aug 25 2020 Phantom X <megaphantomx at hotmail dot com> - 2020.08-1.classic +- 2020.08 + * Wed Aug 05 2020 Phantom X <megaphantomx at hotmail dot com> - 2020.07.2-1.classic - 2020.07.2 diff --git a/xdgmenumaker/README.md b/xdgmenumaker/README.md index 5e9aa56..af7f1f9 100644 --- a/xdgmenumaker/README.md +++ b/xdgmenumaker/README.md @@ -23,7 +23,7 @@ https://wiki.archlinux.org/index.php/Xdg-menu # Reverse dependency matrix Distro | xdgmenumaker version ---------- | ---------------- -All | 1.5 +All | 1.6 # Differences from upstream None diff --git a/xdgmenumaker/debian/changelog b/xdgmenumaker/debian/changelog index 1b9715f..a960442 100644 --- a/xdgmenumaker/debian/changelog +++ b/xdgmenumaker/debian/changelog @@ -1,3 +1,9 @@ +xdgmenumaker (1.6-1+devuan) obs; urgency=medium + + * Handle OnlyShowIn and NotShowIn better patch merged into upstream + + -- Ben Stack <bgstack15@gmail.com> Thu, 17 Sep 2020 10:00:05 -0400 + xdgmenumaker (1.5-5+devuan) obs; urgency=medium * Suppress minor warnings during dpkg-trigger diff --git a/xdgmenumaker/debian/control b/xdgmenumaker/debian/control index 384cccf..29a70cb 100644 --- a/xdgmenumaker/debian/control +++ b/xdgmenumaker/debian/control @@ -25,7 +25,7 @@ Depends: ${misc:Depends}, ${shlibs:Depends}, # python2 # python-gi # python-gtk2 -Suggests: +Recommends: # for python3: python3-pil # for python2: diff --git a/xdgmenumaker/debian/xdgmenumaker_devuan.dsc b/xdgmenumaker/debian/xdgmenumaker+devuan.dsc index de1eb65..7386485 100644 --- a/xdgmenumaker/debian/xdgmenumaker_devuan.dsc +++ b/xdgmenumaker/debian/xdgmenumaker+devuan.dsc @@ -2,7 +2,7 @@ Format: 3.0 (quilt) Source: xdgmenumaker Binary: xdgmenumaker Architecture: any -Version: 1.5-5+devuan +Version: 1.6-1+devuan Maintainer: B Stack <bgstack15@gmail.com> Homepage: https://github.com/gapan/xdgmenumaker Standards-Version: 4.1.4 @@ -10,5 +10,5 @@ Build-Depends: debhelper (>= 12~), dh-python, txt2tags Package-List: xdgmenumaker deb x11 optional arch=any Files: - 00000000000000000000000000000000 1 xdgmenumaker_1.5.orig.tar.gz + 00000000000000000000000000000000 1 xdgmenumaker.orig.tar.gz 00000000000000000000000000000000 1 xdgmenumaker_devuan.debian.tar.xz diff --git a/xdgmenumaker/debian/xdgmenumaker-user-fluxbox.desktop b/xdgmenumaker/debian/xdgmenumaker-user-fluxbox.desktop index 2064c6f..348f6dc 100644 --- a/xdgmenumaker/debian/xdgmenumaker-user-fluxbox.desktop +++ b/xdgmenumaker/debian/xdgmenumaker-user-fluxbox.desktop @@ -10,3 +10,4 @@ StartupNotify=true Terminal=false Type=Application Version=1.0 +OnlyShowIn=Fluxbox; |