Compare commits

...

130 Commits

Author SHA1 Message Date
Adrian Lucrèce Céleste
5c18ddb6cf [2.3.2-alpha] 2019-08-22 17:15:19 -04:00
Adrian Lucrèce Céleste
f1c570752b Merge pull request #413 from debauchee/revert-405-fix/build-scripts
Revert "Tidy up and fix lint errors in build scripts"
2019-08-22 17:11:02 -04:00
Adrian Lucrèce Céleste
70a4ece9e8 Revert "Tidy up and fix lint errors in build scripts" 2019-08-22 17:03:18 -04:00
Adrian Lucrèce Céleste
58f6c735ff Merge pull request #412 from maxiberta/rename-snap
Rename the snap as `barrier`.
2019-08-22 15:03:58 -04:00
Adrian Lucrèce Céleste
fca05b9163 Use standard mutex APIs instead of the home-grown wrapper (#410)
Use standard mutex APIs instead of the home-grown wrapper
2019-08-22 15:01:35 -04:00
Adrian Lucrèce Céleste
7bb541ea91 Merge pull request #411 from p12tic/rewrite-memory-management
Use explicit memory ownership in SocketMultiplexer
2019-08-22 15:01:21 -04:00
Adrian Lucrèce Céleste
ccfa10f2a0 Merge pull request #391 from EbonJaeger
Re-implement patch for horizontal scrolling and extra mouse buttons
2019-08-22 14:57:46 -04:00
Maximiliano Bertacchini
5812030f43 Rename the snap as barrier. 2019-08-22 15:55:12 -03:00
Adrian Lucrèce Céleste
e31ebc1b22 Merge pull request #408 from p12tic/fix-ssl-mem-leak
Fix memory leak during SSL socket shutdown
2019-08-22 12:54:27 -04:00
Adrian Lucrèce Céleste
69ea670c1f Fix retry timer not being unregistered properly (#409)
Fix retry timer not being unregistered properly
2019-08-22 12:54:19 -04:00
Povilas Kanapickas
3600f4b255 Fix retry timer not being unregistered properly
This is cherry-pick of 70ba53caf4 from symless/synergy-core
2019-08-22 18:11:03 +03:00
Adrian Lucrèce Céleste
4ec30b6ade Tidy up and fix lint errors in build scripts (#405)
Tidy up and fix lint errors in build scripts
2019-08-20 13:36:54 -04:00
Dom Rodriguez
452820eef7 Interim fix for failed macOS builds
Not ideal, but it might just work. Take two!

Signed-off-by: Dom Rodriguez <shymega@shymega.org.uk>
2019-08-20 18:29:17 +01:00
Dom Rodriguez
c685f0f231 Tidy up and fix lint errors in build scripts
I've tidied up the code in both of the build scripts used for *nix-like
systems, and the macOS/OSX specific build script helper.

This has been tested on Linux with no issues, but this PR will hopefully
indicate if the changes run without issues on macOS as well.

Signed-off-by: Dom Rodriguez <shymega@shymega.org.uk>
2019-08-20 18:08:03 +01:00
Adrian Lucrèce Céleste
cf3b86341a Merge pull request #404 from shymega/fix/cmake-qt
Fix: CMake now checks for required Qt5 libraries
2019-08-18 17:35:57 -04:00
Dom Rodriguez
6c88843771 Fix: CMake now checks for required Qt5 libraries
This won't fix #402 completely, but it *will* help mitigate similar
issues with Qt5 libraries during compilation in the future.
2019-08-18 22:29:19 +01:00
Adrian Lucrèce Céleste
dea143bfd7 Merge pull request #403 from shymega/fix/snap-flags
Snap: Change CMake builds to be of Release type
2019-08-18 17:26:55 -04:00
Dom Rodriguez
dcc45dd80e Snap: Change CMake builds to be of Release type 2019-08-18 22:24:32 +01:00
Adrian Lucrèce Céleste
7bcb74adc1 [Build[ update pre-build script to call VS2019 (#401)
[Build[ update pre-build script to call VS2019
2019-08-17 17:03:24 -04:00
Adrian Lucrèce Céleste
e9f6092172 [Build[ update pre-build script to call VS2019 2019-08-17 16:52:24 -04:00
Povilas Kanapickas
b0e415de03 Fix race condition in IArchString
Even though the calls to C functions are protected with a mutex, the
initialization and destruction of the mutex itself had race conditions.
2019-08-17 16:40:25 +03:00
Povilas Kanapickas
83d0639230 Use std::mutex instead of ArchMutex in IpcLogOutputter 2019-08-17 16:40:24 +03:00
Povilas Kanapickas
93c04bb2fa Use std::mutex instead of ArchMutex in IpcClientProxy 2019-08-17 16:40:23 +03:00
Povilas Kanapickas
36f3235f51 Use std::mutex instead of ArchMutex in IpcServer 2019-08-17 16:40:22 +03:00
Povilas Kanapickas
d9d39040ae Use std::mutex instead of ArchMutex in Log 2019-08-17 16:40:21 +03:00
Povilas Kanapickas
9df4741748 Use std::mutex instead of ArchMutex in EventQueue 2019-08-17 16:40:20 +03:00
Povilas Kanapickas
f71c68506e Use std::mutex instead of ArchMutex in ArchMultithreadPosix 2019-08-17 16:40:19 +03:00
Povilas Kanapickas
a841b2858f Make ownership of SocketMultiplexerJob explicit 2019-08-17 16:17:50 +03:00
Povilas Kanapickas
8dd6bc2c55 Make ownership of SocketMultiplexer explicit 2019-08-17 16:17:49 +03:00
Adrian Lucrèce Céleste
58d8f020dc [Version] bump to 2.3.1 for new release 2019-08-09 16:17:30 -04:00
Adrian Lucrèce Céleste
910f1f3ac1 Delete .travis.yml As We Switch To Azure Pipelines (#376)
Delete .travis.yml As We Switch To Azure Pipelines
2019-08-09 09:34:51 -04:00
walker0643
f7b7c55b53 Drop Travis CI 2019-08-09 09:31:31 -04:00
Evan Maddock
0cd2e6bb6c Use Windows helper function to check for Windows version
Signed-off-by: Evan Maddock <maddock.evan@vivaldi.net>
2019-08-06 17:02:37 -04:00
Evan Maddock
00c18b4c92 Used the wrong key button by accident
Signed-off-by: Evan Maddock <maddock.evan@vivaldi.net>
2019-08-06 15:23:22 -04:00
Evan Maddock
9f15b1bcf2 Reimplement patch for horizontal scrolling and extra mouse buttons
Signed-off-by: Evan Maddock <maddock.evan@vivaldi.net>
2019-08-05 21:59:43 -04:00
Adrian Lucrèce Céleste
c6ff6a6de6 Merge pull request #374 from TafThorne/patch-1
Reference Only Microsoft Azue Pipelines In Readme.md
2019-08-05 12:07:06 -04:00
Adrian Lucrèce Céleste
0ddd38ece1 Merge pull request #373 from shymega/feature/compile_commands_cmake
Feature: CMake now generates compile_commands.json
2019-08-04 18:02:21 -04:00
Thomas Thorne
3e3e183e75 Delete .travis.yml As We Switch To Azure Pipelines
Azure Pipelines have been made to work well enough for this project.  All other CI systems are to be disabled as mentioned dunder #308 

Delete the .travis.yml file now that it is not longer needed.  It can be recovered from git history if we ever wish to resurrect it.  

A separate action will need to be taken by someone with administrator access to the present https://travis-ci.org/debauchee/barrier project to unlink from the system there.
2019-07-26 10:52:01 +01:00
Thomas Thorne
6dc59d14a3 Reference Only Microsoft Azue Pipelines In Readme.md
We plan to remove all the CI pipeline apart from Microsoft Azue Pipelines.  This was documented under #308 after the Azure Pipeline system was successfully integrated under #303 and shown to provide all the build targetes we needed.

As there are presently have 4 seperate main build targes.  As well as giving the overall master branch status in the Readme (which forms part of the main page on github.com) also show the seperate build status.  This makes it clear if a single part fails and gives an obvious indicator that this project works for Linux, Mac and Windows.
2019-07-26 10:24:37 +01:00
Dom Rodriguez
f399c8c642 Feature: CMake now generates compile_commands.json
This commit adds suppotr for generating a 'compile commands' JSON
file. This provides fairly sufficient autocomplete support for most text
editors, such as (Neo)vim and VS Code. It specifies include paths, and
the compiler arguments used to compile each source file.

Signed-off-by: Dom Rodriguez <shymega@shymega.org.uk>
2019-07-25 13:46:00 +01:00
Adrian Lucrèce Céleste
ea0717b5f5 Merge pull request #368 from maxiberta/snap-fix-version-script
Fix snap version-control script for local LXD builds
2019-07-23 19:00:26 -04:00
Maximiliano Bertacchini
4e83ea7f9a Fix snap version-control script for local lxd builds. 2019-07-23 18:44:12 -03:00
Maximiliano Bertacchini
f23a2ecec3 Use appstream metadata from flathub. 2019-07-10 15:38:01 -04:00
Maximiliano Bertacchini
30bc1948c6 Set snap icon and license. 2019-07-10 15:38:01 -04:00
Maximiliano Bertacchini
bad0373bbb Add desktop entry with an app icon. 2019-07-10 15:38:01 -04:00
Maximiliano Bertacchini
7a2c3f7741 Update build-packages and stage-packages. 2019-07-10 15:38:01 -04:00
Maximiliano Bertacchini
e2f59c7475 Drop custom qt5, use distro provided one. 2019-07-10 15:38:01 -04:00
Maximiliano Bertacchini
49210e1ea4 Add commands: barrier, barrierc, barriers. 2019-07-10 15:38:01 -04:00
Maximiliano Bertacchini
1c5a95f810 Fix interface plugs. 2019-07-10 15:38:01 -04:00
Maximiliano Bertacchini
1c398dcd66 Use version from git tag. 2019-07-10 15:38:01 -04:00
Patrizio Tufarolo
40ee389296 Fixed quote key on US International keyboard
Fixes single quote key on US international keyboard, backported from symless/synergy-core#6448
2019-07-10 09:28:22 -04:00
Nelson Chen
af444a6932 Ensure Inno Setup 5 is installed in Azure Pipelines 2019-07-09 08:25:20 -04:00
Adrian Lucrèce Céleste
8e8b38b493 [Cmake] bump version to 2.3.0 2019-06-27 21:33:34 -04:00
Adrian Lucrèce Céleste
8e1a5921f6 [Release] Bump up to a new release version 2019-06-27 21:18:24 -04:00
Adrian Lucrèce Céleste
1e118ee8e8 [README] Add FaQ to the bottom 2019-06-26 18:07:19 -04:00
Chun Wang
0f5cdecf51 Fix #232 MACOS serious config file errors - hotkeys totally broken 2019-06-14 12:22:56 -07:00
Adrian Lucrèce Céleste
6c19a87f63 Add Q/A about 32-bit windows
Clarify that 32-bit editions of windows are not supported.
2019-06-14 09:34:18 -04:00
Adrian Lucrèce Céleste
b3374a07ed Add a quick Q/A about what OSes are supported 2019-06-14 09:32:08 -04:00
Adrian Lucrèce Céleste
b09a3985d0 fix #163 2019-05-30 09:30:38 -04:00
Nelson Chen
40f94c6477 Upgrade QLI Installer and use Cal's Qt Mirror
This should provide more reliable Windows builds in CI.
2019-05-26 13:22:10 -04:00
Nelson Chen
0be33c3032 Publish Mac Artifacts 2019-05-26 13:20:00 -04:00
Nelson Chen
500a82824f Build Release version of Barrier on Mac 2019-05-26 13:20:00 -04:00
Nelson Chen
cd8176e69f Install Pinned Qt and OpenSSL on Mac 2019-05-26 13:20:00 -04:00
Nelson Chen
ae8ef7f4f2 Prefix Windows artifact names with 'Windows' on Azure Pipelines (#319) 2019-05-26 13:18:55 -04:00
Nelson Chen
6074f9b648 Update Apt on Linux before installing dependencies on Azure Pipelines (#321) 2019-05-26 13:16:41 -04:00
pack
a3804c4915 typo fix (#311) 2019-05-17 22:54:42 -04:00
Adrian Lucrèce Céleste
e4392b51b4 📝 add release link and contact info (#310)
📝 add release link and contact info
2019-05-17 19:30:02 -04:00
Adrian Lucrèce Céleste
d362f7ad52 📝 add release link and contact info 2019-05-17 19:09:50 -04:00
Adrian Lucrèce Céleste
9b5e2c2da3 Azure pipelines (#303)
Azure pipelines
2019-05-16 10:36:42 -04:00
Nelson Chen
e518694026 Initial Azure Pipelines 2019-05-15 20:18:19 -07:00
Adrian Lucrèce Céleste
a82b845e07 Rename the "Apply" button to "Reload" (#292)
Rename the "Apply" button to "Reload"
2019-05-14 16:07:44 -04:00
Adrian Lucrèce Céleste
ab40f52f4b Add dpiAwareness PerMonitor (#306)
Add dpiAwareness PerMonitor
2019-05-14 09:57:11 -04:00
Matthijs Wensveen
84fcbea34b Add dpiAwareness: PerMonitor to manifest to better handle multiple monitors with different DPI settings. 2019-05-14 11:36:21 +02:00
Adrian Lucrèce Céleste
2f86911c87 Merge pull request #287 from noisyshape/windows-installer-fix
Windows installer fix
2019-04-21 12:24:55 -04:00
noisyshape
18ac0fe4b5 Replace Wix with Inno Setup
The Wix configuration is left over from Synergy.
2019-04-18 21:04:00 -04:00
Mike Salvatore
c54424794f Rename the "Apply" button to "Reload"
The "Apply" button in the main window calls stopBarrier() immediately
followed by startBarrier(). The startBarrier() function reloads the
configuration. The fact that the "Apply" button applies configuration
changes is incidental; the "Start" button also applies new settings.

"Reload" more accurately describes the function that the button
performs.

Issue #284
2019-04-17 20:37:28 -04:00
Adrian Lucrèce Céleste
929a8e133d Merge pull request #289 from mssalvatore/issue_278
Fix #278 "Enable Clipboard Sharing" always reset after restart
2019-04-17 12:24:22 -04:00
Mike Salvatore
854a6b2a86 Fix #278 "Enable Clipboard Sharing" always reset after restart
Unlike other settings, the "Enable Clipboard Sharing" setting of the
ServerConfigDialog does not persist when the barrier application (GUI)
is stopped completely and restarted. Add the necessary code to the
saveSettings() and loadSettings() functions.
2019-04-13 06:40:45 -04:00
Adrian Lucrèce Céleste
d85a47ad80 Merge pull request #283 from noisyshape/vs2019-build
Update Windows build script for VS2019
2019-04-12 11:39:24 -04:00
noisyshape
35e6693d6d Fix XML 2019-04-12 10:49:49 -04:00
noisyshape
cdf37376f5 Remove hardcoded paths 2019-04-12 10:49:49 -04:00
noisyshape
6a70ef9efb Create version number for wix 2019-04-12 10:49:49 -04:00
noisyshape
4afa31ac54 Correct path and instructions 2019-04-12 10:09:40 -04:00
Adrian Lucrèce Céleste
acbe6d371f Merge pull request #271 from wendall911/rpm-spec
Working spec file for Fedora
2019-04-12 08:55:37 -04:00
Adrian Lucrèce Céleste
5d031588b2 Merge pull request #270 from payomagic/master
Barrier Snappy
2019-04-12 08:54:44 -04:00
noisyshape
0af43a2488 Normalize cmake generator strings 2019-04-11 11:42:59 -04:00
noisyshape
3e6095fc34 Add support for multiple VS versions 2019-04-10 18:36:42 -04:00
noisyshape
47aac5081f Update Windows build script for VS2019 2019-04-10 14:08:09 -04:00
Adrian Lucrèce Céleste
acca0d7f6f Merge pull request #252 from vorph1/screen-change-script
Fire screen switch event on client disconnect
2019-03-22 08:40:30 -04:00
Wendall Cada
75db3a64ca Working spec file for Fedora 2019-03-21 10:23:11 -07:00
PayouZon MagIT
15ddd868d4 Barrier Snappy
Snappy ready & tested on Ubuntu 18.04
2019-03-17 07:33:19 +01:00
PayouZon MagIT
5621846854 Update snapcraft.yaml 2019-03-16 11:37:06 +01:00
PayouZon MagIT
a90b1bdd34 Update snapcraft.yaml 2019-03-16 02:10:48 +01:00
Povilas Kanapickas
71f2ca7c35 Fix memory leak during socket shutdown 2019-03-13 10:14:29 +03:00
Szymon Szeląg
b8ca2d0381 Fire screen switch event on client disconnect 2019-02-10 17:41:17 +01:00
Adrian Lucrèce Céleste
fac5610b44 Merge pull request #249 from vorph1/screen-change-script
Screen change script argument
2019-02-10 11:26:28 -05:00
Szymon Szeląg
bf1fd35237 Start script via execl 2019-02-09 19:02:27 +01:00
Szymon Szeląg
783fbbd84d Use std::system 2019-02-05 23:08:39 +01:00
Szymon Szeląg
24b3ee547c Screen change script argument 2019-02-05 19:44:14 +01:00
Adrian Lucrèce Céleste
41f5ef2e09 Merge pull request #241 from jwestfall69/osx-debug
OSX: let build_installer.sh create a working Barrier.app on debug builds
2019-01-25 04:38:31 -05:00
jwestfall
726f5e2b53 OSX: let build_installer.sh create a working Barrier.app on debug builds
build_installer.sh on OSX is responsible for populating Barrier.app to
make it viable to run and creating a dmg for release.  However its only
works if you run it against a release build.  This patch makes so you can
run it on a debug build and it will populate Barrier.app but doesn't
create the dmg.
2019-01-24 19:45:40 -08:00
Adrian Lucrèce Céleste
a92e9d90f4 Merge pull request #237 from TafThorne/run-without-system-tray-support
Run Without System Tray Support
2019-01-24 12:44:49 -05:00
Thomas A. F. Thorne
79c08baf43 Do Not Warn About Missing System Tray
The system tray will be a nice to have.  Everything should continue to
operate in a satisfactory manner without it.  Log the warning but do
not interup the user with the message.
2019-01-22 15:52:44 +00:00
Thomas A. F. Thorne
0a56cdbca0 Reduce Sysmtem Tray Retry Attempts
It is not essential that the system tray exists in order that the
application contuinue to function.  Reduce the number of retry
attempts which will reduce the time the application appears stalled
at startup.

This is part of the work on making the app work without the need of
system tray support as described uner #155.
2019-01-22 10:48:22 +00:00
Adrian Lucrèce Céleste
4dedd88ab2 Merge pull request #221 from girtsf/update-osx-environment
add checks to osx_environment.sh
2019-01-05 15:00:58 -05:00
Girts Folkmanis
b6861a7d3c add checks to osx_environment.sh
Check if Xcode and required packages are installed, otherwise fail
early.
2019-01-05 11:19:28 -08:00
Adrian Lucrèce Céleste
c806a5137a Merge pull request #218 from jwestfall69/osx-macports
Fix OSX builds for macports
2019-01-02 20:37:43 -05:00
Jim Westfall
cb1d116cce Fix OSX builds for macports
macports command is 'port' not 'ports'
2019-01-02 16:41:43 -08:00
Adrian Lucrèce Céleste
c38c6bcaa2 Merge pull request #214 from ignac/macos_build_issues
Macos build issues
2018-12-30 14:51:09 -05:00
Adrian Lucrèce Céleste
4afe5ddf87 Merge pull request #210 from ignac/master
Fix #204 modifier keys not working in remote desktop on MacOS
2018-12-30 14:50:17 -05:00
Adrian Lucrèce Céleste
943b9a8a0a Merge pull request #211 from jwestfall69/socket-fix
Properly deal with a socket that is readable and writable at the same time
2018-12-30 14:49:26 -05:00
Miroslav Lences
730c065ee7 Fix macos build issues 2018-12-29 03:05:20 +01:00
jwestfall
94f8336af5 Properly deal with a socket that is readable and writable at the same time
Its possible poll() will return that a socket is both readable and
writable.  When this happens TCPSocket::serviceConnected() is
overwriting the result from doWrite() with the result from doRead()

This can cause a situation where doWrite() tried to notify that we
should stop polling if the socket is writable, but the doRead() result
causes that to be ignored.  This results in a tight loop and 100% cpu
usage in SocketMultiplexer::serviceThread() as the poll() call
instantly returns that the socket is writable, but no one cares that
it is.  The issue eventually corrects itself with enough mouse
movement/clicks.
2018-12-28 14:03:42 -08:00
Moron
03f9009d10 Fix #204 modifier keys not working in remote desktop on MacOS 2018-12-28 17:26:51 +01:00
Robert Sandell
3d835ea4aa Spelling correction (#209) 2018-12-27 11:55:34 -05:00
Dayne Broderson
1b99390c96 fixing style to be consistent per @p12tic 2018-12-26 14:57:19 -05:00
Dayne Broderson
d4a2a055cc fix spelling of matches 2018-12-26 14:57:19 -05:00
Dayne Broderson
5f71b47b5a add debug notes to help identify where trusted fingerprints file is 2018-12-26 14:57:19 -05:00
Chris Simons
ea3e20ade1 Added preserveFocus fix (#178)
Adds the [preserveFocus configuration](https://github.com/symless/synergy-core/wiki/Text-Config#Focus_Preservation) item to the GUI configuration screen. 

This is useful if you want to control a system that you are not the only user of. For example, I use barrier to control my HTPC computer sometimes, but I don't want Kodi to lose focus when my cursor leaves the screen since it will cause other inputs (i.e. CEC Remote) to stop working.
2018-12-16 18:05:20 -05:00
Monika Kairaityte
14a7ca0848 Fix tests wrapper 2018-11-21 17:39:33 -05:00
Monika Kairaityte
51118014b1 x11: Wrap platform functions in XWindowsEventQueueBuffer class 2018-11-12 23:09:27 -05:00
Monika Kairaityte
2c32270d49 x11: Wrap platform functions in XWindowsKeyState class 2018-11-12 23:09:27 -05:00
Monika Kairaityte
624a718f2d x11: Wrap platform functions in XWindowsClipboard class 2018-11-12 23:09:27 -05:00
Monika Kairaityte
ce3e8243a9 x11: Wrap platform functions in XWindowsScreenSaver class 2018-11-12 23:09:27 -05:00
Monika Kairaityte
be45440e84 x11: Wrap platform functions in an interface that can be mocked later 2018-11-12 23:09:27 -05:00
Povilas Kanapickas
65172ebd60 OSX: Explain why the app needs to go into /Applications (#158) 2018-10-19 13:17:17 -04:00
Povilas Kanapickas
b8fa610f8f Build full installer via clean_build.sh (#157)
* OSX: Fix lack of newlines in build messages

* OSX: Build full installer as part of the installer build via cmake
2018-10-19 13:17:04 -04:00
Christopher N. Hesse
ab887a4e90 gui: Fix auto hide behavior (#140)
* make waitForTray() report a proper status - the return value was not
   used until now anyway (it would always return true)
 * depend on the system tray availability for auto hide

On my system (Fedora 29 with Pantheon Desktop), on a clean install the GUI
would auto hide itself on startup, but due to no system tray being
available I could never make the GUI appear again.

This change disallows auto hide if the system tray is not available.
Users who don't want the GUI can just start barriers/barrierc instead of
the main barrier executable, so this should not break existing workflows.
2018-10-13 01:52:45 -04:00
Adrian Lucrèce Céleste
a58cdf625e add pre-build script for building barrier on windows from SSH (#152)
I build barrier on windows from SSH, as such, I need a way to invoke the "Developer Command Prompt for VS 2017" without a GUI. This simple one-line batch script gets the job done. I thought it might be handy to upstream it.

process I use to build on windows:

```shell
$ ssh owner@10.0.0.209
owner@DESKTOP-C2IV8E5 C:\Users\Owner> cd Documents\GitHub\barrier\
owner@DESKTOP-C2IV8E5 C:\Users\Owner\Documents\GitHub\barrier> pre-build.bat
owner@DESKTOP-C2IV8E5 C:\Users\Owner\Documents\GitHub\barrier> clean_build.bat
```
2018-10-13 01:50:43 -04:00
Epakai
0eeb4ce240 Update openssl key size in barrier.conf (#150)
Done in order to match the size specified in src/gui/src/SslCertificate.cpp

Also see Debian bug #907528 http://bugs.debian.org/907528

Related to Barrier Issue #126
2018-10-12 16:31:07 -04:00
175 changed files with 2435 additions and 904 deletions

12
.gitignore vendored
View File

@@ -20,3 +20,15 @@ src/gui/gui.pro.user*
src/gui/.qmake.stash
src/gui/.rnd
src/setup/win32/barrier.suo
Makefile
*.cmake
**/CMakeFiles/
CMakeCache.txt
/rpm
# Visual Studio 2015/2017 cache/options directory
.vs/
# VS Code Directory
.vscode/
# Transient in-project-directory dependencies
/deps/
/out/build/x64-Debug

View File

@@ -1,34 +0,0 @@
language: cpp
matrix:
include:
- os: linux
sudo: false
dist: trusty
addons:
apt:
packages:
- libxtst-dev
- qtdeclarative5-dev
- libavahi-compat-libdnssd-dev
script: sh -x ./clean_build.sh
- os: osx
osx_image: xcode9
script:
- export COLUMNS=80
- curl -LO https://raw.githubusercontent.com/GiovanniBussi/macports-ci/master/macports-ci
- chmod +x ./macports-ci
- ./macports-ci install
- PATH="$PATH:/opt/local/bin"
- sudo port -N install qt5-qtbase openssl
- sh -x ./clean_build.sh
- os: osx
osx_image: xcode9
script:
- brew update
- brew install qt openssl
- sh -x ./clean_build.sh
install: true

View File

@@ -1,7 +1,7 @@
#
# Barrier build parameters
#
BARRIER_VERSION_MAJOR = 1
BARRIER_VERSION_MINOR = 9
BARRIER_VERSION_PATCH = 0
BARRIER_VERSION_MAJOR = 2
BARRIER_VERSION_MINOR = 3
BARRIER_VERSION_PATCH = 2
BARRIER_VERSION_STAGE = snapshot

View File

@@ -21,6 +21,7 @@ project (barrier C CXX)
option (BARRIER_BUILD_GUI "Build the GUI" ON)
option (BARRIER_BUILD_INSTALLER "Build the installer" ON)
set (CMAKE_EXPORT_COMPILE_COMMANDS ON)
set (CMAKE_CXX_STANDARD 14)
set (CMAKE_CXX_EXTENSIONS OFF)
set (CMAKE_CXX_STANDARD_REQUIRED ON)
@@ -311,8 +312,10 @@ if (${CMAKE_SYSTEM_NAME} MATCHES "Windows")
${OPENSSL_ROOT}/lib/ssleay32.lib
)
elseif (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
if (IS_DIRECTORY /opt/local)
find_program(BREW_PROGRAM "brew")
find_program(PORT_PROGRAM "port")
if (IS_DIRECTORY /opt/local AND PORT_PROGRAM)
# macports
set (OPENSSL_ROOT /opt/local)
@@ -321,7 +324,7 @@ elseif (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
${OPENSSL_ROOT}/lib/libcrypto.a
z
)
elseif (IS_DIRECTORY /usr/local/opt/openssl)
elseif (IS_DIRECTORY /usr/local/opt/openssl AND BREW_PROGRAM)
# brew
set (OPENSSL_ROOT /usr/local/opt/openssl)
@@ -346,6 +349,12 @@ else()
set (OPENSSL_LIBS ${lib_ssl} ${lib_crypto})
endif()
# Check we have the *required* Qt5 libs.
find_package(Qt5Core REQUIRED)
find_package(Qt5Network REQUIRED)
find_package(Qt5Widgets REQUIRED)
#
# Configure_file... but for directories, recursively.
#
@@ -388,12 +397,20 @@ if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
set (BARRIER_BUNDLE_BINARY_DIR ${BARRIER_BUNDLE_APP_DIR}/Contents/MacOS)
configure_files (${BARRIER_BUNDLE_SOURCE_DIR} ${BARRIER_BUNDLE_DIR})
if (CMAKE_BUILD_TYPE STREQUAL "Release")
add_custom_target(Barrier_dmg ALL
bash build_installer.sh
DEPENDS barrier barriers barrierc
WORKING_DIRECTORY ${BARRIER_BUNDLE_DIR})
endif()
endif()
#
# Windows installer
#
if (${CMAKE_SYSTEM_NAME} MATCHES "Windows")
set (BARRIER_WIX_VERSION "${BARRIER_VERSION_MAJOR}.${BARRIER_VERSION_MINOR}.${BARRIER_VERSION_PATCH}")
message (STATUS "Configuring the wix installer")
configure_files (${CMAKE_CURRENT_SOURCE_DIR}/dist/wix ${CMAKE_BINARY_DIR}/installer-wix)
message (STATUS "Configuring the inno installer")

View File

@@ -1,8 +1,21 @@
# Barrier
Eliminate the barrier between your machines.
Eliminate the barrier between your machines.
Find [releases here](https://github.com/debauchee/barrier/releases).
Master branch build status: &nbsp; [![Build Status](https://travis-ci.org/debauchee/barrier.svg?branch=master)](https://travis-ci.org/debauchee/barrier)
### Contact info:
- `#barrier` on freenode
#### CI Build Status
Master branch overall build status: [![Build Status](https://dev.azure.com/debauchee/Barrier/_apis/build/status/debauchee.barrier?branchName=master)](https://dev.azure.com/debauchee/Barrier/_build/latest?definitionId=1&branchName=master)
* Linux Build Status: [![Build Status](https://dev.azure.com/debauchee/Barrier/_apis/build/status/debauchee.barrier?branchName=master&jobName=Linux%20Build)](https://dev.azure.com/debauchee/Barrier/_build/latest?definitionId=1&branchName=master)
* Mac Build Status: [![Build Status](https://dev.azure.com/debauchee/Barrier/_apis/build/status/debauchee.barrier?branchName=master&jobName=Mac%20Build)](https://dev.azure.com/debauchee/Barrier/_build/latest?definitionId=1&branchName=master)
* Windows Debug Build Status: [![Build Status](https://dev.azure.com/debauchee/Barrier/_apis/build/status/debauchee.barrier?branchName=master&jobName=Windows%20Build&configuration=Windows%20Build%20Debug)](https://dev.azure.com/debauchee/Barrier/_build/latest?definitionId=1&branchName=master)
* Windows Release Build Status: [![Build Status](https://dev.azure.com/debauchee/Barrier/_apis/build/status/debauchee.barrier?branchName=master&jobName=Windows%20Build&configuration=Windows%20Build%20Release%20with%20Release%20Installer)](https://dev.azure.com/debauchee/Barrier/_build/latest?definitionId=1&branchName=master)
Our CI Builds are provided by Microsoft Azure Pipelines.
### What is it?
@@ -22,10 +35,28 @@ Communication. Everything we do is in the open. Our issue tracker will let you s
### Contact & support
Please be aware that the *only* way to draw our attention to a bug is to create a new PR in the issue tracker. Write a clear, concise, detailed report and you will get a clear, concise, detailed response. Priority is always give to issues that affect a wider range of users.
Please be aware that the *only* way to draw our attention to a bug is to create a new PR in the issue tracker. Write a clear, concise, detailed report and you will get a clear, concise, detailed response. Priority is always given to issues that affect a wider range of users.
For short and simple questions or to just say hello find us on the Freenode IRC network in the #barrier channel.
### Contributions
At this time we are looking for developers to help fix the issues found in the issue tracker. Submit pull requests once you've polished up your patch and we'll review and possibly merge it.
### FAQ
Q: Does drag and drop work on linux?
A: No
Q: What OSes are supported?
A:
- Windows 7, 8, 8.1, and 10
- MacOS/OS X
- Linux
- FreeBSD
Q: Are 32-bit versions of Windows supported?
A: No

97
azure-pipelines.yml Normal file
View File

@@ -0,0 +1,97 @@
trigger:
tags:
include:
- '*'
branches:
include:
- '*'
jobs:
- job: WinBuild
displayName: Windows Build
pool:
vmImage: 'vs2017-win2016'
strategy:
matrix:
Debug:
CI_ENV_BUILD_TYPE: Debug
Release with Release Installer:
CI_ENV_BUILD_TYPE: Release
steps:
# Gather Dependencies
- task: PowerShell@2
displayName: Download Bonjour SDK-like
inputs:
filePath: azure-pipelines/download_install_bonjour_sdk_like.ps1
- task: UsePythonVersion@0
displayName: Selecting Python Installer for QLI Installer
inputs:
versionSpec: '3.7'
- task: PowerShell@2
displayName: Installing QT
condition: ne(variables['CacheRestored'], 'true')
inputs:
filePath: azure-pipelines/download_install_qt.ps1
# Build time!
- powershell: Copy-Item azure-pipelines\build_env_tmpl.bat build_env.bat
displayName: Layering Azure Pipeline's build_env.bat
- script: |
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Enterprise\\Common7\\Tools\\vsdevcmd" -arch=x64 && clean_build.bat
displayName: Clean Build
- task: ArchiveFiles@2
displayName: Archive Completed Build Directory
inputs:
rootFolderOrFile: build\bin\$(CI_ENV_BUILD_TYPE)\
includeRootFolder: true
archiveFile: $(Build.ArtifactStagingDirectory)\$(CI_ENV_BUILD_TYPE).zip
- task: PublishBuildArtifacts@1
displayName: Publish Completed Build Directory Archive Build Artifact
inputs:
pathtoPublish: $(Build.ArtifactStagingDirectory)\$(CI_ENV_BUILD_TYPE).zip
artifactName: Windows $(CI_ENV_BUILD_TYPE)
- script: choco install innosetup --version 5.6.1.20190126 --allow-downgrade
displayName: Ensure desired version of Inno Setup is installed.
condition: eq(variables['CI_ENV_BUILD_TYPE'], 'Release')
- script: build_installer.bat
displayName: Build Installer
condition: eq(variables['CI_ENV_BUILD_TYPE'], 'Release')
- task: PublishBuildArtifacts@1
displayName: Publish Release Installer
condition: eq(variables['CI_ENV_BUILD_TYPE'], 'Release')
inputs:
pathtoPublish: build\installer-inno\bin
artifactName: Windows Release Installer
- job: LinuxBuild
displayName: Linux Build
pool:
vmImage: 'ubuntu-16.04'
steps:
- script: sudo apt-get update -y
- script: sudo apt-get install -y libxtst-dev qtdeclarative5-dev libavahi-compat-libdnssd-dev libcurl4-openssl-dev
displayName: Install Dependencies
- script: sh -x ./clean_build.sh
displayName: Clean Build
- job: MacBuild
displayName: Mac Build
pool:
vmImage: 'macOS-10.14'
strategy:
matrix:
Release:
B_BUILD_TYPE: Release
BARRIER_VERSION_STAGE: Release
steps:
- script: brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/aac86fc018c48d7b6f23a2e7535276899774567a/Formula/qt.rb
displayName: Installed Pinned Qt
- script: brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/aac86fc018c48d7b6f23a2e7535276899774567a/Formula/openssl.rb
displayName: Installed Pinned OpenSSL
- script: sh -x ./clean_build.sh
displayName: Clean Build
- task: PublishBuildArtifacts@1
displayName: Publish Release DMG
condition: eq(variables['B_BUILD_TYPE'], 'Release')
inputs:
pathtoPublish: build/bundle
artifactName: Mac Release Disk Image and App

View File

@@ -0,0 +1,6 @@
set B_BUILD_TYPE=%CI_ENV_BUILD_TYPE%
set B_QT_ROOT=%cd%\deps\Qt
set B_QT_VER=Qt5.12.3\5.12.3
set B_QT_MSVC=msvc2017_64
set B_BONJOUR=%cd%\deps\BonjourSDKLike

View File

@@ -0,0 +1,12 @@
$ErrorActionPreference = "Stop"
New-Item -Force -ItemType Directory -Path ".\deps\"
$Wc = New-Object System.Net.WebClient
$Wc.DownloadFile('https://github.com/nelsonjchen/mDNSResponder/releases/download/v2019.05.08.1/x64_RelWithDebInfo.zip', 'deps\BonjourSDKLike.zip') ;
Write-Output 'Downloaded BonjourSDKLike Zip'
Write-Output 'Unzipping BonjourSDKLike Zip'
Remove-Item -Recurse -Force -ErrorAction Ignore .\deps\BonjourSDKLike
Expand-Archive .\deps\BonjourSDKLike.zip -DestinationPath .\deps\BonjourSDKLike
Write-Output 'Installed BonjourSDKLike Zip'
Remove-Item deps\BonjourSDKLike.zip
Write-Output 'Deleted BonjourSDKLike Zip'

View File

@@ -0,0 +1,26 @@
$ErrorActionPreference = "Stop"
$qli_install_version = '2019.05.26.1'
$qt_version = '5.12.3'
New-Item -Force -ItemType Directory -Path ".\deps\"
Write-Output 'Downloading QLI Installer'
$Wc = New-Object System.Net.WebClient
$Wc.DownloadFile("https://github.com/nelsonjchen/qli-installer/archive/v$qli_install_version.zip", '.\deps\qli-installer.zip') ;
Write-Output 'Downloaded QLI Installer'
Write-Output 'Extracting QLI Installer'
Expand-Archive deps\qli-installer.zip deps\
Move-Item .\deps\qli-installer-$qli_install_version\ .\deps\qli-installer
Write-Output 'Extracted QLI Installer'
Write-Output 'Installing QLI Installer Dependencies'
pip install -r .\deps\qli-installer\requirements.txt
Write-Output 'Installed QLI Installer Dependencies'
Write-Output 'Starting QT Installer'
$Env:QLI_OUT_DIR = ".\deps\Qt\Qt$qt_version"
$Env:QLI_BASE_URL = "http://mirrors.ocf.berkeley.edu/qt/online/qtsdkrepository/"
python .\deps\qli-installer\qli-installer.py $qt_version windows desktop win64_msvc2017_64
Write-Output 'Installed QT Installer'

View File

@@ -1,25 +1,24 @@
@echo off
set WIX_ROOT=C:\Program Files (x86)\WiX Toolset v3.11
set INNO_ROOT=C:\Program Files (x86)\Inno Setup 5
set savedir=%cd%
cd /d %~dp0
if not exist build\bin\Release goto buildproject
cd build\installer
if ERRORLEVEL 1 goto buildproject
echo Building 64-bit Windows installer...
"%WIX_ROOT%\bin\candle.exe" -nologo -arch x64 -dConfiguration=Release -dPlatform=x64 -ext WixUtilExtension -ext WixFirewallExtension Product.wxs -o Barrier.wixobj
if ERRORLEVEL 1 goto failed
"%WIX_ROOT%\bin\light.exe" -nologo -ext WixUtilExtension -ext WixFirewallExtension -ext WixUIExtension Barrier.wixobj -o bin\Barrier.msi
cd build\installer-inno
if ERRORLEVEL 1 goto buildproject
"%INNO_ROOT%\ISCC.exe" /Qp barrier.iss
if ERRORLEVEL 1 goto failed
echo Build completed successfully
goto done
:buildproject
echo To build a 64-bit Windows installer:
echo - set Q_BUILD_TYPE=Release in build_env.bat
echo - set B_BUILD_TYPE=Release in build_env.bat
echo - also set other environmental overrides necessary for your build environment
echo - run clean_build.bat to build Barrier and verify that it succeeds
echo - re-run this script to create the installation package
@@ -29,7 +28,7 @@ goto done
echo Build failed
:done
set WIX_ROOT=
set INNO_ROOT=
cd /d %savedir%
set savedir=

View File

@@ -10,6 +10,18 @@ set B_BONJOUR=C:\Program Files\Bonjour SDK
set savedir=%cd%
cd /d %~dp0
REM cmake generator name for the target build system
if "%VisualStudioVersion%"=="15.0" (
set cmake_gen=Visual Studio 15 2017
) else if "%VisualStudioVersion%"=="16.0" (
set cmake_gen=Visual Studio 16 2019
) else (
echo Visual Studio version was not detected.
echo Did you forget to run inside a VS developer prompt?
echo Using the default cmake generator.
set cmake_gen=Visual Studio 16 2019
)
if exist build_env.bat call build_env.bat
REM needed by cmake to set bonjour include dir
@@ -25,7 +37,7 @@ rmdir /q /s build
mkdir build
if ERRORLEVEL 1 goto failed
cd build
cmake -G "Visual Studio 15 2017 Win64" -D CMAKE_BUILD_TYPE=%B_BUILD_TYPE% -D CMAKE_PREFIX_PATH="%B_QT_FULLPATH%" -D DNSSD_LIB="%B_BONJOUR%\Lib\x64\dnssd.lib" -D QT_VERSION=%B_QT_VER% ..
cmake -G "%cmake_gen%" -A x64 -D CMAKE_BUILD_TYPE=%B_BUILD_TYPE% -D CMAKE_PREFIX_PATH="%B_QT_FULLPATH%" -D DNSSD_LIB="%B_BONJOUR%\Lib\x64\dnssd.lib" -D QT_VERSION=%B_QT_VER% ..
if ERRORLEVEL 1 goto failed
echo @msbuild barrier.sln /p:Platform="x64" /p:Configuration=%B_BUILD_TYPE% /m %B_BUILD_OPTIONS% > make.bat
call make.bat
@@ -69,3 +81,4 @@ set B_BONJOUR=
set BONJOUR_SDK_HOME=
set B_QT_FULLPATH=
set savedir=
set cmake_gen=

View File

@@ -1,8 +1,8 @@
cmake_minimum_required (VERSION 3.4)
set (BARRIER_VERSION_MAJOR 2)
set (BARRIER_VERSION_MINOR 2)
set (BARRIER_VERSION_PATCH 0)
set (BARRIER_VERSION_MINOR 3)
set (BARRIER_VERSION_PATCH 2)
#
# Barrier Version

View File

@@ -3,12 +3,6 @@
# change this to rename the installer package
B_DMG="Barrier-@BARRIER_VERSION@.dmg"
# sanity check so we don't distribute packages full of debug symbols
if [ "@CMAKE_BUILD_TYPE@" != "Release" ]; then
echo Will only build installers for Release builds
exit 1
fi
cd @CMAKE_CURRENT_SOURCE_DIR@/build/bundle || exit 1
B_REREF_SCRIPT=@CMAKE_CURRENT_SOURCE_DIR@/build/bundle/reref_dylibs.sh
@@ -41,7 +35,10 @@ cp @CMAKE_RUNTIME_OUTPUT_DIRECTORY@/* . || exit 1
# TODO: this is hacky and will probably break if there is more than one qt
# version installed. need a better way to find this library
B_COCOA=$(find /usr/local/Cellar/qt -type f -name libqcocoa.dylib | head -1)
if [ $? -ne 0 ] || [ "x$B_COCOA" = "x" ]; then
if [ "x$B_COCOA" = "x" ]; then
B_COCOA=$(find /opt/local/libexec/qt5/plugins -type f -name libqcocoa.dylib | head -1)
fi
if [ "x$B_COCOA" = "x" ]; then
echo "Could not find cocoa platform plugin"
exit 1
fi
@@ -65,6 +62,14 @@ $B_REREF_SCRIPT platforms/libqcocoa.dylib ../ || exit 1
printf "%s\n" "#!/bin/sh" "cd \$(dirname \$0)" "exec ./barrier" > barrier.sh
chmod +x barrier.sh
echo "Barrier.app created successfully"
# sanity check so we don't distribute a dmg with debug symbols
if [ "@CMAKE_BUILD_TYPE@" != "Release" ]; then
echo "dmg only created for Release builds"
exit 1
fi
# create the DMG to be distributed in build/bundle
cd ../../..
hdiutil create -size 64m -fs HFS+ -volname "Barrier" temp.dmg || exit 1
@@ -74,4 +79,4 @@ hdiutil detach mnt || exit 1
hdiutil convert temp.dmg -format UDZO -o $B_DMG || exit 1
rm temp.dmg
echo "Installer created successfully"
echo "dmg $B_DMB created successfully"

View File

@@ -21,6 +21,8 @@ B_LIBS=$(otool -XL $B_TARGET | awk '{ print $1 }' | grep -Ev '^(/usr/lib|/System
[ $? -ne 0 ] && exit 1
for B_LIB in $B_LIBS; do
B_LIB_NAME=$(basename $B_LIB)
# otool reports barrier as "barrier:" which fails self-reference test below
B_LIB_NAME=${B_LIB_NAME//:}
# ignore self-references
[ "$B_TARGET" = "$B_LIB_NAME" ] && continue

View File

@@ -1,26 +1,105 @@
%global barrier_revision @BARRIER_REVISION@
Summary: Keyboard and mouse sharing solution
Name: barrier
Version: @BARRIER_VERSION@
Summary: Keyboard and mouse sharing solution
Group: Applications/Productivity
URL: https://github.com/debauchee/barrier/
Source: https://github.com/debauchee/barrier/
Vendor: Debauchee
Packager: Debauchee <todo@mail.com>
Release: @BARRIER_BUILD_NUMBER@%{?dist}
License: GPLv2
Release: @BARRIER_BUILD_NUMBER@@BARRIER_SNAPSHOT_INFO@%{?dist}
Group: System Environment/Daemons
URL: https://github.com/debauchee/barrier
Source0: https://github.com/debauchee/barrier/archive/v%{version}.tar.gz
BuildRequires: cmake3
BuildRequires: avahi-compat-libdns_sd-devel
BuildRequires: libX11-devel
BuildRequires: libXtst-devel
BuildRequires: qt5-qtbase-devel
BuildRequires: libcurl-devel
BuildRequires: desktop-file-utils
BuildRequires: openssl-devel
%description
Barrier allows you to share one mouse and keyboard between multiple computers.
Work seamlessly across Windows, macOS and Linux.
%prep
%setup -q -n %{name}-%{version}
%build
%{cmake3} -DSYNERGY_VERSION_STAGE:STRING=@BARRIER_VERSION_STAGE@ -DSYNERGY_REVISION:STRING=%{barrier_revision} .
make %{?_smp_mflags}
%install
install -D -p -m 0755 bin/barrier %{buildroot}%{_bindir}/barrier
install -D -p -m 0755 bin/barrierc %{buildroot}%{_bindir}/barrierc
install -D -p -m 0755 bin/barriers %{buildroot}%{_bindir}/barriers
install -D -p -m 0644 doc/barrierc.1 %{buildroot}%{_mandir}/man1/barrierc.1
install -D -p -m 0644 doc/barriers.1 %{buildroot}%{_mandir}/man1/barriers.1
install -D -p -m 0644 res/barrier.desktop %{buildroot}%{_datadir}/applications/barrier.desktop
install -D -p -m 0644 res/barrier.svg %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/barrier.svg
cd %{buildroot}%{_bindir}
mkdir -p %{buildroot}%{_datadir}/metainfo
## Write AppStream
cat <<END> %{buildroot}%{_datadir}/metainfo/%{name}.appdata.xml
<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright 2018 Ding-Yi Chen <dchen@redhat.com> -->
<component type="desktop-application">
<id>%{name}</id>
<metadata_license>FSFAP</metadata_license>
<project_license>GPLv2</project_license>
<name>barrier</name>
<summary>Share mouse and keyboard between multiple computers over the network</summary>
<description>
<p>
Barrier allows you to share one mouse and keyboard between multiple computers.
Work seamlessly across Windows, macOS and Linux.
</p>
</description>
<launchable type="desktop-id">%{name}.desktop</launchable>
<url type="homepage">https://github.com/debauchee/barrier</url>
<provides>
<binary>barrier</binary>
<binary>barrierc</binary>
<binary>barriers</binary>
</provides>
<releases>
<release version="%{version}" date="2019-03-21" />
</releases>
</component>
END
desktop-file-install --delete-original \
--dir %{buildroot}%{_datadir}/applications \
--set-icon=%{_datadir}/icons/hicolor/scalable/apps/barrier.svg \
%{buildroot}%{_datadir}/applications/barrier.desktop
desktop-file-validate %{buildroot}/%{_datadir}/applications/barrier.desktop
%files
%defattr(755,root,root,-)
# None of the documentation files are actually useful here, they all point to
# the online website, so include just one, the README
%doc LICENSE ChangeLog res/Readme.txt doc/barrier.conf.example*
%{_bindir}/barrier
%{_bindir}/barrierc
%{_bindir}/barriers
%attr(644,-,-) %{_datarootdir}/applications/barrier.desktop
%attr(644,-,-) %{_datarootdir}/icons/hicolor/scalable/apps/barrier.svg
%{_datadir}/icons/hicolor/scalable/apps/barrier.svg
%{_datadir}/applications/barrier.desktop
%{_datadir}/metainfo/%{name}.appdata.xml
%{_mandir}/man1/barrierc.1*
%{_mandir}/man1/barriers.1*
%changelog
* Thu Mar 21 2019 wendall911 <wendallc@83864.com>
- Actual working spec file for Fedora
* Sat Jan 27 2018 Debauchee <todo@mail.com>
- Initial version of the package

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Include>
<?define Name="Barrier" ?>
<?define Version="@BARRIER_VERSION@" ?>
<?define Version="@BARRIER_WIX_VERSION@" ?>
<?define QtVersion="@QT_VERSION@" ?>
<?define Author="Debauchee Open Source Group" ?>
<?define BinPath="@CMAKE_RUNTIME_OUTPUT_DIRECTORY@/$(var.Configuration)" ?>
@@ -11,12 +11,12 @@
<?define ProgramFilesFolder="ProgramFiles64Folder" ?>
<?define PlatformSimpleName="64-bit" ?>
<?define UpgradeGuid="E8A4FA54-14B9-4FD1-8E00-7BC46555FDA0" ?>
<?define QtPath="E:\Qt\$(var.QtVersion)\msvc2015_64" ?>
<?define QtPath="@CMAKE_PREFIX_PATH@" ?>
<?else ?>
<?define ProgramFilesFolder="ProgramFilesFolder" ?>
<?define PlatformSimpleName="32-bit" ?>
<?define UpgradeGuid="BE0B9FD8-45E2-4A8E-A0D8-1F774D074A78" ?>
<?define QtPath="E:\Qt\$(var.QtVersion)\msvc2015" ?>
<?define QtPath="@CMAKE_PREFIX_PATH@" ?>
<?endif ?>
<?define QtBinPath="$(var.QtPath)\bin" ?>
<?define QtPlatformPath="$(var.QtPath)\plugins\platforms" ?>

View File

@@ -31,7 +31,6 @@
<Property Id="ARPPRODUCTICON" Value="barrier.ico"/>
<Property Id="WIXUI_INSTALLDIR" Value="INSTALLFOLDER"/>
<Property Id="MSIRESTARTMANAGERCONTROL" Value="Disable"/>
</Condition>
<CustomAction ExeCommand="" FileKey="GuiProgram" Id="StartGui" Return="asyncNoWait"/>
<UI>
<Publish Control="Finish" Dialog="ExitDialog" Event="DoAction" Value="StartGui">NOT Installed</Publish>

View File

@@ -1,15 +1,26 @@
#!/bin/bash
if [ ! $BARRIER_BUILD_ENV ]; then
# Checks if directory exists, otherwise asks to install package.
function check_dir_exists() {
local path=$1
local package=$2
printf "Modifying environment for Barrier build..."
if [ ! -d "$path" ]; then
echo "Please install $package"
exit 1
fi
}
if [ ! $BARRIER_BUILD_ENV ]; then
check_dir_exists '/Applications/Xcode.app' 'Xcode'
printf "Modifying environment for Barrier build...\n"
if command -v port; then
printf "Detected Macports"
printf "Detected Macports\n"
check_dir_exists '/opt/local/lib/cmake/Qt5' 'qt5-qtbase port'
if [ ! -d /opt/local/lib/cmake/Qt5 ]; then
printf "Please install qt5-qtbase port"
fi
export BARRIER_BUILD_MACPORTS=1
export CMAKE_PREFIX_PATH="/opt/local/lib/cmake/Qt5:$CMAKE_PREFIX_PATH"
export LD_LIBRARY_PATH="/opt/local/lib:$LD_LIBRARY_PATH"
@@ -17,10 +28,13 @@ if [ ! $BARRIER_BUILD_ENV ]; then
export PKG_CONFIG_PATH="/opt/local/libexec/qt5/lib/pkgconfig:$PKG_CONFIG_PATH"
elif command -v brew; then
printf "Detected Homebrew"
printf "Detected Homebrew\n"
QT_PATH=$(brew --prefix qt)
OPENSSL_PATH=$(brew --prefix openssl)
check_dir_exists "$QT_PATH" 'qt'
check_dir_exists "$OPENSSL_PATH" 'openssl'
export BARRIER_BUILD_BREW=1
export CMAKE_PREFIX_PATH="$QT_PATH:$CMAKE_PREFIX_PATH"
export LD_LIBRARY_PATH="$OPENSSL_PATH/lib:$LD_LIBRARY_PATH"
@@ -28,7 +42,7 @@ if [ ! $BARRIER_BUILD_ENV ]; then
export PKG_CONFIG_PATH="$OPENSSL_PATH/lib/pkgconfig:$PKG_CONFIG_PATH"
else
printf "Neither Homebrew nor Macports is installed. Can't get dependency paths"
printf "Neither Homebrew nor Macports is installed. Can't get dependency paths\n"
exit 1
fi

1
pre-build.bat Normal file
View File

@@ -0,0 +1 @@
%comspec% /k "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\Tools\VsDevCmd.bat"

View File

@@ -31,7 +31,7 @@ commonName = supplied
emailAddress = optional
[req]
default_bits = 1024 # Size of keys
default_bits = 2048 # Size of keys
default_keyfile = key.pem # name of generated keys
default_md = md5 # message digest algorithm
string_mask = nombstr # permitted characters

84
snap/snapcraft.yaml Normal file
View File

@@ -0,0 +1,84 @@
name: barrier
base: core18
version: master
version-script: git describe --tags --long | sed "s/^v//"
adopt-info: appstream-flathub
grade: stable # must be 'stable' to release into candidate/stable channels
confinement: strict # use 'strict' once you have the right plugs and slots
icon: res/barrier.svg
license: GPL-2.0
apps:
barrier:
command: desktop-launch barrier #first run might take longer
desktop: usr/share/applications/barrier.desktop
common-id: com.github.debauchee.barrier
plugs: &plugs
- desktop
- desktop-legacy
- home
- joystick
- network
- opengl
- pulseaudio
- screen-inhibit-control
- unity7
- wayland
- x11
barrierc:
command: desktop-launch barrierc
plugs: *plugs
barriers:
command: desktop-launch barriers
plugs: *plugs
parts:
desktop-qt5:
source: https://github.com/ubuntu/snapcraft-desktop-helpers.git
source-subdir: qt
plugin: make
barrier:
source: .
plugin: cmake
configflags:
- "-DCMAKE_INSTALL_PREFIX=/usr"
- "-DCMAKE_BUILD_TYPE=Release"
build-packages:
- xorg-dev
- libcurl4-openssl-dev
- libavahi-compat-libdnssd-dev
- libssl-dev
- libx11-dev
- qtbase5-dev
- qt5-style-plugins
- libxinerama-dev
- libxrandr-dev
- libxrender-dev
- libxtst-dev
- qtdeclarative5-dev
- libavahi-common-dev
- libqt5svg5-dev
stage-packages:
- libxinerama1
- libxrandr2
- libxrender1
- libqt5gui5
- libqt5x11extras5
- libqt5svg5
- libxtst6
- libavahi-client3
- libavahi-common3
- libavahi-compat-libdnssd1
after: [desktop-qt5]
fix-icon:
plugin: nil
override-build:
sed -i 's|Icon=barrier|Icon=/usr/share/icons/hicolor/scalable/apps/barrier.svg|' $SNAPCRAFT_STAGE/usr/share/applications/barrier.desktop
after: [barrier]
appstream-flathub:
plugin: dump
source: https://github.com/flathub/com.github.debauchee.barrier.git
parse-info: [com.github.debauchee.barrier.appdata.xml]

View File

@@ -1,2 +1,2 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"><trustInfo xmlns="urn:schemas-microsoft-com:asm.v3"><security><requestedPrivileges><requestedExecutionLevel level="asInvoker" uiAccess="false"></requestedExecutionLevel></requestedPrivileges></security></trustInfo><application xmlns="urn:schemas-microsoft-com:asm.v3"><windowsSettings><dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware></windowsSettings></application></assembly>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"><trustInfo xmlns="urn:schemas-microsoft-com:asm.v3"><security><requestedPrivileges><requestedExecutionLevel level="asInvoker" uiAccess="false"></requestedExecutionLevel></requestedPrivileges></security></trustInfo><application xmlns="urn:schemas-microsoft-com:asm.v3"><windowsSettings><dpiAwareness xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">PerMonitor</dpiAwareness><dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware></windowsSettings></application></assembly>

View File

@@ -456,7 +456,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="unfinished"></translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="unfinished"></translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="unfinished"></translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">Приложи</translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">Aplicar</translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">&amp;Použít</translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="unfinished"></translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">&amp;Anvend</translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">&amp;Anwenden</translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">Aplicar</translation>
</message>
<message>
@@ -1408,4 +1408,4 @@ Server response:
<translation type="unfinished"></translation>
</message>
</context>
</TS>
</TS>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">Rakenda</translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">Käytä</translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">Appliquer</translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="unfinished"></translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="unfinished"></translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">&amp;שמור שינויים</translation>
</message>
<message>

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="unfinished"></translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">&amp;Primijeni</translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">Alkalmaz</translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="unfinished"></translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="unfinished"></translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">Applica</translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">適用</translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">적용(&amp;A)</translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="unfinished"></translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="unfinished"></translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="unfinished"></translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">Toep&amp;assen</translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">&amp;Bruk</translation>
</message>
<message>

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="unfinished"></translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">&amp;Zastosuj</translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">Aplicar</translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">&amp;Aplicar</translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">Aplică</translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">&amp;Применить</translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="unfinished"></translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="unfinished"></translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="unfinished"></translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">&amp;Apliko</translation>
</message>
<message>

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="unfinished"></translation>
</message>
<message>

Binary file not shown.

View File

@@ -454,7 +454,7 @@ To automatically trust this fingerprint for future connections, click Yes. To re
</message>
<message>
<location filename="res/MainWindowBase.ui" line="373"/>
<source>&amp;Apply</source>
<source>&amp;Reload</source>
<translation type="finished">Verkställ</translation>
</message>
<message>

Some files were not shown because too many files have changed in this diff Show More