Commit graph

171 commits

Author SHA1 Message Date
sithlord48
9b6c7f805f refactor: mv res/dist/mac => deploy/dist/mac 2024-11-12 14:00:59 +00:00
sithlord48
6e5c6bcf80 refactor: mv res/dist/arch => deploy/dist/arch 2024-11-12 14:00:59 +00:00
sithlord48
5ddc7f8b0c refactor: mv res/dist/linux/app.desktop.in => deploy/org.deskflow.deskflow.desktop 2024-11-12 14:00:59 +00:00
sithlord48
363fb5621d refactor: mv res/app.png and res/app.svg => deploy 2024-11-12 14:00:59 +00:00
sithlord48
a53e289a45 refactor: mv res/win/version.rc.in => deploy/version.rc.in 2024-11-12 14:00:59 +00:00
sithlord48
a0666f0167 refactor mv: res/gui => src/gui/res 2024-11-12 14:00:59 +00:00
sithlord48
170b4251f3
build: align window mac names with community norms 2024-11-06 12:45:28 -05:00
sithlord48
ddf6450486
build: use PACKAGE_VERSION_LABEL to set generated package's name
If unset use CPACK_PACKAGE_VERSION when set only replaces the version in the package's filename
2024-11-06 11:49:31 -05:00
sithlord48
fb686ede21 refactor: remove desktop legacy 2024-10-30 20:04:55 +00:00
sithlord48
077412f7ec build: update package names for linux to be more unified
We are not making offical packages
    we should not set a rpm or debian revision
    we should do not have to use 'correct' names for deb / rpm
2024-10-25 20:29:05 +01:00
sithlord48
f26581f20a build: remove python dependency for non windows 2024-10-23 14:13:37 +01:00
sithlord48
d5a8dd7927 ci: remove unused libportal check from Librarires.cmake 2024-10-23 13:15:03 +01:00
sithlord48
7b7ff81a9f build: Require libei and libportal from the system on linux
Removing remaining meson parts
2024-10-22 09:42:32 -04:00
sithlord48
2136af68b5 build(win32): resolve #7763 working windows installer
use correct QT_PATH
  Force install of depends
2024-10-22 10:53:51 +01:00
sithlord48
df91d845f7 build(win32): Link wintoast correctly 2024-10-22 10:53:51 +01:00
sithlord48
46915bff94 fix:#7760 use a proper fedora package name 2024-10-19 19:34:37 -04:00
sithlord48
949e1c0d71 build: Use Fetch Content for Gtest
Use Fetch Content to get gtest and gmock
2024-10-19 19:17:19 -04:00
sithlord48
bf4a762124 build: use vcpkg for all depends, vcpkg action on ci to cache 2024-10-19 03:07:13 -04:00
sithlord48
9c9feba565 build: use File to dl toml++ if not on system 2024-10-18 15:02:34 -04:00
sithlord48
710c1dd353 build: get CLI11 via file download if not on system 2024-10-18 13:34:10 -04:00
sithlord48
33b14ccc5c ci: cache vcpkg
Fixes:7712
2024-10-18 17:29:54 +01:00
sithlord48
71e74735c0 build: update required ssl to 3.0+ 2024-10-18 06:49:02 +01:00
sithlord48
01d67e4614 chore: resolve cmake cap nits
Fixes: #7727
2024-10-17 13:37:50 +01:00
Nick Bolton
1dc449fe0a fix: Use OPENSSL_EXE_DIR instead of OPENSSL_ROOT_DIR on Windows 2024-10-16 20:17:53 -04:00
sithlord48
da6b3942ae build: Linux packages with proper names 2024-10-16 16:51:24 +01:00
sithlord48
23c4cadf17 build: set project description 2024-10-15 09:27:00 +01:00
sithlord48
5cff026d7e build: get verson from git 2024-10-14 09:22:28 -04:00
sithlord48
181c34e662 ci: attempt releases 2024-10-13 17:51:18 -04:00
Nicolas Fella
fe67b92cdc build: Drop warnings_as_errors
This should not be used

