From bb8e473a98989ec53bce11aa9a45ddfd58405986 Mon Sep 17 00:00:00 2001 From: B Stack Date: Mon, 25 May 2020 10:23:52 -0400 Subject: rebase veracrypt dpkg to overlay Unit193 Unit193 is still actively maintaining veracrypt dpkgs so remove my old fork and just add a stackrpms overlay for myself. --- veracrypt/README.md | 16 +- veracrypt/credits.md | 2 - veracrypt/debian/changelog | 155 ++++++---------- veracrypt/debian/compat | 2 +- veracrypt/debian/control | 7 +- .../debian/patches/001-indicator-support.patch | 194 +++++++++++++++++++++ .../debian/patches/001-user-guide-location.diff | 22 --- veracrypt/debian/patches/002-build-flags.diff | 33 ---- veracrypt/debian/patches/004-fixup-install.diff | 52 ------ veracrypt/debian/patches/series | 4 +- veracrypt/debian/prerm | 2 +- veracrypt/debian/references | 1 - veracrypt/debian/rules | 12 +- veracrypt/debian/scripts/mount.veracrypt | 23 +++ veracrypt/debian/stackrpms-diff.sh | 3 + veracrypt/debian/veracrypt.install | 1 + 16 files changed, 298 insertions(+), 231 deletions(-) delete mode 100644 veracrypt/credits.md create mode 100644 veracrypt/debian/patches/001-indicator-support.patch delete mode 100644 veracrypt/debian/patches/001-user-guide-location.diff delete mode 100644 veracrypt/debian/patches/002-build-flags.diff delete mode 100644 veracrypt/debian/patches/004-fixup-install.diff delete mode 100644 veracrypt/debian/references create mode 100755 veracrypt/debian/scripts/mount.veracrypt create mode 100755 veracrypt/debian/stackrpms-diff.sh (limited to 'veracrypt') diff --git a/veracrypt/README.md b/veracrypt/README.md index 1efc9b5..de20d12 100644 --- a/veracrypt/README.md +++ b/veracrypt/README.md @@ -1,16 +1,19 @@ # VeraCrypt upstream https://www.veracrypt.fr/code/VeraCrypt/snapshot/VeraCrypt_1.24.tar.gz https://gitlab.com/bgstack15/big-sources/raw/master/veracrypt/VeraCrypt_1.24.tar.gz -Spec file forked from https://copr-be.cloud.fedoraproject.org/results/scx/veracrypt/fedora-27-x86_64/00657099-veracrypt/veracrypt.spec +Rpm spec forked from [scx copr](https://copr-be.cloud.fedoraproject.org/results/scx/veracrypt/fedora-27-x86_64/00657099-veracrypt/veracrypt.spec which also provides) which also provides the GTK2/3 options +My dpkg is now an overlay on top of [Unit193 on salsa](https://salsa.debian.org/debian-edu-pkg-team/veracrypt) # Reason for being in stackrpms Fedora does not package veracrypt because its license is tricky. Devuan does not package the application either. # Alternatives -https://copr.fedorainfracloud.org/coprs/pmdpalma/bucket/build/712274/ -https://copr-be.cloud.fedoraproject.org/results/scx/veracrypt/fedora-27-x86_64/00657099-veracrypt/veracrypt-1.21-3.fc27.src.rpm -https://copr.fedorainfracloud.org/coprs/cyfrost/packages/package/veracrypt/ -Additional references are available in [credits.md](credits.md) +* pmdpalma + * [fedora copr](https://copr.fedorainfracloud.org/coprs/pmdpalma/bucket/build/712274/) + * [opensuse variant](https://build.opensuse.org/package/view_file/home:pmdpalma:bucket/veracrypt/veracrypt.spec?expand=1) +* [scx](https://copr-be.cloud.fedoraproject.org/results/scx/veracrypt/fedora-27-x86_64/00657099-veracrypt/veracrypt-1.21-3.fc27.src.rpm) +* [cyfrost](https://copr.fedorainfracloud.org/coprs/cyfrost/packages/package/veracrypt/) +* [Unit193 on Launchpad (Ubuntu)](https://launchpad.net/~unit193/+archive/ubuntu/encryption/+packages) # Reverse dependency matrix Distro | VeraCrypt version @@ -18,4 +21,5 @@ Distro | VeraCrypt version All | 1.24 # Differences from upstream -None +##Dpkg +stackrpms/veracrypt/debian/stackrpms-diff.sh | vi - diff --git a/veracrypt/credits.md b/veracrypt/credits.md deleted file mode 100644 index cc48934..0000000 --- a/veracrypt/credits.md +++ /dev/null @@ -1,2 +0,0 @@ -* Provides variable for wxGTK[23] https://copr-be.cloud.fedoraproject.org/results/scx/veracrypt/fedora-27-x86_64/00657099-veracrypt/veracrypt.spec -* opensuse variant https://build.opensuse.org/package/view_file/home:pmdpalma:bucket/veracrypt/veracrypt.spec?expand=1 diff --git a/veracrypt/debian/changelog b/veracrypt/debian/changelog index 4edcb0c..e4aa435 100644 --- a/veracrypt/debian/changelog +++ b/veracrypt/debian/changelog @@ -1,110 +1,55 @@ veracrypt (1.24-Update4-1+devuan) obs; urgency=medium - * 1.24-Update4 (January 23rd, 2020) - - Linux - * Fix regression that limited the size available for hidden volumes created on disk or partition. - - -- Ben Stack Mon, 27 Jan 2020 08:55:59 -0500 - -veracrypt (1.24-Update3-1+devuan) obs; urgency=medium - - * 1.24-Update3 (December 21st, 2019) - - Linux - * Fix console-only build to remove dependency on GTK that is not wanted on headless servers. - * 1.24-Update2 (December 16th, 2019) - - All OSes - * clear AES key from stack memory when using non-optimized implementation. Doesn't apply to VeraCrypt official build (Reported and fixed by Hanno Böck) - * Update Jitterentropy RNG Library to version 2.2.0 - * Start following IEEE 1541 agreed naming of bytes (KiB, MiB, GiB, TiB, PiB). - * Various documentation enhancements. - - Windows - * Fix possible local privilege escalation vulnerability during execution of VeraCrypt Expander (CVE-2019-19501) - * MBR bootloader: - - workaround for SSD disks that don't allow write operations in BIOS mode with buffers less than 4096 bytes. - - Don't restore MBR to VeraCrypt value if it is coming from a loader different from us or different from Microsoft one. - * EFI bootloader: - - Fix "ActionFailed" not working and add "ActionCancelled" to customize handling of user hitting ESC on password prompt - - Fix F5 showing previous password after failed authentication attempt. Ensure that even wrong password value are cleared from memory. - * Fix multi-OS boot compatibility by only setting VeraCrypt as first bootloader of the system if the current first bootloader is Windows one. - * Add new registry flags for SystemFavoritesService to control updating of EFI BIOS boot menu on shutdown. - * Allow system encrypted drive to be mounted in WindowsPE even if changing keyboard layout fails (reported and fixed by Sven Strickroth) - * Enhancements to the mechanism preserving file timestamps, especially for keyfiles. - * Fix RDRAND instruction not detected on AMD CPUs. - * Detect cases where RDRAND is flawed (e.g. AMD Ryzen) to avoid using it if enabled by user. - * Don't write extra 0x00 byte at the end of DcsProp file when modifying it through UI - * Reduce memory usage of IOCTL_DISK_VERIFY handler used in disk verification by Windows. - * Add switch /FastCreateFile for VeraCrypt Format.exe to speedup creation of large file container if quick format is selected. - * Fix the checkbox for skipping verification of Rescue Disk not reflecting the value of /noisocheck switch specified in VeraCrypt Format command line. - * check "TrueCrypt Mode" in password dialog when mounting a file container with .tc extension - * Update XML languages files. - - Linux - * Fix regression causing admin password to be requested too many times in some cases - * Fix off by one buffer overflow in function Process::Execute (Reported and fixed by Hanno Böck) - * Make sure password gets deleted in case of internal error when mounting volume (Reported and fixed by Hanno Böck) - * Fix passwords using Unicode characters not recognized in text mode. - * Fix failure to run VeraCrypt binary built for console mode on headless machines. - * Add switch to force the use of legacy maximum password length (64 UTF8 bytes) - * Add CLI switch (--use-dummy-sudo-password) to force use of old sudo behavior of sending a dummy password - * During uninstall, output error message to STDERR instead of STDOUT for better compatibility with package managers. - * Make sector size mismatch error when mounting disks more verbose. - * Speedup SHA256 in 64-bit mode by using assembly code. - - MacOSX - * Add switch to force the use of legacy maximum password length (64 UTF8 bytes) - * Fix off by one buffer overflow in function Process::Execute (Reported and fixed by Hanno Böck) - * Fix passwords using Unicode characters not recognized in text mode. - * Make sector size mismatch error when mounting disks more verbose. - * Speedup SHA256 in 64-bit mode by using assembly code. - * Link against latest wxWidgets version 3.1.3 - * 1.24-Hotfix1 (October 27th, 2019) - - Windows - * Fix 1.24 regression that caused system favorites not to mount at boot if VeraCrypt freshly installed. - * Fix failure to encrypt system if the current Windows username contains a Unicode non-ASCII character. - * Make VeraCrypt Expander able to resume expansion of volumes whose previous expansion was aborted before it finishes. - * Add "Quick Expand" option to VeraCrypt Expander to accelarate the expansion of large file containers. - * Add several robustness checks and validation in case of system encryption to better handle some corner cases. - * Minor UI and documentation changes. - - Linux - * Workaround gcc 4.4.7 bug under CentOS 6 that caused VeraCrypt built under CentOS 6 to crash when Whirlpool hash is used. - * Fix "incorrect password attempt" written to /var/log/auth.log when mounting volumes. - * Fix dropping file in UI not showing its correct path , specifically under GTK-3. - * Add missing JitterEntropy implementation/ - - MacOSX - * Fix some devices and partitions not showing in the device selection dialog under OSX 10.13 and newer. - * Fix keyboard tab navigation between password fields in "Volume Password" page of volume creation wizard. - * Add missing JitterEntropy implementation/ - * Support APFS filesystem for creation volumes. - * Support Dark Mode. - - -- Ben Stack Tue, 21 Jan 2020 21:03:02 -0500 - -veracrypt (1.24-2+devuan) obs; urgency=low - - * Attempt a build with gtk3 - - -- B Stack Thu, 21 Nov 2019 10:58:35 -0500 - -veracrypt (1.24-1+devuan) obs; urgency=low - - * New upstream version --- B Stack Tue, 08 Oct 2019 11:31 -0400 - -veracrypt (1.23-2+devuan) manual; urgency=low - - * Re-release to match current naming standard - - -- B Stack Sat, 29 Jun 2019 14:54 -0400 - -veracrypt (1.23-1devuan) manual; urgency=low - - * Initial release for devuan - - -- B Stack Wed, 30 Jan 2019 11:31:00 -0500 - -veracrypt (1.23-0vanir1~18.10) cosmic; urgency=medium - - * No-change backport to cosmic - - -- Unit 193 Sat, 15 Sep 2018 19:15:42 -0400 + * adapted for stackrpms + + -- Ben Stack Mon 25, May 2020 10:23:50 -0400 + +veracrypt (1.24-Update4-0vanir1) unstable; urgency=medium + + * New upstream version 1.24-Update4 + * Update Standards-Version to 4.5.0. + * d/compat, d/control: + - Drop d/compat in favor of debhelper-compat, bump to 12. + + -- Unit 193 Mon, 27 Jan 2020 18:31:30 -0500 + +veracrypt (1.24-Update2-0vanir1) unstable; urgency=medium + + * d/prerm: Send error messages to STDERR. + * New upstream version 1.24-Update2 + - Drop upstream patches, refresh remaining. + + -- Unit 193 Thu, 19 Dec 2019 17:59:06 -0500 + +veracrypt (1.24-Hotfix1-0vanir1) unstable; urgency=medium + + * New upstream version 1.24-Hotfix1 + - Refresh patches. + * d/p/002-Fix_compilation_on_non-x86_platforms.patch: + - Grab upstream commit to fix compilation on non-x86 platforms. + * d/p/003-Fix_compilation_error_if_type___u64_already_defined.patch: + - Fix compilation error if type __u64 is already defined by gcc. + + -- Unit 193 Wed, 30 Oct 2019 19:07:18 -0400 + +veracrypt (1.24-0vanir1) unstable; urgency=medium + + * New upstream version 1.24 + - Drop patches applied upstream, refresh remaining patch. + * d/p/series, d/rules: + - Drop patch in favor of packing (C,CXX,LD)FLAGS into TC_EXTRA_$1. + * d/p/002-indicator-support.diff: Update to account for GTK3 wxgtk. + * d/control: + - Update build-depends for gtk3. + - Set R³ to no. + * d/rules: + - Derive ARCH from DEB_HOST_ARCH. + - Remove extra license file and veracrypt-uninstall.sh. + * d/scripts/mount.veracrypt, d/veracrypt.install: + - Add a script which allows use of VeraCrypt in fstab. + * Update Standards-Version to 4.4.1. + + -- Unit 193 Tue, 08 Oct 2019 01:27:02 -0400 veracrypt (1.23-0vanir1) unstable; urgency=medium diff --git a/veracrypt/debian/compat b/veracrypt/debian/compat index b4de394..48082f7 100644 --- a/veracrypt/debian/compat +++ b/veracrypt/debian/compat @@ -1 +1 @@ -11 +12 diff --git a/veracrypt/debian/control b/veracrypt/debian/control index b33eb0e..3c964b9 100644 --- a/veracrypt/debian/control +++ b/veracrypt/debian/control @@ -2,13 +2,14 @@ Source: veracrypt Section: non-free/utils Priority: optional Maintainer: B Stack -Build-Depends: debhelper (>= 11), - libayatana-appindicator-dev | libappindicator-dev, +Build-Depends: debhelper-compat (= 12), + libayatana-appindicator3-dev | libappindicator3-dev, libfuse-dev, libwxgtk3.0-gtk3-dev, pkg-config, yasm [any-i386 any-amd64] -Standards-Version: 4.2.1 +Rules-Requires-Root: no +Standards-Version: 4.5.0 Homepage: https://veracrypt.fr/ Package: veracrypt diff --git a/veracrypt/debian/patches/001-indicator-support.patch b/veracrypt/debian/patches/001-indicator-support.patch new file mode 100644 index 0000000..54414c7 --- /dev/null +++ b/veracrypt/debian/patches/001-indicator-support.patch @@ -0,0 +1,194 @@ +From: Stefan Sundin , Unit 193 +Date: Fri, 06 July 2017 +Subject: Add support for Ubuntu and Ayatana application indicators. + +This patch adds compile-time support for application indicators. + +Forwarded: no + +Signed-off-by: Unit 193 + +Index: veracrypt/src/Main/Forms/MainFrame.cpp +=================================================================== +--- veracrypt.orig/src/Main/Forms/MainFrame.cpp ++++ veracrypt/src/Main/Forms/MainFrame.cpp +@@ -46,6 +46,9 @@ namespace VeraCrypt + DEFINE_EVENT_TYPE(wxEVT_COMMAND_SHOW_WARNING) + + MainFrame::MainFrame (wxWindow* parent) : MainFrameBase (parent), ++#ifdef HAVE_INDICATORS ++ indicator (NULL), ++#endif + ListItemRightClickEventPending (false), + SelectedItemIndex (-1), + SelectedSlotNumber (0), +@@ -1557,6 +1560,32 @@ namespace VeraCrypt + } + } + ++#ifdef HAVE_INDICATORS ++ void MainFrame::SetBusy (bool busy) ++ { ++ gtk_widget_set_sensitive(indicator_item_mountfavorites, !busy); ++ gtk_widget_set_sensitive(indicator_item_dismountall, !busy); ++ gtk_widget_set_sensitive(indicator_item_prefs, !busy); ++ gtk_widget_set_sensitive(indicator_item_exit, !busy /*&& CanExit()*/); ++ } ++ ++ static void IndicatorOnShowHideMenuItemSelected (GtkWidget *widget, MainFrame *self) { Gui->SetBackgroundMode (!Gui->IsInBackgroundMode()); } ++ static void IndicatorOnMountAllFavoritesMenuItemSelected (GtkWidget *widget, MainFrame *self) { self->SetBusy(true); self->MountAllFavorites (); self->SetBusy(false); } ++ static void IndicatorOnDismountAllMenuItemSelected (GtkWidget *widget, MainFrame *self) { self->SetBusy(true); Gui->DismountAllVolumes(); self->SetBusy(false); } ++ static void IndicatorOnPreferencesMenuItemSelected (GtkWidget *widget, MainFrame *self) { ++ self->SetBusy(true); ++ PreferencesDialog dialog (self); ++ dialog.ShowModal(); ++ self->SetBusy(false); ++ } ++ static void IndicatorOnExitMenuItemSelected (GtkWidget *widget, MainFrame *self) { ++ self->SetBusy(true); ++ if (Core->GetMountedVolumes().empty() || Gui->AskYesNo (LangString ["CONFIRM_EXIT"], false, true)) ++ self->Close (true); ++ self->SetBusy(false); ++ } ++ ++#endif + void MainFrame::ShowTaskBarIcon (bool show) + { + if (!show && mTaskBarIcon->IsIconInstalled()) +@@ -1566,8 +1595,47 @@ namespace VeraCrypt + else if (show && !mTaskBarIcon->IsIconInstalled()) + { + #ifndef TC_MACOSX ++#ifndef HAVE_INDICATORS + mTaskBarIcon->SetIcon (Resources::GetVeraCryptIcon(), L"VeraCrypt"); + #endif ++#endif ++#ifdef HAVE_INDICATORS ++ if (indicator == NULL) { ++ indicator = app_indicator_new ("veracrypt", "veracrypt", APP_INDICATOR_CATEGORY_APPLICATION_STATUS); ++ app_indicator_set_status (indicator, APP_INDICATOR_STATUS_ACTIVE); ++ ++ GtkWidget *menu = gtk_menu_new(); ++ ++ indicator_item_showhide = gtk_menu_item_new_with_label (LangString[Gui->IsInBackgroundMode() ? "SHOW_TC" : "HIDE_TC"].mb_str()); ++ gtk_menu_shell_append (GTK_MENU_SHELL (menu), indicator_item_showhide); ++ g_signal_connect (indicator_item_showhide, "activate", G_CALLBACK (IndicatorOnShowHideMenuItemSelected), this); ++ ++ gtk_menu_shell_append (GTK_MENU_SHELL (menu), gtk_separator_menu_item_new()); ++ ++ indicator_item_mountfavorites = gtk_menu_item_new_with_label ("Mount All Favorite Volumes"); ++ gtk_menu_shell_append (GTK_MENU_SHELL (menu), indicator_item_mountfavorites); ++ g_signal_connect (indicator_item_mountfavorites, "activate", G_CALLBACK (IndicatorOnMountAllFavoritesMenuItemSelected), this); ++ ++ indicator_item_dismountall = gtk_menu_item_new_with_label ("Dismount All Mounted Volumes"); ++ gtk_menu_shell_append (GTK_MENU_SHELL (menu), indicator_item_dismountall); ++ g_signal_connect (indicator_item_dismountall, "activate", G_CALLBACK (IndicatorOnDismountAllMenuItemSelected), this); ++ ++ gtk_menu_shell_append (GTK_MENU_SHELL (menu), gtk_separator_menu_item_new()); ++ ++ indicator_item_prefs = gtk_menu_item_new_with_label ("Preferences..."); ++ gtk_menu_shell_append (GTK_MENU_SHELL (menu), indicator_item_prefs); ++ g_signal_connect (indicator_item_prefs, "activate", G_CALLBACK (IndicatorOnPreferencesMenuItemSelected), this); ++ ++ gtk_menu_shell_append (GTK_MENU_SHELL (menu), gtk_separator_menu_item_new()); ++ ++ indicator_item_exit = gtk_menu_item_new_with_label ("Exit"); ++ gtk_menu_shell_append (GTK_MENU_SHELL (menu), indicator_item_exit); ++ g_signal_connect (indicator_item_exit, "activate", G_CALLBACK (IndicatorOnExitMenuItemSelected), this); ++ ++ gtk_widget_show_all (menu); ++ app_indicator_set_menu (indicator, GTK_MENU (menu)); ++ } ++#endif + } + } + +Index: veracrypt/src/Main/Forms/MainFrame.h +=================================================================== +--- veracrypt.orig/src/Main/Forms/MainFrame.h ++++ veracrypt/src/Main/Forms/MainFrame.h +@@ -13,6 +13,16 @@ + #ifndef TC_HEADER_Main_Forms_MainFrame + #define TC_HEADER_Main_Forms_MainFrame + ++#ifdef HAVE_INDICATORS ++#define GSocket GlibGSocket ++#ifdef UBUNTU_INDICATOR ++#include ++#elif AYATANA_INDICATOR ++#include ++#endif ++#undef GSocket ++#endif ++ + #include "Forms.h" + #include "ChangePasswordDialog.h" + #ifdef TC_MACOSX +@@ -38,6 +48,18 @@ namespace VeraCrypt + static FilePath GetShowRequestFifoPath () { return Application::GetConfigFilePath (L".show-request-queue", true); } + #endif + ++ void MountAllFavorites (); ++ ++#ifdef HAVE_INDICATORS ++ AppIndicator *indicator; ++ GtkWidget *indicator_item_showhide; ++ GtkWidget *indicator_item_mountfavorites; ++ GtkWidget *indicator_item_dismountall; ++ GtkWidget *indicator_item_prefs; ++ GtkWidget *indicator_item_exit; ++ void SetBusy (bool busy); ++ ++#endif + protected: + enum + { +@@ -71,7 +93,6 @@ namespace VeraCrypt + void LoadFavoriteVolumes (); + void LoadPreferences (); + void MountAllDevices (); +- void MountAllFavorites (); + void MountVolume (); + void OnAboutMenuItemSelected (wxCommandEvent& event); + void OnQuit(wxCommandEvent& event) { Close(true); } +Index: veracrypt/src/Main/GraphicUserInterface.cpp +=================================================================== +--- veracrypt.orig/src/Main/GraphicUserInterface.cpp ++++ veracrypt/src/Main/GraphicUserInterface.cpp +@@ -1754,6 +1754,10 @@ namespace VeraCrypt + } + + BackgroundMode = state; ++ ++#ifdef HAVE_INDICATORS ++ gtk_menu_item_set_label ((GtkMenuItem*) ((MainFrame*) mMainFrame)->indicator_item_showhide, LangString[Gui->IsInBackgroundMode() ? "SHOW_TC" : "HIDE_TC"].mb_str()); ++#endif + } + + void GraphicUserInterface::SetListCtrlColumnWidths (wxListCtrl *listCtrl, list columnWidthPermilles, bool hasVerticalScrollbar) const +Index: veracrypt/src/Makefile +=================================================================== +--- veracrypt.orig/src/Makefile ++++ veracrypt/src/Makefile +@@ -58,6 +58,21 @@ export WXCONFIG_CFLAGS := + export WXCONFIG_CXXFLAGS := + WX_ROOT ?= .. + ++ifneq (,$(findstring gtk3,$(shell $(WX_CONFIG) --selected-config))) ++ INDICATOR_LIBRARY=appindicator3-0.1 ++else ++ INDICATOR_LIBRARY=appindicator-0.1 ++endif ++ ++ifeq ($(shell pkg-config --exists $(INDICATOR_LIBRARY) && echo $$?),0) ++ export C_CXX_FLAGS += -DHAVE_INDICATORS -DUBUNTU_INDICATOR ++ export LIBS += $(shell pkg-config --libs $(INDICATOR_LIBRARY)) ++ C_CXX_FLAGS += $(shell pkg-config --cflags $(INDICATOR_LIBRARY)) ++else ifeq ($(shell pkg-config --exists ayatana-$(INDICATOR_LIBRARY) && echo $$?),0) ++ export C_CXX_FLAGS += -DHAVE_INDICATORS -DAYATANA_INDICATOR ++ export LIBS += $(shell pkg-config --libs ayatana-$(INDICATOR_LIBRARY)) ++ C_CXX_FLAGS += $(shell pkg-config --cflags ayatana-$(INDICATOR_LIBRARY)) ++endif + + export TC_BUILD_CONFIG := Release + diff --git a/veracrypt/debian/patches/001-user-guide-location.diff b/veracrypt/debian/patches/001-user-guide-location.diff deleted file mode 100644 index e7bddf2..0000000 --- a/veracrypt/debian/patches/001-user-guide-location.diff +++ /dev/null @@ -1,22 +0,0 @@ -From: Francis Russell -Date: Mon, 14 Jan 2013 11:44 -Subject: Move manual - -The user manual is installed in /usr/share/doc/veracrypt as opposed to -/usr/share/veracrypt/doc. - -Forwarded: no - -Index: veracrypt/src/Main/GraphicUserInterface.cpp -=================================================================== ---- a/src/Main/GraphicUserInterface.cpp 2017-06-29 17:10:39.000000000 -0400 -+++ b/src/Main/GraphicUserInterface.cpp 2017-06-30 16:30:20.842509262 -0400 -@@ -1309,7 +1309,7 @@ - #elif defined (TC_MACOSX) - htmlPath += L"/../Resources/doc/HTML/"; - #elif defined (TC_UNIX) -- htmlPath = L"/usr/share/veracrypt/doc/HTML/"; -+ htmlPath = L"/usr/share/doc/veracrypt/HTML/"; - #else - localFile = false; - #endif diff --git a/veracrypt/debian/patches/002-build-flags.diff b/veracrypt/debian/patches/002-build-flags.diff deleted file mode 100644 index da0bdc6..0000000 --- a/veracrypt/debian/patches/002-build-flags.diff +++ /dev/null @@ -1,33 +0,0 @@ -From: Stefan Sundin -Date: Fri, 12 Sept 2013 -Subject: Add build flags - -Forwarded: no - -Index: veracrypt/src/Makefile -=================================================================== ---- veracrypt.orig/src/Makefile -+++ veracrypt/src/Makefile -@@ -57,6 +57,10 @@ export WXCONFIG_CFLAGS := - export WXCONFIG_CXXFLAGS := - WX_ROOT ?= .. - -+CPPFLAGS+=$(shell dpkg-buildflags --get CPPFLAGS) -+CFLAGS+=$(shell dpkg-buildflags --get CFLAGS) $(CPPFLAGS) -Wno-sequence-point -+CXXFLAGS+=$(shell dpkg-buildflags --get CXXFLAGS) $(CPPFLAGS) -Wno-narrowing -+LFLAGS+=$(shell dpkg-buildflags --get LDFLAGS) - - export TC_BUILD_CONFIG := Release - -diff -Naur 1.24-Update3/src/Build/Include/Makefile.inc 1.24-Update3.debian/src/Build/Include/Makefile.inc ---- 1.24-Update3/src/Build/Include/Makefile.inc 2019-12-22 10:35:56.000000000 -0500 -+++ 1.24-Update3.debian/src/Build/Include/Makefile.inc 2020-01-21 21:16:00.628555627 -0500 -@@ -14,7 +14,7 @@ - - clean: - @echo Cleaning $(NAME) -- rm -f $(APPNAME) $(NAME).a $(OBJS) $(OBJSEX) $(OBJSNOOPT) $(OBJS:.o=.d) $(OBJSEX:.oo=.d) $(OBJSNOOPT:.o0=.d) *.gch -+ rm -f $(APPNAME) $(NAME).a $(OBJS) $(OBJSNOOPT) $(OBJS:.o=.d) $(OBJSEX:.oo=.d) $(OBJSNOOPT:.o0=.d) *.gch $(RESOURCES) SystemPrecompiled.d - - %.o: %.c - @echo Compiling $( - -Origin: vendor -Forwarded: no -Last-Update: 2017-07-10 - ---- veracrypt-1.21.orig/src/Main/Main.make -+++ veracrypt-1.21/src/Main/Main.make -@@ -236,25 +236,25 @@ endif - - ifeq "$(PLATFORM)" "Linux" - prepare: $(APPNAME) -- rm -fr $(PWD)/Setup/Linux/usr -- mkdir -p $(PWD)/Setup/Linux/usr/bin -- mkdir -p $(PWD)/Setup/Linux/usr/share/$(APPNAME)/doc/HTML -- cp $(PWD)/Main/$(APPNAME) $(PWD)/Setup/Linux/usr/bin/$(APPNAME) -- cp $(PWD)/Setup/Linux/$(APPNAME)-uninstall.sh $(PWD)/Setup/Linux/usr/bin/$(APPNAME)-uninstall.sh -- chmod +x $(PWD)/Setup/Linux/usr/bin/$(APPNAME)-uninstall.sh -- cp $(PWD)/License.txt $(PWD)/Setup/Linux/usr/share/$(APPNAME)/doc/License.txt -- cp $(PWD)/../doc/html/* "$(PWD)/Setup/Linux/usr/share/$(APPNAME)/doc/HTML" -+ rm -fr $(CURDIR)/../Setup/Linux/usr -+ mkdir -p $(CURDIR)/../Setup/Linux/usr/bin -+ mkdir -p $(CURDIR)/../Setup/Linux/usr/share/doc/$(APPNAME)/HTML -+ cp $(CURDIR)/$(APPNAME) $(CURDIR)/../Setup/Linux/usr/bin/$(APPNAME) -+# cp $(CURDIR)/../Setup/Linux/$(APPNAME)-uninstall.sh $(CURDIR)/../Setup/Linux/usr/bin/$(APPNAME)-uninstall.sh -+# chmod +x $(CURDIR)/../Setup/Linux/usr/bin/$(APPNAME)-uninstall.sh -+# cp $(CURDIR)/../License.txt $(CURDIR)/../Setup/Linux/usr/share/doc/$(APPNAME)/License.txt -+ cp $(CURDIR)/../../doc/html/* "$(CURDIR)/../Setup/Linux/usr/share/doc/$(APPNAME)/HTML" - - ifndef TC_NO_GUI -- mkdir -p $(PWD)/Setup/Linux/usr/share/applications -- mkdir -p $(PWD)/Setup/Linux/usr/share/pixmaps -- cp $(PWD)/Resources/Icons/VeraCrypt-256x256.xpm $(PWD)/Setup/Linux/usr/share/pixmaps/$(APPNAME).xpm -- cp $(PWD)/Setup/Linux/$(APPNAME).desktop $(PWD)/Setup/Linux/usr/share/applications/$(APPNAME).desktop -+# mkdir -p $(CURDIR)/../Setup/Linux/usr/share/applications -+ mkdir -p $(CURDIR)/../Setup/Linux/usr/share/pixmaps -+ cp $(CURDIR)/../Resources/Icons/VeraCrypt-256x256.xpm $(CURDIR)/../Setup/Linux/usr/share/pixmaps/$(APPNAME).xpm -+# cp $(CURDIR)/../Setup/Linux/$(APPNAME).desktop $(CURDIR)/../Setup/Linux/usr/share/applications/$(APPNAME).desktop - endif - - - install: prepare -- cp -R $(CURDIR)/Setup/Linux/usr $(DESTDIR)/. -+ cp -R $(CURDIR)/../Setup/Linux/usr $(DESTDIR)/ - - ifeq "$(TC_BUILD_CONFIG)" "Release" - package: prepare diff --git a/veracrypt/debian/patches/series b/veracrypt/debian/patches/series index 7e9c1bf..b3dc56a 100644 --- a/veracrypt/debian/patches/series +++ b/veracrypt/debian/patches/series @@ -1,4 +1,2 @@ -#001-user-guide-location.diff -002-build-flags.diff -#004-fixup-install.diff +001-indicator-support.patch vc_devuan.patch diff --git a/veracrypt/debian/prerm b/veracrypt/debian/prerm index baa2e73..887e78f 100644 --- a/veracrypt/debian/prerm +++ b/veracrypt/debian/prerm @@ -5,7 +5,7 @@ set -e case "$1" in remove|upgrade|deconfigure|failed-upgrade) (mount | grep -q veracrypt_aux_mnt) && - echo "Error: all VeraCrypt volumes must be unmounted before upgrade." && exit 1 + echo "Error: all VeraCrypt volumes must be unmounted before upgrade." >&2 && exit 1 exit 0 ;; diff --git a/veracrypt/debian/references b/veracrypt/debian/references deleted file mode 100644 index a45addf..0000000 --- a/veracrypt/debian/references +++ /dev/null @@ -1 +0,0 @@ -https://launchpad.net/~unit193/+archive/ubuntu/encryption/+packages diff --git a/veracrypt/debian/rules b/veracrypt/debian/rules index 5cb3e9e..b02f64e 100755 --- a/veracrypt/debian/rules +++ b/veracrypt/debian/rules @@ -4,19 +4,27 @@ #export DH_VERBOSE=1 DPKG_EXPORT_BUILDFLAGS = 1 -include /usr/share/dpkg/buildflags.mk +include /usr/share/dpkg/default.mk export DEB_BUILD_MAINT_OPTIONS = hardening=+all export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed +export TC_EXTRA_CFLAGS = $(CFLAGS) $(CPPFLAGS) +export TC_EXTRA_CXXFLAGS = $(CXXFLAGS) $(CPPFLAGS) +export TC_EXTRA_LFLAGS = $(LDFLAGS) + %: dh $@ --sourcedirectory=src override_dh_auto_build: - dh_auto_build -- VERBOSE=1 NOSTRIP=1 + dh_auto_build -- VERBOSE=1 NOSTRIP=1 ARCH=$(DEB_HOST_ARCH) unset DISPLAY && src/Main/veracrypt --text --help 2>/dev/null | debian/veracrypt_help_to_troff.pl > veracrypt.1 override_dh_clean: dh_clean veracrypt.1 +override_dh_install: + dh_install + rm -f debian/veracrypt/usr/share/doc/veracrypt/License.txt debian/veracrypt/usr/bin/veracrypt-uninstall.sh + override_dh_installinit: dh_installinit --no-start -- stop 10 0 1 6 . diff --git a/veracrypt/debian/scripts/mount.veracrypt b/veracrypt/debian/scripts/mount.veracrypt new file mode 100755 index 0000000..499ad9b --- /dev/null +++ b/veracrypt/debian/scripts/mount.veracrypt @@ -0,0 +1,23 @@ +#!/bin/bash +DEV="$1" +MNTPT="$2" +VCOPTIONS="" +OPTIONS="" + +shift 3 +IFS=',' +for arg in $*; do + case "$arg" in + truecrypt) VCOPTIONS=(${VCOPTIONS[*]} --truecrypt);; + system) VCOPTIONS=(${VCOPTIONS[*]} --mount-options=system);; + fs=*) VCOPTIONS=(${VCOPTIONS[*]} --filesystem=${arg#*=});; + keyfiles=*) VCOPTIONS=(${VCOPTIONS[*]} --keyfiles=${arg#*=});; + password=*) VCOPTIONS=(${VCOPTIONS[*]} --password=${arg#*=});; + pim=*) VCOPTIONS=(${VCOPTIONS[*]} --pim==${arg#*=});; + protect-hidden=*) VCOPTIONS=(${VCOPTIONS[*]} --protect-hidden=${arg#*=});; + slot=*) VCOPTIONS=(${VCOPTIONS[*]} --slot=${arg#*=});; + *) OPTIONS="${OPTIONS}${arg},";; + esac +done + +/usr/bin/veracrypt --non-interactive --text ${VCOPTIONS[*]} --fs-options="${OPTIONS%,*}" ${DEV} ${MNTPT} diff --git a/veracrypt/debian/stackrpms-diff.sh b/veracrypt/debian/stackrpms-diff.sh new file mode 100755 index 0000000..42a70f6 --- /dev/null +++ b/veracrypt/debian/stackrpms-diff.sh @@ -0,0 +1,3 @@ +#!/bin/sh +# Please make sure this salsa mirror is on branch upstream +diff -x 'stackrpms-diff.sh' -x '.*swp' -Naur veracrypt/salsa/debian stackrpms/veracrypt/debian diff --git a/veracrypt/debian/veracrypt.install b/veracrypt/debian/veracrypt.install index 779a946..bed2dba 100644 --- a/veracrypt/debian/veracrypt.install +++ b/veracrypt/debian/veracrypt.install @@ -1,4 +1,5 @@ debian/scripts/30veracrypt usr/lib/pm-utils/sleep.d/ debian/scripts/veracrypt lib/systemd/system-sleep/ +debian/scripts/mount.veracrypt usr/bin/ debian/veracrypt.desktop usr/share/applications/ debian/veracrypt.xml usr/share/mime/packages/ -- cgit