diff options
22 files changed, 313 insertions, 383 deletions
diff --git a/freefilesync/_service b/freefilesync/_service new file mode 100644 index 0000000..9ff7c86 --- /dev/null +++ b/freefilesync/_service @@ -0,0 +1,28 @@ +<services> + <service name="tar_scm"> + <param name="scm">git</param> + <param name="url">https://gitlab.com/bgstack15/stackrpms.git</param> + <param name="subdir">freefilesync/debian</param> + <param name="filename">debian</param> + <param name="revision">freefilesync-bump</param> + <param name="version">_none_</param> + </service> + <service name="recompress"> + <param name="file">*.tar</param> + <param name="compression">xz</param> + </service> + <service name="tar_scm"> + <param name="scm">git</param> + <param name="url">https://gitlab.com/opensource-tracking/FreeFileSync.git</param> + <param name="revision">11.21</param> + <param name="version">_none_</param> + </service> + <service name="recompress"> + <param name="file">*.tar</param> + <param name="compression">gz</param> + </service> + <service name="extract_file"> + <param name="archive">*.tar.xz</param> + <param name="files">*/*.dsc</param> + </service> +</services> diff --git a/freefilesync/debian/changelog b/freefilesync/debian/changelog index 9037cac..f129b49 100644 --- a/freefilesync/debian/changelog +++ b/freefilesync/debian/changelog @@ -1,13 +1,30 @@ +freefilesync (11.21-1+devuan) obs; urgency=medium + + * Upstream updates + * Support volume GUID as path: + \\?\Volume{01234567-89ab-cdef-0123-456789abcdef} (Windows) + * Avoid Two-Way conflict when changing folder name upper/lower-case + * List hidden warning messages in options dialog + * Fixed buffer overflow while receiving SFTP server banner + * Create crash dumps even if FFS-internal crash handling doesn't kick in + * Log time when error occured, not when it is reported + * Swap sides: Require confirmation only after comparison + * Updated translation files + * Dpkg updates + * Remove icon loader patch (addressed by upstream) + + -- B. Stack <bgstack15@gmail.com> Sun, 22 May 2022 20:35:38 -0400 + freefilesync (11.20-1+devuan) obs; urgency=medium * Upstream updates * Fixed broken icon scaling on high-DPI displays - * Improved performance for huge exclusion filter lists: linear to + * Improved performance for huge exclusion filter lists: linear to constant(!) time * Support sync with Google Drive starred folders - * Access "My Computers" (as created by Google Backup and Sync) if + * Access "My Computers" (as created by Google Backup and Sync) if starred - * Western Digital Mycloud NAS: fixed ERROR_ALREADY_EXISTS when changing + * Western Digital Mycloud NAS: fixed ERROR_ALREADY_EXISTS when changing case * Added per-file progress for "copy to" function * Have filter wildcard ? not match path separator @@ -35,7 +52,7 @@ freefilesync (11.18-1+devuan) obs; urgency=medium * Fixed SFTP key file login error on OpenSSH_8.8p1 * Add error details for NSFileReadUnknownError (macOS) * Disable new config button when already at default - * Use user language instead of region locale during installation + * Use user language instead of region locale during installation * Bump required libcurl4-openssl-dev >= 7.82.0 -- B. Stack <bgstack15@gmail.com> Wed, 09 Mar 2022 09:38:41 -0500 diff --git a/freefilesync/debian/freefilesync+devuan.dsc b/freefilesync/debian/freefilesync+devuan.dsc index e2ca5a6..e43b7f0 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.20-1+devuan +Version: 11.21-1+devuan Maintainer: B. Stack <bgstack15@gmail.com> Homepage: https://freefilesync.org/ Standards-Version: 4.1.4 diff --git a/freefilesync/debian/patches/ffs_devuan.patch b/freefilesync/debian/patches/ffs_devuan.patch index da59209..fc4db2d 100644 --- a/freefilesync/debian/patches/ffs_devuan.patch +++ b/freefilesync/debian/patches/ffs_devuan.patch @@ -1,16 +1,16 @@ Author: bgstack15 Source: Original research -Last modified: 2022-04-18 +Last-Modified: 2022-05-22 +Last-Version: 11.21 Message: Main patch to compile on Devuan. diff -x '*.swp' -x '.git*' -x '*.orig' -x '*.rej' -Naur 10.18-0/FreeFileSync/Source/ffs_paths.cpp 10.18-1/FreeFileSync/Source/ffs_paths.cpp --- 10.13-0/FreeFileSync/Source/ffs_paths.cpp 2019-06-14 20:23:07.615661499 -0400 -+++ 10.18-1/FreeFileSync/Source/ffs_paths.cpp 2019-11-21 09:41:42.287474472 -0500 -@@ -64,7 +64,8 @@ ++++ 11.21-1/FreeFileSync/Source/ffs_paths.cpp 2019-11-21 09:41:42.287474472 -0500 +@@ -49,7 +49,7 @@ - Zstring fff::getResourceDirPf() + Zstring fff::getResourceDirPath() { -- return getProcessParentFolderPath() + FILE_NAME_SEPARATOR + Zstr("Resources") + FILE_NAME_SEPARATOR; -+ // For Fedora, EL and Devuan, install to /usr/share/freefilesync specificly +- return appendPath(getProcessParentFolderPath(), Zstr("Resources")); + return Zstr("/usr/share/freefilesync/"); } diff --git a/freefilesync/debian/patches/ffs_no_check_updates.patch b/freefilesync/debian/patches/ffs_no_check_updates.patch index bdc2ebd..eececed 100644 --- a/freefilesync/debian/patches/ffs_no_check_updates.patch +++ b/freefilesync/debian/patches/ffs_no_check_updates.patch @@ -3,54 +3,54 @@ Date: 2022-04-18 Author: bgstack15 Message: This is a major rewrite of the ffs_no_check_updates patch from before 11.10 which disabled only a few technical www interactions. This current version completely deletes all logic associated with checking the version of the program. diff -aur 11.18-0/FreeFileSync/Source/ui/gui_generated.cpp 11.18-1/FreeFileSync/Source/ui/gui_generated.cpp ---- 11.18-0/FreeFileSync/Source/ui/gui_generated.cpp 2022-03-08 16:51:21.090657955 -0500 -+++ 11.18-1/FreeFileSync/Source/ui/gui_generated.cpp 2022-03-08 16:55:57.009584234 -0500 +--- 11.21-0/FreeFileSync/Source/ui/gui_generated.cpp 2022-05-22 17:09:32.246809650 -0400 ++++ 11.21-1/FreeFileSync/Source/ui/gui_generated.cpp 2022-05-22 17:43:22.568148782 -0400 @@ -110,15 +110,6 @@ - m_menuHelp->AppendSeparator(); + m_menuHelp->AppendSeparator(); -- m_menuItemCheckVersionNow = new wxMenuItem( m_menuHelp, wxID_ANY, wxString( _("&Check for updates now") ) , wxEmptyString, wxITEM_NORMAL ); -- m_menuHelp->Append( m_menuItemCheckVersionNow ); +- m_menuItemCheckVersionNow = new wxMenuItem( m_menuHelp, wxID_ANY, wxString( _("&Check for updates now") ), wxEmptyString, wxITEM_NORMAL ); +- m_menuHelp->Append( m_menuItemCheckVersionNow ); - -- m_menuItemCheckVersionAuto = new wxMenuItem( m_menuHelp, wxID_ANY, wxString( _("Check &automatically once a week") ) , wxEmptyString, wxITEM_CHECK ); -- m_menuHelp->Append( m_menuItemCheckVersionAuto ); -- m_menuItemCheckVersionAuto->Check( true ); +- m_menuItemCheckVersionAuto = new wxMenuItem( m_menuHelp, wxID_ANY, wxString( _("Check &automatically once a week") ), wxEmptyString, wxITEM_CHECK ); +- m_menuHelp->Append( m_menuItemCheckVersionAuto ); +- m_menuItemCheckVersionAuto->Check( true ); - -- m_menuHelp->AppendSeparator(); +- m_menuHelp->AppendSeparator(); - - m_menuItemAbout = new wxMenuItem( m_menuHelp, wxID_ABOUT, wxString( _("&About") ) + wxT('\t') + wxT("Shift+F1"), wxEmptyString, wxITEM_NORMAL ); - m_menuHelp->Append( m_menuItemAbout ); + m_menuItemAbout = new wxMenuItem( m_menuHelp, wxID_ABOUT, wxString( _("&About") ) + wxT('\t') + wxT("Shift+F1"), wxEmptyString, wxITEM_NORMAL ); + m_menuHelp->Append( m_menuItemAbout ); @@ -1131,8 +1122,6 @@ - m_menuTools->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuExportFileList ), this, m_menuItemExportList->GetId()); - m_menuTools->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuResetLayout ), this, m_menuItemResetLayout->GetId()); - m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onShowHelp ), this, m_menuItemHelp->GetId()); -- m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuCheckVersion ), this, m_menuItemCheckVersionNow->GetId()); -- m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuCheckVersionAutomatically ), this, m_menuItemCheckVersionAuto->GetId()); - m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuAbout ), this, m_menuItemAbout->GetId()); - m_bpButtonCmpConfig->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onCmpSettings ), NULL, this ); - m_bpButtonCmpConfig->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onCompSettingsContextMouse ), NULL, this ); + m_menuTools->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuExportFileList ), this, m_menuItemExportList->GetId()); + m_menuTools->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuResetLayout ), this, m_menuItemResetLayout->GetId()); + m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onShowHelp ), this, m_menuItemHelp->GetId()); +- m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuCheckVersion ), this, m_menuItemCheckVersionNow->GetId()); +- m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuCheckVersionAutomatically ), this, m_menuItemCheckVersionAuto->GetId()); + m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuAbout ), this, m_menuItemAbout->GetId()); + m_bpButtonCmpConfig->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onCmpSettings ), NULL, this ); + m_bpButtonCmpConfig->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onCompSettingsContextMouse ), NULL, this ); diff -aur 11.18-0/FreeFileSync/Source/ui/gui_generated.h 11.18-1/FreeFileSync/Source/ui/gui_generated.h ---- 11.18-0/FreeFileSync/Source/ui/gui_generated.h 2022-03-08 16:51:21.114658209 -0500 -+++ 11.18-1/FreeFileSync/Source/ui/gui_generated.h 2022-03-08 16:56:17.057796860 -0500 -@@ -95,8 +95,6 @@ - wxMenuItem* m_menuItemShowOverview; - wxMenu* m_menuHelp; - wxMenuItem* m_menuItemHelp; -- wxMenuItem* m_menuItemCheckVersionNow; -- wxMenuItem* m_menuItemCheckVersionAuto; - wxMenuItem* m_menuItemAbout; - wxBoxSizer* bSizerPanelHolder; - wxPanel* m_panelTopButtons; -@@ -231,8 +229,6 @@ - virtual void onMenuExportFileList( wxCommandEvent& event ) { event.Skip(); } - virtual void onMenuResetLayout( wxCommandEvent& event ) { event.Skip(); } - virtual void onShowHelp( wxCommandEvent& event ) { event.Skip(); } -- virtual void onMenuCheckVersion( wxCommandEvent& event ) { event.Skip(); } -- virtual void onMenuCheckVersionAutomatically( wxCommandEvent& event ) { event.Skip(); } - virtual void onMenuAbout( wxCommandEvent& event ) { event.Skip(); } - virtual void onCompSettingsContextMouse( wxMouseEvent& event ) { event.Skip(); } - virtual void onCompSettingsContext( wxCommandEvent& event ) { event.Skip(); } +--- 11.21-0/FreeFileSync/Source/ui/gui_generated.h 2022-05-22 17:09:32.246809650 -0400 ++++ 11.21-1/FreeFileSync/Source/ui/gui_generated.h 2022-05-22 17:41:42.058897375 -0400 +@@ -96,8 +96,6 @@ + wxMenuItem* m_menuItemShowOverview; + wxMenu* m_menuHelp; + wxMenuItem* m_menuItemHelp; +- wxMenuItem* m_menuItemCheckVersionNow; +- wxMenuItem* m_menuItemCheckVersionAuto; + wxMenuItem* m_menuItemAbout; + wxBoxSizer* bSizerPanelHolder; + wxPanel* m_panelTopButtons; +@@ -232,8 +230,6 @@ + virtual void onMenuExportFileList( wxCommandEvent& event ) { event.Skip(); } + virtual void onMenuResetLayout( wxCommandEvent& event ) { event.Skip(); } + virtual void onShowHelp( wxCommandEvent& event ) { event.Skip(); } +- virtual void onMenuCheckVersion( wxCommandEvent& event ) { event.Skip(); } +- virtual void onMenuCheckVersionAutomatically( wxCommandEvent& event ) { event.Skip(); } + virtual void onMenuAbout( wxCommandEvent& event ) { event.Skip(); } + virtual void onCompSettingsContextMouse( wxMouseEvent& event ) { event.Skip(); } + virtual void onCompSettingsContext( wxCommandEvent& event ) { event.Skip(); } diff -aur 11.10-1/FreeFileSync/Source/ui/main_dlg.cpp 11.10-2/FreeFileSync/Source/ui/main_dlg.cpp --- 11.16-0/FreeFileSync/Source/ui/main_dlg.cpp 2022-01-04 08:52:19.811432573 -0500 +++ 11.16-1/FreeFileSync/Source/ui/main_dlg.cpp 2022-01-04 08:57:14.506728896 -0500 @@ -81,7 +81,7 @@ diff -aur 11.10-1/FreeFileSync/Source/ui/main_dlg.cpp 11.10-2/FreeFileSync/Sourc auiMgr_.Update(); } -@@ -5680,72 +5674,6 @@ +@@ -5706,72 +5700,6 @@ } } @@ -103,7 +103,7 @@ diff -aur 11.10-1/FreeFileSync/Source/ui/main_dlg.cpp 11.10-2/FreeFileSync/Sourc - - if (shouldRunAutomaticUpdateCheck(globalCfg_.lastUpdateCheck)) - { -- flashStatusInformation(_("Searching for program updates...")); +- flashStatusInfo(_("Searching for program updates...")); - //synchronous update check is sufficient here: - automaticUpdateCheckEval(*this, globalCfg_.lastUpdateCheck, globalCfg_.lastOnlineVersion, - automaticUpdateCheckRunAsync(automaticUpdateCheckPrepare(*this).get()).get()); @@ -134,7 +134,7 @@ diff -aur 11.10-1/FreeFileSync/Source/ui/main_dlg.cpp 11.10-2/FreeFileSync/Sourc - - if (shouldRunAutomaticUpdateCheck(globalCfg_.lastUpdateCheck)) - { -- flashStatusInformation(_("Searching for program updates...")); +- flashStatusInfo(_("Searching for program updates...")); - - std::shared_ptr<const UpdateCheckResultPrep> resultPrep = automaticUpdateCheckPrepare(*this); //run on main thread: - diff --git a/freefilesync/debian/patches/ffs_traditional_view.patch b/freefilesync/debian/patches/ffs_traditional_view.patch index b9b35cc..aeeb9b2 100644 --- a/freefilesync/debian/patches/ffs_traditional_view.patch +++ b/freefilesync/debian/patches/ffs_traditional_view.patch @@ -1,11 +1,11 @@ -Version: 11.6 -Date: 2021-02-02 +Version: 11.21 +Date: 2022-05-22 Author: bgstack15@gmail.com Message: restore a traditional view to FreeFileSync diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11.3-1/FreeFileSync/Source/ui/file_grid.cpp ---- 11.3-1/FreeFileSync/Source/ui/file_grid.cpp 2020-11-02 11:38:14.806496077 -0500 -+++ 11.3-2/FreeFileSync/Source/ui/file_grid.cpp 2020-11-05 11:11:46.146360956 -0500 -@@ -493,8 +493,10 @@ +--- 11.21-0/FreeFileSync/Source/ui/file_grid.cpp 2022-05-22 17:09:32.242809600 -0400 ++++ 11.21-1/FreeFileSync/Source/ui/file_grid.cpp 2022-05-22 20:23:04.015916689 -0400 +@@ -475,8 +475,10 @@ case ItemPathFormat::name: return utfTo<std::wstring>(fsObj->getItemName<side>()); case ItemPathFormat::relative: @@ -16,7 +16,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. return AFS::getDisplayPath(fsObj->getAbstractPath<side>()); } assert(false); -@@ -547,8 +549,13 @@ +@@ -529,8 +531,13 @@ else GridData::renderRowBackgound(dc, rect, row, true /*enabled*/, true /*selected*/, rowHover); @@ -31,7 +31,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. clearArea(dc, rectLine, row == pdi.groupLastRow - 1 /*last group item*/ ? getColorGridLine() : getDefaultBackgroundColorAlternating(pdi.groupIdx % 2 != 0)); } -@@ -654,6 +661,26 @@ +@@ -636,6 +643,26 @@ else //=> BaseFolderPair groupParentFolder = AFS::getDisplayPath(pdi.fsObj->base().getAbstractPath<side>()); break; @@ -58,7 +58,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. } //path components should follow the app layout direction and are NOT a single piece of text! -@@ -679,11 +706,42 @@ +@@ -661,11 +688,38 @@ int groupNameWidth = groupName.empty() ? 0 : (gapSize_ + iconSize + gapSize_ + getTextExtentBuffered(dc, groupName).x); const int groupNameMinWidth = groupName.empty() ? 0 : (gapSize_ + iconSize + gapSize_ + ellipsisWidth); @@ -77,10 +77,6 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. + // start trad patch + + // rearrange this one section -+ //add slashes for better readability + a wide gap for disambiguation -+ assert(!contains(groupParentFolder, L'/') || !contains(groupParentFolder, L'\\')); -+ const wchar_t groupParentSep = contains(groupParentFolder, L'/') ? L'/' : (contains(groupParentFolder, L'\\') ? L'\\' : FILE_NAME_SEPARATOR); -+ + switch (itemPathFormat_) + { + case ItemPathFormat::traditional: @@ -102,18 +98,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. //not enough space? => collapse if (int excessWidth = groupParentWidth + groupNameWidth + groupItemsWidth - maxWidth; excessWidth > 0) -@@ -693,10 +751,6 @@ - //1. render group components on two rows - stackedGroupRender = true; - -- //add slashes for better readability + a wide gap for disambiguation -- assert(!contains(groupParentFolder, L'/') || !contains(groupParentFolder, L'\\')); -- const wchar_t groupParentSep = contains(groupParentFolder, L'/') ? L'/' : (contains(groupParentFolder, L'\\') ? L'\\' : FILE_NAME_SEPARATOR); -- - if (!endsWith(groupParentFolder, L'/' ) && //e.g. ftp://server/ - !endsWith(groupParentFolder, L'\\')) /*e.g. C:\ */ - groupParentFolder += groupParentSep; -@@ -755,6 +809,11 @@ +@@ -731,6 +785,11 @@ } } } @@ -125,7 +110,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. return { -@@ -873,6 +932,9 @@ +@@ -851,6 +910,9 @@ rectGroup = rectGroupParent = rectGroupName = rectTmp; rectGroupParent.width = groupParentWidth; @@ -135,7 +120,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. rectGroupName .width = groupNameWidth; if (stackedGroupRender) -@@ -896,6 +958,11 @@ +@@ -874,6 +936,11 @@ rectGroupItems.width = 0; } @@ -147,7 +132,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. //------------------------------------------------------------------------- { //clear background below parent path => harmonize with renderRowBackgound() -@@ -906,8 +973,8 @@ +@@ -884,8 +951,8 @@ wxRect rectGroupBack = rectGroup; rectGroupBack.width += 2 * gapSize_; //include gap before vline @@ -158,7 +143,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. clearArea(dc, rectGroupBack, getDefaultBackgroundColorAlternating(pdi.groupIdx % 2 == 0)); //clearArea() is surprisingly expensive => call just once! -@@ -924,7 +991,8 @@ +@@ -900,7 +967,8 @@ rectNav.width = fastFromDIP(20); if (row == pdi.groupLastRow - 1 /*last group item*/) //preserve the group separation line! @@ -168,7 +153,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. wxColor backCol = wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW); dc.GetPixel(rectNav.GetTopRight(), &backCol); //e.g. selected row! -@@ -914,13 +982,13 @@ +@@ -908,13 +976,13 @@ dc.GradientFillLinear(rectNav, getColorSelectionGradientFrom(), backCol, wxEAST); } @@ -184,7 +169,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. wxDCTextColourChanger textColorGroupName(dc); //folder background: coordinate with renderRowBackgound() -@@ -974,9 +1042,9 @@ +@@ -947,9 +1015,9 @@ drawCellText(dc, rectGroupName, groupName, wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL, &getTextExtentBuffered(dc, groupName)); } @@ -196,7 +181,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. (groupName.empty() || !pdi.folderGroupObj->isEmpty<side>())) //don't show for missing folders { wxRect rectGroupParentText = rectGroupParent; -@@ -975,16 +1043,16 @@ +@@ -969,16 +1037,16 @@ rectGroupItems.x += 2 * gapSize_; rectGroupItems.width -= 2 * gapSize_; @@ -217,7 +202,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. drawCudHighlight(rectItemsBack, pdi.fsObj->getSyncOperation()); -@@ -1134,7 +1202,12 @@ +@@ -1105,7 +1173,12 @@ groupNameWidth] = getGroupRenderLayout(dc, row, pdi, insanelyHugeWidth); assert(!stackedGroupRender); @@ -231,7 +216,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. const int fileIconWidth = getIconManager().getIconBuffer() ? gapSize_ + getIconManager().getIconSize() : 0; const int ellipsisWidth = getTextExtentBuffered(dc, ELLIPSIS).x; const int itemWidth = itemName.empty() ? 0 : -@@ -1166,6 +1239,10 @@ +@@ -1137,6 +1210,10 @@ return _("Relative path"); case ItemPathFormat::full: return _("Full path"); @@ -242,7 +227,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. } assert(false); break; -@@ -1423,7 +1500,8 @@ +@@ -1393,7 +1470,8 @@ GridData::renderRowBackgound(dc, rect, row, true /*enabled*/, true /*selected*/, rowHover); //---------------------------------------------------------------------------------- @@ -252,7 +237,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. clearArea(dc, rectLine, row == pdi.groupLastRow - 1 /*last group item*/ ? getColorGridLine() : getDefaultBackgroundColorAlternating(pdi.groupIdx % 2 != 0)); } -@@ -1447,7 +1525,8 @@ +@@ -1417,7 +1495,8 @@ { wxRect rectBack = rect; if (row == pdi.groupLastRow - 1 /*last group item*/) //preserve the group separation line! @@ -276,8 +261,8 @@ diff -x '.git*' -x '*.orig' -x '*.rej' -aur 11.2-1/FreeFileSync/Source/ui/file_g const ItemPathFormat defaultItemPathFormatLeftGrid = ItemPathFormat::relative; diff -x '.git*' -x '*.orig' -x '*.rej' -aur 11.2-1/FreeFileSync/Source/ui/main_dlg.cpp 11.2-1-trad3/FreeFileSync/Source/ui/main_dlg.cpp --- 11.2-1/FreeFileSync/Source/ui/main_dlg.cpp 2020-10-02 20:49:11.487782099 -0400 -+++ 11.12-1/FreeFileSync/Source/ui/main_dlg.cpp 2021-07-15 20:22:02.191278722 -0400 -@@ -2653,6 +2647,8 @@ ++++ 11.21-1/FreeFileSync/Source/ui/main_dlg.cpp 2022-05-22 20:26:31.350461792 -0400 +@@ -2741,6 +2741,8 @@ addFormatEntry(_("Item name" ), ItemPathFormat::name); addFormatEntry(_("Relative path"), ItemPathFormat::relative); addFormatEntry(_("Full path" ), ItemPathFormat::full); @@ -285,7 +270,7 @@ diff -x '.git*' -x '*.orig' -x '*.rej' -aur 11.2-1/FreeFileSync/Source/ui/main_d + addFormatEntry(_("Trad. relative"),ItemPathFormat::tradrel); //---------------------------------------------------------------------------------------------- - auto setIconSize = [&](FileIconSize sz, bool showIcons) + auto setIconSize = [&](GridIconSize sz, bool showIcons) diff -x '.git*' -x '*.orig' -x '*.rej' -aur 11.2-1/FreeFileSync/Source/config.cpp 11.2-1-trad3/FreeFileSync/Source/config.cpp --- 11.2-1/FreeFileSync/Source/config.cpp 2020-10-02 14:39:05.233462578 -0400 +++ 11.2-1-trad3/FreeFileSync/Source/config.cpp 2020-10-02 20:22:24.275555557 -0400 diff --git a/freefilesync/debian/patches/revert_zenju_aggressive_upstreamisms.patch b/freefilesync/debian/patches/revert_zenju_aggressive_upstreamisms.patch index fda8cc2..43fec48 100644 --- a/freefilesync/debian/patches/revert_zenju_aggressive_upstreamisms.patch +++ b/freefilesync/debian/patches/revert_zenju_aggressive_upstreamisms.patch @@ -1,6 +1,6 @@ Message: Some of these can be traced back to version 10.23 which was the last to not use <unordered_map> -Date: 2022-04-18 -Version: 11.20 +Date: 2022-05-22 +Version: 11.21 Author: bgstack15 diff -x '*.rej' -x '*.orig' -x '*.git*' -Naur 10.24-0/wx+/choice_enum.h 10.24-1/wx+/choice_enum.h --- 10.24-0/wx+/choice_enum.h 2020-05-17 18:30:59.441499418 -0400 @@ -155,8 +155,8 @@ diff -x '*.orig' -x '*.rej' -aur 11.1-1/wx+/bitmap_button.h 11.1-2/wx+/bitmap_bu { SetLabel(label); diff -aur -x '*.git*' -x '.*.swp' -x '*.orig' -x '*.rej' 11.6-0/wx+/dc.h 11.6-1/wx+/dc.h ---- 11.20-0/wx+/dc.h 2022-04-18 09:49:31.921386600 -0400 -+++ 11.20-1/wx+/dc.h 2022-04-18 10:12:04.667907393 -0400 +--- 11.21-0/wx+/dc.h 2022-05-22 17:09:32.250809701 -0400 ++++ 11.21-1/wx+/dc.h 2022-05-22 20:28:53.788193992 -0400 @@ -12,7 +12,7 @@ #include <zen/basic_math.h> #include <wx/dcbuffer.h> //for macro: wxALWAYS_NATIVE_DOUBLE_BUFFER @@ -175,18 +175,17 @@ diff -aur -x '*.git*' -x '.*.swp' -x '*.orig' -x '*.rej' 11.6-0/wx+/dc.h 11.6-1/ -#endif //GTK2 doesn't properly support high DPI: https://freefilesync.org/forum/viewtopic.php?t=6114 //=> requires general fix at wxWidgets-level - -@@ -119,11 +116,11 @@ + +@@ -119,11 +116,10 @@ inline -wxBitmapBundle toBitmapBundle(const wxImage& img /*expected to be DPI-scaled!*/) +wxBitmap toBitmapBundle(const wxImage& img /*expected to be DPI-scaled!*/) { - //return wxBitmap(img, -1 /*depth*/, static_cast<double>(getDPI()) / defaultDpi); not (yet) implemented + //return wxBitmap(img, -1 /*depth*/, static_cast<double>(getDPI()) / defaultDpi); implementation just ignores scale parameter! WTF! wxBitmap bmpScaled(img); - bmpScaled.SetScaleFactor(static_cast<double>(getDPI()) / defaultDpi); -+ //bmpScaled.SetScaleFactor(static_cast<double>(getDPI()) / defaultDpi); return bmpScaled; } diff --git a/freefilesync/debian/patches/series b/freefilesync/debian/patches/series index 92dd680..e3c2763 100644 --- a/freefilesync/debian/patches/series +++ b/freefilesync/debian/patches/series @@ -11,4 +11,4 @@ ffs_gcc.patch ffs_traditional_view.patch ffs_desktop_notifications.patch ffs_openssl.patch -ffs_icon_loader.patch +#ffs_icon_loader.patch diff --git a/freefilesync/ffs_fedora.patch b/freefilesync/ffs_fedora.patch index 7f5c4d1..4b883cb 100644 --- a/freefilesync/ffs_fedora.patch +++ b/freefilesync/ffs_fedora.patch @@ -1,14 +1,16 @@ -Last modified date: 2022-04-18 +Author: bgstack15 +Source: Original research +Last-Modified: 2022-05-22 +Message: Main patch to compile on Fedora History: ffs_fedora 2020-07-22 now uses gtk3 diff -Naur 10.13-0/FreeFileSync/Source/ffs_paths.cpp 10.13-1/FreeFileSync/Source/ffs_paths.cpp --- 10.13-0/FreeFileSync/Source/ffs_paths.cpp 2019-06-14 20:23:07.615661499 -0400 -+++ 10.13-1/FreeFileSync/Source/ffs_paths.cpp 2019-06-14 20:36:28.178274292 -0400 -@@ -55,7 +55,8 @@ ++++ 11.21-1/FreeFileSync/Source/ffs_paths.cpp 2019-11-21 09:41:42.287474472 -0500 +@@ -49,7 +49,7 @@ - Zstring fff::getResourceDirPf() + Zstring fff::getResourceDirPath() { -- return getProcessParentFolderPath() + FILE_NAME_SEPARATOR + Zstr("Resources") + FILE_NAME_SEPARATOR; -+ // For Fedora, EL and Devuan, install to /usr/share/freefilesync specificly +- return appendPath(getProcessParentFolderPath(), Zstr("Resources")); + return Zstr("/usr/share/freefilesync/"); } diff --git a/freefilesync/ffs_no_check_updates.patch b/freefilesync/ffs_no_check_updates.patch index bdc2ebd..eececed 100644 --- a/freefilesync/ffs_no_check_updates.patch +++ b/freefilesync/ffs_no_check_updates.patch @@ -3,54 +3,54 @@ Date: 2022-04-18 Author: bgstack15 Message: This is a major rewrite of the ffs_no_check_updates patch from before 11.10 which disabled only a few technical www interactions. This current version completely deletes all logic associated with checking the version of the program. diff -aur 11.18-0/FreeFileSync/Source/ui/gui_generated.cpp 11.18-1/FreeFileSync/Source/ui/gui_generated.cpp ---- 11.18-0/FreeFileSync/Source/ui/gui_generated.cpp 2022-03-08 16:51:21.090657955 -0500 -+++ 11.18-1/FreeFileSync/Source/ui/gui_generated.cpp 2022-03-08 16:55:57.009584234 -0500 +--- 11.21-0/FreeFileSync/Source/ui/gui_generated.cpp 2022-05-22 17:09:32.246809650 -0400 ++++ 11.21-1/FreeFileSync/Source/ui/gui_generated.cpp 2022-05-22 17:43:22.568148782 -0400 @@ -110,15 +110,6 @@ - m_menuHelp->AppendSeparator(); + m_menuHelp->AppendSeparator(); -- m_menuItemCheckVersionNow = new wxMenuItem( m_menuHelp, wxID_ANY, wxString( _("&Check for updates now") ) , wxEmptyString, wxITEM_NORMAL ); -- m_menuHelp->Append( m_menuItemCheckVersionNow ); +- m_menuItemCheckVersionNow = new wxMenuItem( m_menuHelp, wxID_ANY, wxString( _("&Check for updates now") ), wxEmptyString, wxITEM_NORMAL ); +- m_menuHelp->Append( m_menuItemCheckVersionNow ); - -- m_menuItemCheckVersionAuto = new wxMenuItem( m_menuHelp, wxID_ANY, wxString( _("Check &automatically once a week") ) , wxEmptyString, wxITEM_CHECK ); -- m_menuHelp->Append( m_menuItemCheckVersionAuto ); -- m_menuItemCheckVersionAuto->Check( true ); +- m_menuItemCheckVersionAuto = new wxMenuItem( m_menuHelp, wxID_ANY, wxString( _("Check &automatically once a week") ), wxEmptyString, wxITEM_CHECK ); +- m_menuHelp->Append( m_menuItemCheckVersionAuto ); +- m_menuItemCheckVersionAuto->Check( true ); - -- m_menuHelp->AppendSeparator(); +- m_menuHelp->AppendSeparator(); - - m_menuItemAbout = new wxMenuItem( m_menuHelp, wxID_ABOUT, wxString( _("&About") ) + wxT('\t') + wxT("Shift+F1"), wxEmptyString, wxITEM_NORMAL ); - m_menuHelp->Append( m_menuItemAbout ); + m_menuItemAbout = new wxMenuItem( m_menuHelp, wxID_ABOUT, wxString( _("&About") ) + wxT('\t') + wxT("Shift+F1"), wxEmptyString, wxITEM_NORMAL ); + m_menuHelp->Append( m_menuItemAbout ); @@ -1131,8 +1122,6 @@ - m_menuTools->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuExportFileList ), this, m_menuItemExportList->GetId()); - m_menuTools->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuResetLayout ), this, m_menuItemResetLayout->GetId()); - m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onShowHelp ), this, m_menuItemHelp->GetId()); -- m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuCheckVersion ), this, m_menuItemCheckVersionNow->GetId()); -- m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuCheckVersionAutomatically ), this, m_menuItemCheckVersionAuto->GetId()); - m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuAbout ), this, m_menuItemAbout->GetId()); - m_bpButtonCmpConfig->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onCmpSettings ), NULL, this ); - m_bpButtonCmpConfig->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onCompSettingsContextMouse ), NULL, this ); + m_menuTools->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuExportFileList ), this, m_menuItemExportList->GetId()); + m_menuTools->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuResetLayout ), this, m_menuItemResetLayout->GetId()); + m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onShowHelp ), this, m_menuItemHelp->GetId()); +- m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuCheckVersion ), this, m_menuItemCheckVersionNow->GetId()); +- m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuCheckVersionAutomatically ), this, m_menuItemCheckVersionAuto->GetId()); + m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuAbout ), this, m_menuItemAbout->GetId()); + m_bpButtonCmpConfig->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onCmpSettings ), NULL, this ); + m_bpButtonCmpConfig->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onCompSettingsContextMouse ), NULL, this ); diff -aur 11.18-0/FreeFileSync/Source/ui/gui_generated.h 11.18-1/FreeFileSync/Source/ui/gui_generated.h ---- 11.18-0/FreeFileSync/Source/ui/gui_generated.h 2022-03-08 16:51:21.114658209 -0500 -+++ 11.18-1/FreeFileSync/Source/ui/gui_generated.h 2022-03-08 16:56:17.057796860 -0500 -@@ -95,8 +95,6 @@ - wxMenuItem* m_menuItemShowOverview; - wxMenu* m_menuHelp; - wxMenuItem* m_menuItemHelp; -- wxMenuItem* m_menuItemCheckVersionNow; -- wxMenuItem* m_menuItemCheckVersionAuto; - wxMenuItem* m_menuItemAbout; - wxBoxSizer* bSizerPanelHolder; - wxPanel* m_panelTopButtons; -@@ -231,8 +229,6 @@ - virtual void onMenuExportFileList( wxCommandEvent& event ) { event.Skip(); } - virtual void onMenuResetLayout( wxCommandEvent& event ) { event.Skip(); } - virtual void onShowHelp( wxCommandEvent& event ) { event.Skip(); } -- virtual void onMenuCheckVersion( wxCommandEvent& event ) { event.Skip(); } -- virtual void onMenuCheckVersionAutomatically( wxCommandEvent& event ) { event.Skip(); } - virtual void onMenuAbout( wxCommandEvent& event ) { event.Skip(); } - virtual void onCompSettingsContextMouse( wxMouseEvent& event ) { event.Skip(); } - virtual void onCompSettingsContext( wxCommandEvent& event ) { event.Skip(); } +--- 11.21-0/FreeFileSync/Source/ui/gui_generated.h 2022-05-22 17:09:32.246809650 -0400 ++++ 11.21-1/FreeFileSync/Source/ui/gui_generated.h 2022-05-22 17:41:42.058897375 -0400 +@@ -96,8 +96,6 @@ + wxMenuItem* m_menuItemShowOverview; + wxMenu* m_menuHelp; + wxMenuItem* m_menuItemHelp; +- wxMenuItem* m_menuItemCheckVersionNow; +- wxMenuItem* m_menuItemCheckVersionAuto; + wxMenuItem* m_menuItemAbout; + wxBoxSizer* bSizerPanelHolder; + wxPanel* m_panelTopButtons; +@@ -232,8 +230,6 @@ + virtual void onMenuExportFileList( wxCommandEvent& event ) { event.Skip(); } + virtual void onMenuResetLayout( wxCommandEvent& event ) { event.Skip(); } + virtual void onShowHelp( wxCommandEvent& event ) { event.Skip(); } +- virtual void onMenuCheckVersion( wxCommandEvent& event ) { event.Skip(); } +- virtual void onMenuCheckVersionAutomatically( wxCommandEvent& event ) { event.Skip(); } + virtual void onMenuAbout( wxCommandEvent& event ) { event.Skip(); } + virtual void onCompSettingsContextMouse( wxMouseEvent& event ) { event.Skip(); } + virtual void onCompSettingsContext( wxCommandEvent& event ) { event.Skip(); } diff -aur 11.10-1/FreeFileSync/Source/ui/main_dlg.cpp 11.10-2/FreeFileSync/Source/ui/main_dlg.cpp --- 11.16-0/FreeFileSync/Source/ui/main_dlg.cpp 2022-01-04 08:52:19.811432573 -0500 +++ 11.16-1/FreeFileSync/Source/ui/main_dlg.cpp 2022-01-04 08:57:14.506728896 -0500 @@ -81,7 +81,7 @@ diff -aur 11.10-1/FreeFileSync/Source/ui/main_dlg.cpp 11.10-2/FreeFileSync/Sourc auiMgr_.Update(); } -@@ -5680,72 +5674,6 @@ +@@ -5706,72 +5700,6 @@ } } @@ -103,7 +103,7 @@ diff -aur 11.10-1/FreeFileSync/Source/ui/main_dlg.cpp 11.10-2/FreeFileSync/Sourc - - if (shouldRunAutomaticUpdateCheck(globalCfg_.lastUpdateCheck)) - { -- flashStatusInformation(_("Searching for program updates...")); +- flashStatusInfo(_("Searching for program updates...")); - //synchronous update check is sufficient here: - automaticUpdateCheckEval(*this, globalCfg_.lastUpdateCheck, globalCfg_.lastOnlineVersion, - automaticUpdateCheckRunAsync(automaticUpdateCheckPrepare(*this).get()).get()); @@ -134,7 +134,7 @@ diff -aur 11.10-1/FreeFileSync/Source/ui/main_dlg.cpp 11.10-2/FreeFileSync/Sourc - - if (shouldRunAutomaticUpdateCheck(globalCfg_.lastUpdateCheck)) - { -- flashStatusInformation(_("Searching for program updates...")); +- flashStatusInfo(_("Searching for program updates...")); - - std::shared_ptr<const UpdateCheckResultPrep> resultPrep = automaticUpdateCheckPrepare(*this); //run on main thread: - diff --git a/freefilesync/ffs_traditional_view.patch b/freefilesync/ffs_traditional_view.patch index b9b35cc..aeeb9b2 100644 --- a/freefilesync/ffs_traditional_view.patch +++ b/freefilesync/ffs_traditional_view.patch @@ -1,11 +1,11 @@ -Version: 11.6 -Date: 2021-02-02 +Version: 11.21 +Date: 2022-05-22 Author: bgstack15@gmail.com Message: restore a traditional view to FreeFileSync diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11.3-1/FreeFileSync/Source/ui/file_grid.cpp ---- 11.3-1/FreeFileSync/Source/ui/file_grid.cpp 2020-11-02 11:38:14.806496077 -0500 -+++ 11.3-2/FreeFileSync/Source/ui/file_grid.cpp 2020-11-05 11:11:46.146360956 -0500 -@@ -493,8 +493,10 @@ +--- 11.21-0/FreeFileSync/Source/ui/file_grid.cpp 2022-05-22 17:09:32.242809600 -0400 ++++ 11.21-1/FreeFileSync/Source/ui/file_grid.cpp 2022-05-22 20:23:04.015916689 -0400 +@@ -475,8 +475,10 @@ case ItemPathFormat::name: return utfTo<std::wstring>(fsObj->getItemName<side>()); case ItemPathFormat::relative: @@ -16,7 +16,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. return AFS::getDisplayPath(fsObj->getAbstractPath<side>()); } assert(false); -@@ -547,8 +549,13 @@ +@@ -529,8 +531,13 @@ else GridData::renderRowBackgound(dc, rect, row, true /*enabled*/, true /*selected*/, rowHover); @@ -31,7 +31,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. clearArea(dc, rectLine, row == pdi.groupLastRow - 1 /*last group item*/ ? getColorGridLine() : getDefaultBackgroundColorAlternating(pdi.groupIdx % 2 != 0)); } -@@ -654,6 +661,26 @@ +@@ -636,6 +643,26 @@ else //=> BaseFolderPair groupParentFolder = AFS::getDisplayPath(pdi.fsObj->base().getAbstractPath<side>()); break; @@ -58,7 +58,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. } //path components should follow the app layout direction and are NOT a single piece of text! -@@ -679,11 +706,42 @@ +@@ -661,11 +688,38 @@ int groupNameWidth = groupName.empty() ? 0 : (gapSize_ + iconSize + gapSize_ + getTextExtentBuffered(dc, groupName).x); const int groupNameMinWidth = groupName.empty() ? 0 : (gapSize_ + iconSize + gapSize_ + ellipsisWidth); @@ -77,10 +77,6 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. + // start trad patch + + // rearrange this one section -+ //add slashes for better readability + a wide gap for disambiguation -+ assert(!contains(groupParentFolder, L'/') || !contains(groupParentFolder, L'\\')); -+ const wchar_t groupParentSep = contains(groupParentFolder, L'/') ? L'/' : (contains(groupParentFolder, L'\\') ? L'\\' : FILE_NAME_SEPARATOR); -+ + switch (itemPathFormat_) + { + case ItemPathFormat::traditional: @@ -102,18 +98,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. //not enough space? => collapse if (int excessWidth = groupParentWidth + groupNameWidth + groupItemsWidth - maxWidth; excessWidth > 0) -@@ -693,10 +751,6 @@ - //1. render group components on two rows - stackedGroupRender = true; - -- //add slashes for better readability + a wide gap for disambiguation -- assert(!contains(groupParentFolder, L'/') || !contains(groupParentFolder, L'\\')); -- const wchar_t groupParentSep = contains(groupParentFolder, L'/') ? L'/' : (contains(groupParentFolder, L'\\') ? L'\\' : FILE_NAME_SEPARATOR); -- - if (!endsWith(groupParentFolder, L'/' ) && //e.g. ftp://server/ - !endsWith(groupParentFolder, L'\\')) /*e.g. C:\ */ - groupParentFolder += groupParentSep; -@@ -755,6 +809,11 @@ +@@ -731,6 +785,11 @@ } } } @@ -125,7 +110,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. return { -@@ -873,6 +932,9 @@ +@@ -851,6 +910,9 @@ rectGroup = rectGroupParent = rectGroupName = rectTmp; rectGroupParent.width = groupParentWidth; @@ -135,7 +120,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. rectGroupName .width = groupNameWidth; if (stackedGroupRender) -@@ -896,6 +958,11 @@ +@@ -874,6 +936,11 @@ rectGroupItems.width = 0; } @@ -147,7 +132,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. //------------------------------------------------------------------------- { //clear background below parent path => harmonize with renderRowBackgound() -@@ -906,8 +973,8 @@ +@@ -884,8 +951,8 @@ wxRect rectGroupBack = rectGroup; rectGroupBack.width += 2 * gapSize_; //include gap before vline @@ -158,7 +143,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. clearArea(dc, rectGroupBack, getDefaultBackgroundColorAlternating(pdi.groupIdx % 2 == 0)); //clearArea() is surprisingly expensive => call just once! -@@ -924,7 +991,8 @@ +@@ -900,7 +967,8 @@ rectNav.width = fastFromDIP(20); if (row == pdi.groupLastRow - 1 /*last group item*/) //preserve the group separation line! @@ -168,7 +153,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. wxColor backCol = wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW); dc.GetPixel(rectNav.GetTopRight(), &backCol); //e.g. selected row! -@@ -914,13 +982,13 @@ +@@ -908,13 +976,13 @@ dc.GradientFillLinear(rectNav, getColorSelectionGradientFrom(), backCol, wxEAST); } @@ -184,7 +169,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. wxDCTextColourChanger textColorGroupName(dc); //folder background: coordinate with renderRowBackgound() -@@ -974,9 +1042,9 @@ +@@ -947,9 +1015,9 @@ drawCellText(dc, rectGroupName, groupName, wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL, &getTextExtentBuffered(dc, groupName)); } @@ -196,7 +181,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. (groupName.empty() || !pdi.folderGroupObj->isEmpty<side>())) //don't show for missing folders { wxRect rectGroupParentText = rectGroupParent; -@@ -975,16 +1043,16 @@ +@@ -969,16 +1037,16 @@ rectGroupItems.x += 2 * gapSize_; rectGroupItems.width -= 2 * gapSize_; @@ -217,7 +202,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. drawCudHighlight(rectItemsBack, pdi.fsObj->getSyncOperation()); -@@ -1134,7 +1202,12 @@ +@@ -1105,7 +1173,12 @@ groupNameWidth] = getGroupRenderLayout(dc, row, pdi, insanelyHugeWidth); assert(!stackedGroupRender); @@ -231,7 +216,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. const int fileIconWidth = getIconManager().getIconBuffer() ? gapSize_ + getIconManager().getIconSize() : 0; const int ellipsisWidth = getTextExtentBuffered(dc, ELLIPSIS).x; const int itemWidth = itemName.empty() ? 0 : -@@ -1166,6 +1239,10 @@ +@@ -1137,6 +1210,10 @@ return _("Relative path"); case ItemPathFormat::full: return _("Full path"); @@ -242,7 +227,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. } assert(false); break; -@@ -1423,7 +1500,8 @@ +@@ -1393,7 +1470,8 @@ GridData::renderRowBackgound(dc, rect, row, true /*enabled*/, true /*selected*/, rowHover); //---------------------------------------------------------------------------------- @@ -252,7 +237,7 @@ diff -x '*.orig' -x '*.rej' -aur 11.3-0/FreeFileSync/Source/ui/file_grid.cpp 11. clearArea(dc, rectLine, row == pdi.groupLastRow - 1 /*last group item*/ ? getColorGridLine() : getDefaultBackgroundColorAlternating(pdi.groupIdx % 2 != 0)); } -@@ -1447,7 +1525,8 @@ +@@ -1417,7 +1495,8 @@ { wxRect rectBack = rect; if (row == pdi.groupLastRow - 1 /*last group item*/) //preserve the group separation line! @@ -276,8 +261,8 @@ diff -x '.git*' -x '*.orig' -x '*.rej' -aur 11.2-1/FreeFileSync/Source/ui/file_g const ItemPathFormat defaultItemPathFormatLeftGrid = ItemPathFormat::relative; diff -x '.git*' -x '*.orig' -x '*.rej' -aur 11.2-1/FreeFileSync/Source/ui/main_dlg.cpp 11.2-1-trad3/FreeFileSync/Source/ui/main_dlg.cpp --- 11.2-1/FreeFileSync/Source/ui/main_dlg.cpp 2020-10-02 20:49:11.487782099 -0400 -+++ 11.12-1/FreeFileSync/Source/ui/main_dlg.cpp 2021-07-15 20:22:02.191278722 -0400 -@@ -2653,6 +2647,8 @@ ++++ 11.21-1/FreeFileSync/Source/ui/main_dlg.cpp 2022-05-22 20:26:31.350461792 -0400 +@@ -2741,6 +2741,8 @@ addFormatEntry(_("Item name" ), ItemPathFormat::name); addFormatEntry(_("Relative path"), ItemPathFormat::relative); addFormatEntry(_("Full path" ), ItemPathFormat::full); @@ -285,7 +270,7 @@ diff -x '.git*' -x '*.orig' -x '*.rej' -aur 11.2-1/FreeFileSync/Source/ui/main_d + addFormatEntry(_("Trad. relative"),ItemPathFormat::tradrel); //---------------------------------------------------------------------------------------------- - auto setIconSize = [&](FileIconSize sz, bool showIcons) + auto setIconSize = [&](GridIconSize sz, bool showIcons) diff -x '.git*' -x '*.orig' -x '*.rej' -aur 11.2-1/FreeFileSync/Source/config.cpp 11.2-1-trad3/FreeFileSync/Source/config.cpp --- 11.2-1/FreeFileSync/Source/config.cpp 2020-10-02 14:39:05.233462578 -0400 +++ 11.2-1-trad3/FreeFileSync/Source/config.cpp 2020-10-02 20:22:24.275555557 -0400 diff --git a/freefilesync/freefilesync.spec b/freefilesync/freefilesync.spec index 3636de0..9ffa82f 100644 --- a/freefilesync/freefilesync.spec +++ b/freefilesync/freefilesync.spec @@ -19,7 +19,7 @@ %define libssh2_name libssh2-%{name} %endif Name: freefilesync -Version: 11.20 +Version: 11.21 Release: 1%{?dist} Summary: A file synchronization utility @@ -46,7 +46,7 @@ Patch10: revert_zenju_aggressive_upstreamisms.patch Patch11: ffs_traditional_view.patch Patch12: ffs_desktop_notifications.patch Patch13: ffs_openssl.patch -Patch14: ffs_icon_loader.patch +#Patch14: ffs_icon_loader.patch Packager: B. Stack <bgstack15@gmail.com> BuildRequires: brotli-devel @@ -113,7 +113,7 @@ find . ! -type d \( -name '*.c' -o -name '*.cpp' -o -name '*.h' \) \ # Patch13 openssl is only for openssl < 3.0.0 %patch13 -p1 %endif -%patch14 -p1 +#%%patch14 -p1 # custom build parameters for packaging application in rpm # fedora provides build_cxxflags, which is really just optflags @@ -217,6 +217,10 @@ update-mime-database -n ${_datadir}/mime 1>/dev/null 2>&1 & : %ghost %config %attr(666, -, -) %{_datadir}/%{name}/GlobalSettings.xml %changelog +* Sun May 22 2022 B. Stack <bgstack15@gmail.com> - 11.21-1 +- version bump +- remove icon_loader patch (fixed by upstream) + * Mon Apr 18 2022 B. Stack <bgstack15@gmail.com> - 11.20-1 - version bump - remove a few patches from r_z_a_u for when gcc < 11 diff --git a/freefilesync/revert_zenju_aggressive_upstreamisms.patch b/freefilesync/revert_zenju_aggressive_upstreamisms.patch index fda8cc2..43fec48 100644 --- a/freefilesync/revert_zenju_aggressive_upstreamisms.patch +++ b/freefilesync/revert_zenju_aggressive_upstreamisms.patch @@ -1,6 +1,6 @@ Message: Some of these can be traced back to version 10.23 which was the last to not use <unordered_map> -Date: 2022-04-18 -Version: 11.20 +Date: 2022-05-22 +Version: 11.21 Author: bgstack15 diff -x '*.rej' -x '*.orig' -x '*.git*' -Naur 10.24-0/wx+/choice_enum.h 10.24-1/wx+/choice_enum.h --- 10.24-0/wx+/choice_enum.h 2020-05-17 18:30:59.441499418 -0400 @@ -155,8 +155,8 @@ diff -x '*.orig' -x '*.rej' -aur 11.1-1/wx+/bitmap_button.h 11.1-2/wx+/bitmap_bu { SetLabel(label); diff -aur -x '*.git*' -x '.*.swp' -x '*.orig' -x '*.rej' 11.6-0/wx+/dc.h 11.6-1/wx+/dc.h ---- 11.20-0/wx+/dc.h 2022-04-18 09:49:31.921386600 -0400 -+++ 11.20-1/wx+/dc.h 2022-04-18 10:12:04.667907393 -0400 +--- 11.21-0/wx+/dc.h 2022-05-22 17:09:32.250809701 -0400 ++++ 11.21-1/wx+/dc.h 2022-05-22 20:28:53.788193992 -0400 @@ -12,7 +12,7 @@ #include <zen/basic_math.h> #include <wx/dcbuffer.h> //for macro: wxALWAYS_NATIVE_DOUBLE_BUFFER @@ -175,18 +175,17 @@ diff -aur -x '*.git*' -x '.*.swp' -x '*.orig' -x '*.rej' 11.6-0/wx+/dc.h 11.6-1/ -#endif //GTK2 doesn't properly support high DPI: https://freefilesync.org/forum/viewtopic.php?t=6114 //=> requires general fix at wxWidgets-level - -@@ -119,11 +116,11 @@ + +@@ -119,11 +116,10 @@ inline -wxBitmapBundle toBitmapBundle(const wxImage& img /*expected to be DPI-scaled!*/) +wxBitmap toBitmapBundle(const wxImage& img /*expected to be DPI-scaled!*/) { - //return wxBitmap(img, -1 /*depth*/, static_cast<double>(getDPI()) / defaultDpi); not (yet) implemented + //return wxBitmap(img, -1 /*depth*/, static_cast<double>(getDPI()) / defaultDpi); implementation just ignores scale parameter! WTF! wxBitmap bmpScaled(img); - bmpScaled.SetScaleFactor(static_cast<double>(getDPI()) / defaultDpi); -+ //bmpScaled.SetScaleFactor(static_cast<double>(getDPI()) / defaultDpi); return bmpScaled; } diff --git a/newmoon/debian/changelog b/newmoon/debian/changelog index c421410..59054dc 100644 --- a/newmoon/debian/changelog +++ b/newmoon/debian/changelog @@ -1,3 +1,57 @@ +newmoon (31.0.0-1) obs; urgency=medium + + * Major milestone release: + - Once again accepts the installation of legacy Firefox extensions alongside + own Pale Moon exclusive extensions. As always, please note that using + extensions for an old version of a different browser is entirely at your + own risk and we obviously cannot and will not provide much (if any) + support for their use. Firefox extensions will be indicated with an + orange dot in the Add-ons Manager in the browser. This will include the + converted extensions for the few of you who are coming from recalled + versions with -fxguid suffixes. + - Implemented Global Privacy Control, taking the place of the unenforceable + "DNT" (Do Not Track) signal. Through GPC, you indicate to websites that + you do not want them to share or sell your data. + - Implemented "optional chaining" (thanks, FranklinDM!). + - Implemented setBaseAndExtent for text selections. + - Implemented queueMicroTask() "pseudo-promise" callbacks. + - Implemented accepting unit-less values for rootMargin in Intersection + observers for web compatibility, making it act more like CSS margin as one + would expect. + - Improvements to CSS grid and flexbox rendering and display following spec + changes and improving web compatibility. + - Improved performance of parallel web workers in JavaScript. + - Improved display of cursive scripts (on Windows). Good-bye Comic Sans! + - Updated various in-tree libraries. + - "Default browser" controls in preferences has been moved to "General". + - Added support for extended VPx codec strings in media delivery via + MSE (RFC-6381). + - Fixed a long-time regression where the browser would no longer honor + old-style body and iframe body margins when indicated in the HTML tags + directly instead of CSS. This improves compatibility with particularly old and/or archived websites. + - Fixed several crashes and stability issues. + - Added a licensing screen to the Windows installer to clarify the browser's + licensing. In other installations, you may find this licensing statement + in the added license.txt file in the browser installation location. + - Removed all Google SafeBrowsing/URLClassifier service code. + - Restored Mac OS X code and buildability in the platform. + - Removed the non-standard ArchiveReader DOM API that was only ever a + prototype implementation from the platform. This potentially improves + performance on some systems. + - Removed leftover Electrolysis controls that could sometimes trick parts of + the browser into starting in a (very broken) multi-process mode due to + some plumbing for it still being present, if users would try to force the + issue with preferences. Obviously, this was a footgun for power users. + - Removed more Android/Fennec code (on-going effort to clean up our code). + - Removed the Marionette automated testing framework. + - Security issues addressed: CVE-2022-29915, CVE-2022-29911, and several + issues that do not have a CVE number. + - UXP Mozilla security patch summary: 4 fixed, 1 DiD, 19 not applicable. + + * Disable all patches. + + -- B. Stack <bgstack15@gmail.com> Sun, 22 May 2022 11:04:46 -0400 + newmoon (29.4.4-1+devuan) obs; urgency=medium - This is a security update. diff --git a/newmoon/debian/control b/newmoon/debian/control index 29a09a3..4e55668 100644 --- a/newmoon/debian/control +++ b/newmoon/debian/control @@ -11,7 +11,6 @@ Build-Depends: debhelper (>= 12), libdbus-glib-1-dev (>= 0.60), libgconf2-dev (>= 1.2.1), libgtk2.0-dev (>= 2.14), - libssl-dev, libx11-xcb-dev, libxt-dev, mesa-common-dev, @@ -21,6 +20,7 @@ Build-Depends: debhelper (>= 12), yasm (>= 1.1), zip, # libffi-dev, +# libssl-dev, # libpixman-1-dev | libpixman-dev, # libbz2-dev, # zlib1g-dev, @@ -34,8 +34,9 @@ Homepage: http://www.palemoon.org/ Package: newmoon 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 +Depends: libavcodec54 | libavcodec-extra54 | libavcodec55 | libavcodec-extra55 | libavcodec56 | libavcodec-extra56 | libavcodec57 | libavcodec-extra57 | libavcodec58 | libavcodec-extra58 | libavcodec-ffmpeg56 | libavcodec-ffmpeg-extra56, + ${shlibs:Depends}, + ${misc:Depends} Provides: gnome-www-browser, www-browser, x-www-browser Conflicts: palemoon-nonsse2 Replaces: palemoon-nonsse2 diff --git a/newmoon/debian/mozconfig b/newmoon/debian/mozconfig index 47cd6ec..4e7c1e5 100644 --- a/newmoon/debian/mozconfig +++ b/newmoon/debian/mozconfig @@ -3,18 +3,20 @@ export BUILDING_RELEASE=1 export MC_OFFICIAL=1 export MOZILLA_OFFICIAL=1 export MC_PALEMOON=1 +export MOZ_NOSPAM=1 +# If you want to control where the built objects go #mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/pmbuild ac_add_options --enable-application=palemoon ac_add_options --disable-official-branding ac_add_options --enable-official-vendor -# Disable add-ons signing -# Disable checking that add-ons are signed by the trusted root -MOZ_ADDON_SIGNING= -# Disable enforcing that add-ons are signed by the trusted root -MOZ_REQUIRE_SIGNING= +## Disable add-ons signing +## Disable checking that add-ons are signed by the trusted root +#MOZ_ADDON_SIGNING= +## Disable enforcing that add-ons are signed by the trusted root +#MOZ_REQUIRE_SIGNING= # Standard # Enables @@ -26,24 +28,29 @@ 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 +# disable-debug-symbols removes the ability to do a stack trace. I do not do any stack traces anyways. ?f=5&t=28254 +ac_add_options --disable-debug-symbols +ac_add_options --disable-debug ac_add_options --disable-debug ac_add_options --disable-eme ac_add_options --disable-gamepad ac_add_options --disable-necko-wifi ac_add_options --disable-tests ac_add_options --disable-updater -# unfortunately newmoon does not have the client-side bits for webrtc so enabling it does nothing, per upstream -#ac_add_options --enable-webrtc -# Disable temeletry -export MOZ_TELEMETRY_REPORTING= ac_add_options --disable-crashreporter ac_add_options --disable-parental-controls ac_add_options --disable-accessibility +ac_add_options --disable-webrtc + +# Disable temeletry +export MOZ_TELEMETRY_REPORTING= # Debian style ac_add_options --prefix=/usr +# primarily for 32-bit but tolerated for 64-bit +ac_add_options --x-libraries=/usr/lib # Devuan style ac_add_options --disable-dbus ac_add_options --disable-pulseaudio @@ -65,9 +72,6 @@ ac_add_options --disable-personas #ac_add_options --with-system-hunspell #ac_add_options --with-system-extension-dirs -# primarily for 32-bit but tolerated for 64-bit -ac_add_options --x-libraries=/usr/lib - # limit to 4 cpus to limit memory usage (approximately 0.75 GiB RAM/thread) # Debian Sid/Devuan Ceres; 2020-07 only -j1 works due to a bug. mk_add_options MOZ_MAKE_FLAGS="-j1" diff --git a/newmoon/debian/newmoon+devuan.dsc b/newmoon/debian/newmoon+devuan.dsc index 53f3d03..a72960c 100644 --- a/newmoon/debian/newmoon+devuan.dsc +++ b/newmoon/debian/newmoon+devuan.dsc @@ -2,11 +2,11 @@ Format: 3.0 (quilt) Source: newmoon Binary: newmoon Architecture: any -Version: 29.4.3-1+devuan +Version: 31.0.0-1+devuan Maintainer: B. Stack <bgstack15@gmail.com> Homepage: http://www.palemoon.org/ Standards-Version: 4.1.4 -Build-Depends: debhelper (>= 12), gcc (<< 11) | gcc-10, g++ (<< 11) | g++-10, autoconf2.13, libasound2-dev, libdbus-glib-1-dev (>= 0.60), libgconf2-dev (>= 1.2.1), libgtk2.0-dev (>= 2.14), libssl-dev, libx11-xcb-dev, libxt-dev, mesa-common-dev, pkg-config, python2 (>= 2.7.18-2~) | python (>= 2.7), unzip, yasm (>= 1.1), zip +Build-Depends: debhelper (>= 12), gcc (<< 11) | gcc-10, g++ (<< 11) | g++-10, autoconf2.13, libasound2-dev, libdbus-glib-1-dev (>= 0.60), libgconf2-dev (>= 1.2.1), libgtk2.0-dev (>= 2.14), libx11-xcb-dev, libxt-dev, mesa-common-dev, pkg-config, python2 (>= 2.7.18-2~) | python (>= 2.7), unzip, yasm (>= 1.1), zip Package-List: newmoon deb web optional arch=any Files: diff --git a/newmoon/debian/patches/revert-mach-file.patch b/newmoon/debian/patches/revert-mach-file.patch deleted file mode 100644 index cda3786..0000000 --- a/newmoon/debian/patches/revert-mach-file.patch +++ /dev/null @@ -1,71 +0,0 @@ -Description: revert mach file to 29.4.2's to fix FTBFS -Last-Update: 2021-11-12 - ---- palemoon-29.4.2.1.orig/mach -+++ palemoon-29.4.2.1/mach -@@ -1,63 +1,4 @@ - #!/bin/sh - --MCP_MACH=./platform/mach --MCP_GIT=`which git 2>/dev/null` -- --if [ ! -f "$MCP_MACH" ]; then -- printf "Error: There is no platform codebase.\n" -- exit 1 --fi -- --MCP_APP=palemoon --MCP_VERSION=`cat ./$MCP_APP/config/version.txt` -- --MCP_XZ=`which xz 2>/dev/null` --MCP_TAR_BASEDIR="s/^./$MCP_APP-source/" --MCP_TAR_FILENAME="$MCP_APP-$MCP_VERSION.source.tar.xz" --MCP_TAR_COMMAND="tar cfJv ../$MCP_TAR_FILENAME . --transform $MCP_TAR_BASEDIR --exclude-vcs --warning=no-file-changed" --MCP_TAR_EXCLUDES=( -- "$MCP_APP/branding/beta" -- "$MCP_APP/branding/unstable" -- "platform/db/mork" -- "platform/docs" -- "platform/ldap" -- "platform/libs/gmp-clearkey" -- "platform/mailnews" -- "platform/python/psutil/*.so" -- "platform/python/psutil/*.pyd" -- "platform/python/psutil/build" -- "platform/xulrunner" -- ".mozconfig" -- ".gitattributes" -- ".gitignore" -- ".gitmodules" -- "*.pyc" -- "*.pyo" -- "*.rej" -- "*.orig" -- "*.source.tar.xz" --) -- --if [ "$1" == "source" ]; then -- if [ -z "$MCP_XZ" ]; then -- printf "Error: XZ was not found on the system. NOTE: This won't work on Windows.\n" -- exit 1 -- fi -- -- for _value in "${MCP_TAR_EXCLUDES[@]}"; do -- MCP_TAR_COMMAND+=" --exclude=${_value}" -- done -- -- if [[ -n "$MCP_GIT" && -d "./.git" && -d "./platform/.git" ]]; then -- printf "COMM SHA1: `"${MCP_GIT}" rev-parse --short HEAD 2>/dev/null`\n" -- printf "GRE SHA1: `cd ./platform && "${MCP_GIT}" rev-parse --short HEAD 2>/dev/null`\n" -- fi -- -- printf "Source Filename: $MCP_TAR_FILENAME\n\n" -- read -r -s -p $'Press enter to continue...\n' -- env XZ_OPTS=-9e ${MCP_TAR_COMMAND} --else -- # We don't know what the command is but real-mach might so just pass -- # all the args to it -- $MCP_MACH $@ --fi -+MACH_CMD=./platform/mach -+$MACH_CMD $@ diff --git a/newmoon/debian/patches/series b/newmoon/debian/patches/series index fd4cf3c..85f30b8 100644 --- a/newmoon/debian/patches/series +++ b/newmoon/debian/patches/series @@ -1,5 +1,5 @@ # from stevepusser for 29.4.3: -revert-mach-file.patch +#revert-mach-file.patch # stackrpms small-icons.patch pm-devuan.patch diff --git a/newmoon/newmoon-mozconfig b/newmoon/newmoon-mozconfig index 39c9feb..feb1e68 100644 --- a/newmoon/newmoon-mozconfig +++ b/newmoon/newmoon-mozconfig @@ -13,20 +13,20 @@ export BUILDING_RELEASE=1 export MC_OFFICIAL=1 export MOZILLA_OFFICIAL=1 export MC_PALEMOON=1 +export MOZ_NOSPAM=1 -# Disable add-ons signing -# Disable checking that add-ons are signed by the trusted root -MOZ_ADDON_SIGNING= -# Disable enforcing that add-ons are signed by the trusted root -MOZ_REQUIRE_SIGNING= +# Disabled for testing, v31.0.0 +## Disable add-ons signing +## Disable checking that add-ons are signed by the trusted root +#MOZ_ADDON_SIGNING= +## Disable enforcing that add-ons are signed by the trusted root +#MOZ_REQUIRE_SIGNING= ac_add_options --enable-default-toolkit=cairo-gtk2 ac_add_options --enable-jemalloc 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/newmoon/newmoon.spec b/newmoon/newmoon.spec index 7bd8079..f2e6d48 100644 --- a/newmoon/newmoon.spec +++ b/newmoon/newmoon.spec @@ -4,10 +4,10 @@ %global stackrpms_custom 1 # derive from inside the source tree or from https://repo.palemoon.org/MoonchildProductions/Pale-Moon/releases # git submodule | awk -v "name=platform" '$2 == name {gsub("-","",$1); print $1}' -#%%global submodule_platform_tag RELBASE_20210817 +%global submodule_platform_tag RB_20220510 %global badname palemoon %global git_commit db5ee3c1968212742b4ed8b9883069ea7b03f0e1 -%global tarballdir %{badname}-%{git_commit} +%global tarballdir pale-moon # additional repos to get python27 and devtoolset-7 # for el6 and el7: Software Collection;, for x86_64 only @@ -32,7 +32,7 @@ %define scl_buildreq devtoolset-7-toolchain %endif -# suppress binary strippping on el6 which fails for some reason +# suppress binary stripping on el6 which fails for some reason %if 0%{?el6} %global __os_install_post %{nil} %endif @@ -44,26 +44,24 @@ Name: newmoon Name: newmoon %endif Summary: Newmoon web browser -Version: 29.4.4 +Version: 31.0.0 Release: 1 Group: Networking/Web License: MPLv2.0 URL: http://linux.palemoon.org/ -#Source0: https://repo.palemoon.org/MoonChildProductions/Pale-Moon/archive/%%{version}_Release.tar.gz -Source0: https://gitlab.com/opensource-tracking/palemoon/-/archive/%{git_commit}/palemoon-%{git_commit}.tar.gz -#Source1: https://repo.palemoon.org/MoonchildProductions/UXP/archive/%%{submodule_platform_tag}.tar.gz +Source0: https://repo.palemoon.org/MoonChildProductions/Pale-Moon/archive/%{version}_Release.tar.gz +#Source0: https://gitlab.com/opensource-tracking/palemoon/-/archive/%%{git_commit}/palemoon-%%{git_commit}.tar.gz +Source1: https://repo.palemoon.org/MoonchildProductions/UXP/archive/%{submodule_platform_tag}.tar.gz Source2: newmoon-mozconfig Source3: newmoon.desktop Source4: newmoon-mimeinfo.xml %if 0%{stackrpms_custom} Source5: bgstack15-newmoon-prefs.js Source6: bluemoon-icons.tgz -Source7: nm-gcc-11.patch Patch0: small-icons.patch Patch1: pm-fedora.patch Patch2: pm-to-nm.patch -Patch3: revert-mach-file.patch %endif Packager: B. Stack <bgstack15@gmail.com> @@ -115,7 +113,7 @@ and themes to make the browser truly your own. %prep %setup -q -n %{tarballdir} -#tar -C platform --strip-components=1 -zxf %%{SOURCE1} # git submodule +tar -C platform --strip-components=1 -zxf %{SOURCE1} # git submodule %{__cp} %{SOURCE2} ./.mozconfig %if 0%{?fedora} >= 30 sed -i -r -e '/enable-optimize/s/"\s*$/ -Wno-format-overflow"/' ./.mozconfig @@ -125,14 +123,6 @@ sed -i -r -e '/enable-optimize/s/"\s*$/ -Wno-format-overflow"/' ./.mozconfig %patch0 -p1 %patch1 -p1 %patch2 -p1 -%patch3 -p1 -__gccver="$( gcc --version 2>&1 | grep -oE '[0-9]*\.[0-9]\.[0-9]'| head -n1 | grep -oE '^[0-9]+' )" -if test "${__gccver}" == "11" ; then - # For gcc 11 - cd platform - patch -p1 < %{SOURCE7} - cd .. -fi ! test -d %{badname}/branding/unofficial.unbuilt && { cp -pr %{badname}/branding/unofficial %{badname}/branding/unofficial.unbuilt && \ @@ -310,6 +300,10 @@ update-mime-database -n ${_datadir}/mime 1>/dev/null 2>&1 & : %doc AUTHORS LICENSE %changelog +* Sun May 22 2022 B. Stack <bgstack15@gmail.com> - 30.0.0-1 +- update version +- remove revert-mach-file patch + * Thu Jan 20 2022 B. Stack <bgstack15@gmail.com> - 29.4.4-1 - update version diff --git a/newmoon/revert-mach-file.patch b/newmoon/revert-mach-file.patch deleted file mode 100644 index cda3786..0000000 --- a/newmoon/revert-mach-file.patch +++ /dev/null @@ -1,71 +0,0 @@ -Description: revert mach file to 29.4.2's to fix FTBFS -Last-Update: 2021-11-12 - ---- palemoon-29.4.2.1.orig/mach -+++ palemoon-29.4.2.1/mach -@@ -1,63 +1,4 @@ - #!/bin/sh - --MCP_MACH=./platform/mach --MCP_GIT=`which git 2>/dev/null` -- --if [ ! -f "$MCP_MACH" ]; then -- printf "Error: There is no platform codebase.\n" -- exit 1 --fi -- --MCP_APP=palemoon --MCP_VERSION=`cat ./$MCP_APP/config/version.txt` -- --MCP_XZ=`which xz 2>/dev/null` --MCP_TAR_BASEDIR="s/^./$MCP_APP-source/" --MCP_TAR_FILENAME="$MCP_APP-$MCP_VERSION.source.tar.xz" --MCP_TAR_COMMAND="tar cfJv ../$MCP_TAR_FILENAME . --transform $MCP_TAR_BASEDIR --exclude-vcs --warning=no-file-changed" --MCP_TAR_EXCLUDES=( -- "$MCP_APP/branding/beta" -- "$MCP_APP/branding/unstable" -- "platform/db/mork" -- "platform/docs" -- "platform/ldap" -- "platform/libs/gmp-clearkey" -- "platform/mailnews" -- "platform/python/psutil/*.so" -- "platform/python/psutil/*.pyd" -- "platform/python/psutil/build" -- "platform/xulrunner" -- ".mozconfig" -- ".gitattributes" -- ".gitignore" -- ".gitmodules" -- "*.pyc" -- "*.pyo" -- "*.rej" -- "*.orig" -- "*.source.tar.xz" --) -- --if [ "$1" == "source" ]; then -- if [ -z "$MCP_XZ" ]; then -- printf "Error: XZ was not found on the system. NOTE: This won't work on Windows.\n" -- exit 1 -- fi -- -- for _value in "${MCP_TAR_EXCLUDES[@]}"; do -- MCP_TAR_COMMAND+=" --exclude=${_value}" -- done -- -- if [[ -n "$MCP_GIT" && -d "./.git" && -d "./platform/.git" ]]; then -- printf "COMM SHA1: `"${MCP_GIT}" rev-parse --short HEAD 2>/dev/null`\n" -- printf "GRE SHA1: `cd ./platform && "${MCP_GIT}" rev-parse --short HEAD 2>/dev/null`\n" -- fi -- -- printf "Source Filename: $MCP_TAR_FILENAME\n\n" -- read -r -s -p $'Press enter to continue...\n' -- env XZ_OPTS=-9e ${MCP_TAR_COMMAND} --else -- # We don't know what the command is but real-mach might so just pass -- # all the args to it -- $MCP_MACH $@ --fi -+MACH_CMD=./platform/mach -+$MACH_CMD $@ |