It results in build failures when using different environments/toolchains that produce new warnings

This can especially happen on compiler or dependency updates
2024-10-12 22:13:50 -04:00
sithlord48
4500e7a1aa build: use @only to configure config.h 2024-10-12 21:06:55 -04:00
sithlord48
78a8bba7a4 refactor: move res/config.h.in -> src/lib/config.h.in 2024-10-12 21:06:55 -04:00
Nicolas Fella
f6b9a5f204 build: Don't force CMAKE_INSTALL_PREFIX
This should only ever be set from the outside, not the project itself

Distribution build systems will set it to the right value

This breaks installing it to a custom if desired
2024-10-12 12:59:04 -04:00
sithlord48
02c5418b9e build(cmake): Require SSL 1.1.1 or higher
Link using OpenSSL provided alises
  Remove Windows specifc check ssl macro for simpler check
2024-10-12 14:23:56 +01:00
Nick Bolton
bb6df4990a build: Bump min libei and libportal versions 2024-10-01 16:42:02 +01:00
Nick Bolton
6bb1bcad8c chore!: Relocate commercial code downstream 2024-10-01 14:39:05 +01:00
Nick Bolton
4f0e8cb844 feat: change most domains to Deskflow 2024-09-22 13:11:25 +01:00
Nick Bolton
5b27f0c90b build: set BUILD_DATE instead of using __DATE__ for reproducible build 2024-09-21 20:14:04 +01:00
Nick Bolton
f8d14edcdb build: fixed option name for SYSTEM_TOMLPLUSPLUS 2024-09-21 12:49:01 +01:00
Nick Bolton
265ab87997 build: default to system tomlplusplus and CLI11 2024-09-21 07:09:33 -04:00
Nick Bolton
0220a481f2
Fix broken CI caused by renaming project to Deskflow (#7522)
* Bump CI

* Use 2 core arm runner

* Update ChangeLog

* Fixed filename `deskflowc.exe.manifest`

* Remove  .vscode/settings.json file

* Restore test values to make tests work (test values should not contain app name)

* Fixed syntax error in Windows watchdog

* Add `sonar-project.properties` file

* Change default core count

* Add default package prefix

* Default product name in CMake

* Tweak ChangeLog
2024-09-18 10:56:29 -04:00
Chris Rizzitello
ed1217e9cc
Use Deskflow Name (#7519)
* Use Deskflow Name

* Remove business-oriented options from issue templates

* Remove business-oriented workflow

* Bump version to 3.0.0 (to avoid confusion with previously used version numbers 1.x & 2.x)

* Update readme to reflect new project name and goals

* Found some more "synergy" to rename

* Rename `synlib` to `app`

* Rename `syntool` to `deskflow-legacy`

* Rename `synwinhk` to `dfwhook`

* Rename dirs from synergy to deskflow

* Rename more "Synergy" files

* Rename app bundle ID

* Fixed copyright typo

* Rename only title in serial key dialog (to be moved downstream later)

* Preserve original serial key window for moving downstream

* Restore dialogs ready for moving downstream

* Rename `QDeskflowApplication` to `DeskflowApplication` (the Q is confusing)

* Restore Volker's original project name

* Fixed mimetype

* Fixed weird grammar

* Fixed (more) weird grammar

* Broken link, restoring (but we should move all links out of source)

* Broken link, restoring (but we should move all links out of source)

* Add write permission to valgrind-analysis.yml

* Restore AUR conflicts

* Apply Clang format

* Update ChangeLog

* Back out version change

---------

Co-authored-by: Nick Bolton <nick@symless.com>
2024-09-17 20:00:25 +01:00
Nick Bolton
462c4c242c
Delete all .gcda files when integtests coverage fails (#7510)
* Delete all gcda files when integtests fail

* Update ChangeLog

* Test failure

* Move test dir creation to main

* Undo retry loop which didn't solve the issue

* Use `-fprofile-update=atomic` according to gcov bug 68080
2024-09-12 16:23:36 +01:00
Nick Bolton
837bd3704b
Option to static link libportal ahead of 0.8.x distribution (#7498)
* Dirty dirty hack so that beta testers can try Wayland on server ahead of libportal 0.8.x distribution

* Install deps for subprojects that are added with --meson-no-system

* Use `RuntimeError`

* Remove `packagefiles` from `.gitignore`

* Add ignored packagefiles

* Improve comment

* Update ChangeLog
2024-09-09 17:12:20 +01:00
Nick Bolton
735fb0e8c4
Add --config-toml arg for TOML config file (#7489)
* Add CLI11 lib

* Use newer arg parser for to add --config-toml arg

* Fix bug where coco doesn't run in elevated console

* Improve macro names

* Fixed incorrect macro name

* Improve coverage for TOML config load

* Allow legacy args and use toml config arg in launch.json

* Update ChangeLog

* Fail coverage workflow on integ test fail

* Remove line break
2024-09-06 21:03:19 +01:00
Nick Bolton
c30fbf9002
Use .venv dir for as Python venv and cache (#7485)
* Use .venv as Python venv dir

* Update refs to Python venv dir and use action to cache and setup

* Add missing shell: bash

* Source for Python deps

* Exclude .venv from lint

* Update ChangeLog

* Add cache-key arg for init-python

* Add missing "

* Use workflow specific Python cache names

* Fixed cache key for Linux

* Use bash if to make output clearer in case of skipping.

* Clearer debug output

* Add check for cache key

* Add missing shell

* Add SonarCloud and Valgrind venv cache

* Fixed typo
2024-09-06 13:50:59 +01:00
Nick Bolton
ad330d7fba
FreeBSD GitHub runner with vmactions/freebsd-vm@v1 (#7474)
* Add experimental BSD job to CI

* Remove container

* cd into ` synergy/synergy/`

* Change unix to bsd

* Use only run param and not prepare

* Install python3 on FreeBSD

* Add missing command to prepare param

* Add all the Unix-like BSD-derived

* Use latest python3 for NetBSD and DragonFly BSD

* Use env for cmd and correct prepare commands

* Add deps config for unix-like

* Install Python deps on Unix-like

* Return matching entry in `get_unix_like_os`

* Add cmake dep for cmakelang py module

* Back out Unix-like support in `install_deps.py` (Python is tricky on BSD)

* Back out BSD from config

* Create install_deps.sh script for BSD-derived

* Use .sh script instead of .py for BSD-derived

* Add other case and fixed syntax

* Use /usr/bin/env

* Use more available sh

* Restore debian command

* Fixed syntax error

* Remove prepare args

* Remove space

* Use which instead of command

* Add libX11 dep

* Add other BSD-derivatives

* Set CMAKE_REQUIRED_INCLUDES

* Fixed bad separator for CMAKE_REQUIRED_INCLUDES

* Add debug lines

* Set CMAKE_REQUIRED_LIBRARIES to lib names

* use CMAKE_REQUIRED_QUIET

* Set CMAKE_REQUIRED_FLAGS for BSD

* Message for BSD packaging

* Make PKG_CONFIG_FOUND optional

* Move debug to all OS

* Remove solaris for now, too many missing packages

* Add missing  override to XWindowsScreen.h

* Add PC_GLIB_INCLUDE_DIRS

* Fixed glib include

* Make libnotify optional

* Set CMAKE_LIBRARY_PATH

* Only run tests if toml++ available

* Also run integ tests

* Remove DragonFly (C++ version too old)

* Fixed NetBSD command

* Aww sucks. Well, I tried. Patches welcome

* Update ChangeLog

* Fixed README for OpenBSD, NetBSD, DragonFly BSD, Solaris

* Add missing case for SunOS

* Drop redundant virtual specifiers

* Print libs on FreeBSD

* Restore link_directories

* Beef up to ubuntu-24.04-16-core-x64, export QT_QPA_PLATFORM, improve comment

* Remove debug line

* Simplify debug text

* Restore ubuntu-latest

* Fixed really stupid typo

* Beef up with ubuntu-22.04-16-core-x64

* Revert "Beef up with ubuntu-22.04-16-core-x64"

This reverts commit 3de5773ef6c6eea99b93d3ee8448b0b95dc00dde.

* Add missing name

* Make .sh file primary deps file

* Tweaked deps instruction label
2024-09-06 10:03:34 +01:00
Nick Bolton
d277c80fd0
Simplify vcpkg caching and use system vcpkg (#7473)
* Fixed OpenSSL exe dir to use tools dir

* Simplify vcpkg caching and use system vcpkg

* Only use ref for version when ref is a tag

* Add condition for event input

* Add restore keys for vcpkg cache

* Improve step name for vcpkg_installed

* Use `windows-2022` runner

* Update ChangeLog

* Revert "Use `windows-2022` runner"

This reverts commit f9e00cbcb3588e58914d2b9e73b3c5734a12d329.
2024-09-04 20:26:47 +01:00
Nick Bolton
94d9baca2d
Use vcpkg to manage openssl dep instead of choco (#7471)
* Brighter red

* Move openssl to vcpkg.exe

* Revert "Move openssl to vcpkg.exe"

This reverts commit 36f39d916f3cc2c8ce779442bd964bd6af7edd69.

* Add missing copyright

* Fix copyright dates

* Remove openssl from choco

* Install openssl using vcpkg

* Add deps for vcpkg

* Add missing vcpkg manifest

* Revert "Add deps for vcpkg"

This reverts commit c266d29c2cec4474a181b89c2f759b62ed67db10.

* Make vcpkg Windows only

* Improve comment about vcpkg

* Remove unused var

* Add caching for vcpkg

* Reorg launch.json

* Remove static env var for openssl on Windows

* Add openssl dep to vcpkg

* Update ChangeLog

* Add OpenSSL include dir

* Remove pointless choco cache

* Remove vcpkg downloads

* Remove wixtoolset for CI already installed on GitHub runners

* Use `Remove-Item` instead of `rmdir`

* Move cmake and ninja out of choco

* Revert "Move cmake and ninja out of choco (winget not supported on GitHub runner)"

This reverts commit a65c02d275e58705b8cd86fac72629284191d737.

* Move cmake and ninja to winget and don't use choco on CI

* Remove winget action

* Use scoop on CI and winget locally

* Use `seanmiddleditch/gha-setup-ninja` for Ninja

* Improve comments

* Install Ninja before deps

* Use system vcpkg if installed

* Revert "Use system vcpkg if installed"

This reverts commit 4ddee1c66e8cace458c047285a70d2f98cf9d82c.

* Add comment about why we're using local vcpkg

* Fixed comment about VC++

* Improve config comments

* Delete dead code

* Improve comment about vcpkg/buildtrees
2024-09-04 16:52:37 +01:00
Nick Bolton
cd63a29c19
Option to link against local libportal and other subprojects (#7469)
* Link against local libei and libportal and use main for both

* Change to `--meson-no-system`

* Add missing libportal dep

* Python trick I learned from Peter Hutterer :D

* Remove qt6-base-private-dev not needed

* Remove unused HAVE_LIBEI_SEQUENCE_NUMBER

* Add hack to force all libportal functions on for local build

* Always wipe instead of reconfigure

* Fixed function name in deps

* Update ChangeLog

* Fixed formatting
2024-09-03 19:26:44 +01:00
Nick Bolton
b128863c67
Load server or client args from synergy-config.toml (#7467)
* Load args from .toml file

* Remove .toml files

* Handle _ arg as no key

* Remove dotenv-cpp

* Treat special last arg specially

* Improve restart warning

* Remove rogue include

* Move TOML config loader to new class

* Merge config files into one

* Add override to virtual functions

* Tidy up App decl and add missing overrides

* Add comments to organize function types

* Fixed: config.h doesn't work on Windows

* Move var position

* Improve includes in app classes

* Update ChangeLog

* Restore position of configure_file call

* Remove new entries in .in file
2024-09-02 23:48:57 +01:00