Compare commits
357 Commits
Author | SHA1 | Date |
---|---|---|
|
653e4badeb | |
|
7324f26e09 | |
|
00a57ea972 | |
|
433126e7a1 | |
|
6ce4b7e970 | |
|
d64bb1591a | |
|
4a978c8331 | |
|
20a1bd2e4c | |
|
b4cef2703e | |
|
2db65f0866 | |
|
606222fbae | |
|
4ed0141389 | |
|
37e7741942 | |
|
2fcffcdaa9 | |
|
2c8f92206f | |
|
69ec896e65 | |
|
13d8cd0d65 | |
|
4e082404f1 | |
|
b33af1f94c | |
|
3153062611 | |
|
40d4a58b1c | |
|
d874e5f729 | |
|
584306bf46 | |
|
8388f229dd | |
|
f4e2e51ce4 | |
|
3a24a76de3 | |
|
f8d538f29e | |
|
842c75747a | |
|
e46b8e558f | |
|
cc6067a543 | |
|
dc6ddbc246 | |
|
dc7aa012d5 | |
|
4b12265ae5 | |
|
141ab9ecb4 | |
|
bfc465d477 | |
|
ac5a1bfd3b | |
|
dd3ea8adfe | |
|
e010f89f41 | |
|
21c8fb88d0 | |
|
3e0d758b59 | |
|
1738afc6e3 | |
|
6b729df698 | |
|
56177d461a | |
|
e7bdcb5249 | |
|
e8453f2b9a | |
|
608594f245 | |
|
fc6d4e41d8 | |
|
d7de571fdc | |
|
d2c106db53 | |
|
53356697d9 | |
|
9cf590ccd7 | |
|
815e80ec4d | |
|
666460aced | |
|
4486830fdb | |
|
f0efe043bb | |
|
8b937a4abd | |
|
caeebf6c36 | |
|
aaa0e4d2e0 | |
|
deefecc262 | |
|
20f66fe133 | |
|
676fa39f9a | |
|
00e182d22e | |
|
dd31d0a539 | |
|
e8ac56b045 | |
|
fd5295eb31 | |
|
af90f39b4a | |
|
e33c81b835 | |
|
cc369820d4 | |
|
7ab8e0101d | |
|
b677a0b419 | |
|
b5adc93e2b | |
|
7cacbd1489 | |
|
165100a0d2 | |
|
229abab99f | |
|
e79bdf333c | |
|
57769cffda | |
|
5c7d7194d5 | |
|
82b8fa905e | |
|
133e447fb6 | |
|
8bc280e0dd | |
|
ed32e2e326 | |
|
4d73ed9fdd | |
|
92ba6f61e6 | |
|
c0ce893711 | |
|
cb0480fe84 | |
|
f9c051fc82 | |
|
6d7eca42b7 | |
|
0f3afed664 | |
|
b76b332f2f | |
|
d033ffa3d8 | |
|
220f9e8274 | |
|
a2ca7e29f5 | |
|
298980fa86 | |
|
677612d342 | |
|
e7d936b5d7 | |
|
bcafdc6783 | |
|
a987605513 | |
|
801a5a7084 | |
|
22ac14be8c | |
|
a428b61c7d | |
|
c7e6fc6c7e | |
|
b7757fbd68 | |
|
a238b27879 | |
|
7cced74119 | |
|
50534ecb43 | |
|
be8ba0d132 | |
|
9cac96b4af | |
|
3e71b468f6 | |
|
8f88dc2585 | |
|
aa3afa9062 | |
|
dbf56a9375 | |
|
cf732aba37 | |
|
089b8e4749 | |
|
85486927b3 | |
|
cd7e731cb7 | |
|
ef08470286 | |
|
b793675ef8 | |
|
a9b30951ce | |
|
767f3d37ec | |
|
9d8e1faf59 | |
|
96e0021572 | |
|
7f71924a86 | |
|
0e406d4918 | |
|
bf667a429c | |
|
dba7b72195 | |
|
bfa8964305 | |
|
fca18b63c5 | |
|
a4ff91a991 | |
|
fce7615e42 | |
|
d24f368efe | |
|
8286c85dc0 | |
|
15a955ff21 | |
|
2877e6cb17 | |
|
a53380de4f | |
|
907bcdcfea | |
|
59d076988f | |
|
4dfe1b1a73 | |
|
547a2dd413 | |
|
dd8c2a1a38 | |
|
872e78d342 | |
|
9c41441861 | |
|
ab3bdad5ab | |
|
9549352a10 | |
|
8c014b4bb6 | |
|
3aee8dd341 | |
|
486545527b | |
|
9bb25d8887 | |
|
9432743cea | |
|
bf388b907e | |
|
3a74395254 | |
|
2ca88cbfa1 | |
|
690cd8b534 | |
|
a75da35854 | |
|
87bdfd4e98 | |
|
163fe9b329 | |
|
b3d4da9c0d | |
|
85d995ff23 | |
|
eb3f2741d9 | |
|
e26a5c376e | |
|
2f6aa21bfe | |
|
962d5e1c13 | |
|
27f7e7ba9b | |
|
feb30fafcb | |
|
747039e1cd | |
|
dec895e8d3 | |
|
c32ca2195d | |
|
b0c0b42bc2 | |
|
0c02b3d54b | |
|
7d5ff93785 | |
|
260005ff07 | |
|
57463a31f8 | |
|
7a4c6a25d7 | |
|
eec676948c | |
|
14b5cebb62 | |
|
6a1bcb9dd6 | |
|
1fac0e6603 | |
|
0fa91e0fd3 | |
|
a4afb983d1 | |
|
7acddd0452 | |
|
f52690af82 | |
|
b9e2f79ca5 | |
|
de89c9d45e | |
|
c90ae37263 | |
|
00cfe0ba6d | |
|
63d60a14f8 | |
|
ebb8f101de | |
|
6a0ed51aed | |
|
729c519cb4 | |
|
1e95a19bf4 | |
|
c25837fc62 | |
|
5dc27b1201 | |
|
f7be30cc3f | |
|
695a737a89 | |
|
ac5de110c0 | |
|
e80184ce7a | |
|
cdc6e684eb | |
|
9a0bbbaaec | |
|
649fdfe042 | |
|
7f44afa546 | |
|
cad92e89d0 | |
|
5f6456b36e | |
|
615762d7b3 | |
|
a29a93f0c8 | |
|
06c1a5908c | |
|
12024b9a5d | |
|
4ee6a54d41 | |
|
8202fe1fc7 | |
|
a8e15df633 | |
![]() |
5de519d89b | |
|
31ce5cbdf8 | |
|
d4382b9b80 | |
|
cf231aef03 | |
|
743515e747 | |
|
d51ad9eeef | |
|
804f774ef1 | |
|
4d00a1304d | |
|
3f268a5099 | |
|
a2753a76ce | |
|
e7d5f25fea | |
|
eab906ee98 | |
|
297de775a3 | |
|
a0459a482f | |
|
0c57bdeed8 | |
|
c0699a793d | |
|
0c86f1fbf9 | |
|
a46b297045 | |
|
bb6a5500c3 | |
|
bcdeee1f00 | |
|
0ed65808c6 | |
|
a682d3217b | |
|
55acae7038 | |
|
7f074aecf3 | |
|
4e40956aad | |
|
f5681b64e0 | |
|
b596802f38 | |
|
a4ed0eef67 | |
|
0c0a389f67 | |
|
3c4835a9a4 | |
|
b12dac64ea | |
|
df0c205052 | |
|
c44a398e39 | |
|
7ee94cca94 | |
|
adc49fa066 | |
|
8fe1df8c28 | |
|
a48f183ee1 | |
|
618d28d392 | |
|
def2ef2a9f | |
|
7befd121d4 | |
|
141f6de2c4 | |
|
a004cd8eba | |
|
79d266d274 | |
|
0602499ccf | |
|
7a4ce45f5d | |
|
1aba369dff | |
|
ca925cc348 | |
|
181b3d6235 | |
|
0259703cb2 | |
|
773b5b5362 | |
|
36fa9eaa0e | |
|
0f7855d2f5 | |
|
a8a2b7c29a | |
|
384dbffce4 | |
|
ac60e620ba | |
|
5cc18ac595 | |
|
fb067d4001 | |
|
68cfb4e585 | |
|
0579101272 | |
|
a691b31b8e | |
|
016393fb67 | |
|
e7da893f5a | |
|
7f76d3cdcc | |
|
f1aab806af | |
|
88c0c030f8 | |
|
1c434df87a | |
|
3f387bdad0 | |
|
acc54de922 | |
|
01b97d0c2a | |
|
1d5fcfa3af | |
|
6b317359ba | |
|
f2bf7cb7e1 | |
|
d5799f37d3 | |
|
c7b911497a | |
|
09e1dbdf84 | |
|
64a9c41edc | |
|
55434ebced | |
|
402801e0a6 | |
|
2c5cdf1037 | |
|
91baa4f133 | |
|
e032d14a48 | |
|
36d9efbc64 | |
|
b125cf3da7 | |
|
357e0ccc7e | |
|
e66832c1d7 | |
|
bbea197600 | |
|
2da6cb3a51 | |
|
ce31584a6b | |
|
829ff7975b | |
|
99edadb0b1 | |
|
bc5c4bf344 | |
|
390555c53d | |
|
366342e401 | |
|
aea488167a | |
|
5fdb750922 | |
|
1474f04f53 | |
|
f3eb89121d | |
|
38390f9b88 | |
|
0dbedd31dc | |
|
72849864a3 | |
|
87c5f874e4 | |
|
01a78a4d3a | |
|
06951ea9f0 | |
|
142e8dc847 | |
|
95afed5256 | |
|
bd0c671fcc | |
|
fc045fc793 | |
|
65f4db7563 | |
|
43708ae0d6 | |
|
9b55aaae1e | |
|
dbe4dc5d12 | |
|
8122484c3d | |
|
7756557204 | |
|
2cd21cc95f | |
|
012a7dc055 | |
|
0699536382 | |
|
c1d131fd38 | |
|
167a1075fa | |
|
9745df29cd | |
|
4aee34848e | |
|
5a02070b54 | |
|
b38f844dc0 | |
|
3804198105 | |
|
600d31f29b | |
|
1418196af1 | |
|
c3aba1b20b | |
|
7dbfa63a63 | |
|
7aa110475e | |
|
fa46480c35 | |
|
b204520864 | |
|
d58a9fbe84 | |
|
bd1db368b3 | |
|
4a031b8ce5 | |
|
4aefd64add | |
|
0fdcf8b225 | |
|
d186548a53 | |
|
36ae769987 | |
|
9a9d22105c | |
|
6b71871204 | |
|
7452b64482 | |
|
4d32e29275 | |
|
c815abf0e8 | |
|
345bb4b62b | |
|
7210bfa615 | |
|
93ef15774b | |
|
bd3a8be956 | |
|
3d0186695f | |
|
bbd1accb93 | |
|
ef769d4802 |
|
@ -0,0 +1,9 @@
|
|||
root = true
|
||||
|
||||
[*]
|
||||
end_of_line = lf
|
||||
charset = utf-8
|
||||
trim_trailing_whitespace = true
|
||||
insert_final_newline = true
|
||||
indent_style = space
|
||||
indent_size = 4
|
|
@ -1,30 +0,0 @@
|
|||
### Operating Systems ###
|
||||
|
||||
Server: microOS Tiara
|
||||
|
||||
Client: Applesoft Windy OS 10
|
||||
|
||||
**READ ME, DELETE ME**: On Windows, hold the Windows key and press 'r', type 'winver' and hit return to get your OS version. On Mac, hit the Apple menu (top left of the screen) and check 'About this Mac'. Linux users... you know what you're using ;)
|
||||
|
||||
### Barrier Version ###
|
||||
|
||||
1.9.π
|
||||
|
||||
**READ ME, DELETE ME**: Go to the 'Help' (on Windows) or 'Barrier' (on macOS) menu and then 'About Barrier' to check your version. Verify that you are using the same version across all of your machines, and that your issue still occurs with the latest release available at https://github.com/debauchee/barrier/
|
||||
|
||||
### Steps to reproduce bug ###
|
||||
|
||||
**READ ME, DELETE ME**: Try to be succinct. If your bug is intermittent, try and describe what you're doing when it happens most.
|
||||
|
||||
1. Click things.
|
||||
2. Type things.
|
||||
3. Bug occurs.
|
||||
4. ...
|
||||
|
||||
### Other info ###
|
||||
|
||||
* When did the problem start to occur? When I...
|
||||
* Is there a way to work around it? No/Yes, you can...
|
||||
* Does this bug prevent you from using Barrier entirely? Yes/No
|
||||
|
||||
Put anything else you can think of here.
|
|
@ -0,0 +1,80 @@
|
|||
name: Bug Report
|
||||
description: File a bug report (for questions, ideas & support, use the Discussions tab, or IRC for quick answers, but make sure to stay on the channel!)
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thanks for taking the time to fill out this bug report!
|
||||
- type: textarea
|
||||
id: what-happened
|
||||
attributes:
|
||||
label: What happened?
|
||||
description: Also tell us, what did you expect to happen?
|
||||
placeholder: Tell us what you see! Screenshots are also helpful - please attach to the issue (when created), rather than linking to image hosting sites.
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
id: version
|
||||
attributes:
|
||||
label: Version
|
||||
description: What version of Barrier are you running?
|
||||
options:
|
||||
- v2.0.0-RC1
|
||||
- v2.0.0-RC2
|
||||
- v2.0.0
|
||||
- v2.1.1
|
||||
- v2.1.2
|
||||
- v2.3.0
|
||||
- v2.3.1
|
||||
- v2.3.2-alpha
|
||||
- v2.3.2
|
||||
- v2.3.3
|
||||
- v2.3.4
|
||||
- v2.4.0
|
||||
- From Git HEAD or commit (specify below)
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
id: git-commit-if
|
||||
attributes:
|
||||
label: Git commit hash (if applicable)
|
||||
description: "When building Barrier from Git, what commit hash did you checkout from?"
|
||||
placeholder: b0c0b42b
|
||||
validations:
|
||||
required: false
|
||||
- type: textarea
|
||||
id: pkg-mgr-origin
|
||||
attributes:
|
||||
label: If applicable, where did you install Barrier from?
|
||||
description: This includes Snaps, Flatpaks, and self-built executables.
|
||||
validations:
|
||||
required: false
|
||||
- type: dropdown
|
||||
id: os
|
||||
attributes:
|
||||
label: What OSes are you seeing the problem on? (Check all that apply)
|
||||
multiple: true
|
||||
options:
|
||||
- Linux
|
||||
- Windows
|
||||
- macOS
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: os-version
|
||||
attributes:
|
||||
label: What OS versions are you using?
|
||||
description: This applies to both client(s) and the server.
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: logs
|
||||
attributes:
|
||||
label: Relevant log output
|
||||
description: Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks.
|
||||
render: shell
|
||||
- type: textarea
|
||||
id: misc-info
|
||||
attributes:
|
||||
label: Any other information
|
||||
description: Please enter any other information we should know, if applicable.
|
|
@ -0,0 +1 @@
|
|||
blank_issues_enabled: false
|
|
@ -0,0 +1,4 @@
|
|||
## Contributor Checklist:
|
||||
|
||||
* [ ] I have created a file in the `doc/newsfragments` directory *IF* it is a
|
||||
user-visible change (and make sure to read the `README.md` in that directory)
|
|
@ -4,3 +4,6 @@
|
|||
[submodule "ext/gmock"]
|
||||
path = ext/gmock
|
||||
url = https://github.com/google/googlemock.git
|
||||
[submodule "ext/gulrak-filesystem"]
|
||||
path = ext/gulrak-filesystem
|
||||
url = https://github.com/gulrak/filesystem
|
||||
|
|
|
@ -2,6 +2,6 @@
|
|||
# Barrier build parameters
|
||||
#
|
||||
BARRIER_VERSION_MAJOR = 2
|
||||
BARRIER_VERSION_MINOR = 3
|
||||
BARRIER_VERSION_PATCH = 2
|
||||
BARRIER_VERSION_STAGE = snapshot
|
||||
BARRIER_VERSION_MINOR = 4
|
||||
BARRIER_VERSION_PATCH = 0
|
||||
BARRIER_VERSION_STAGE = release
|
||||
|
|
|
@ -20,6 +20,8 @@ project (barrier C CXX)
|
|||
|
||||
option (BARRIER_BUILD_GUI "Build the GUI" ON)
|
||||
option (BARRIER_BUILD_INSTALLER "Build the installer" ON)
|
||||
option (BARRIER_BUILD_TESTS "Build the tests" ON)
|
||||
option (BARRIER_USE_EXTERNAL_GTEST "Use external installation of Google Test framework" OFF)
|
||||
|
||||
set (CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
||||
set (CMAKE_CXX_STANDARD 14)
|
||||
|
@ -49,7 +51,6 @@ else()
|
|||
endif()
|
||||
|
||||
set (libs)
|
||||
include_directories (BEFORE SYSTEM ./ext/gtest/include)
|
||||
|
||||
if (UNIX)
|
||||
if (NOT APPLE)
|
||||
|
@ -90,7 +91,6 @@ if (UNIX)
|
|||
check_function_exists (poll HAVE_POLL)
|
||||
check_function_exists (sigwait HAVE_POSIX_SIGWAIT)
|
||||
check_function_exists (strftime HAVE_STRFTIME)
|
||||
check_function_exists (vsnprintf HAVE_VSNPRINTF)
|
||||
check_function_exists (inet_aton HAVE_INET_ATON)
|
||||
|
||||
# For some reason, the check_function_exists macro doesn't detect
|
||||
|
@ -165,10 +165,10 @@ if (UNIX)
|
|||
link_directories("/usr/local/lib")
|
||||
endif()
|
||||
|
||||
if (${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD")
|
||||
set (CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};/usr/X11R6/include;/usr/local/include;/usr/local/include/avahi-compat-libdns_sd")
|
||||
if (${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD")
|
||||
set (CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};/usr/X11R6/include;/usr/local/include;/usr/local/include/avahi-compat-libdns_sd")
|
||||
set (CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} -L/usr/local/lib -L/usr/X11R6/lib")
|
||||
include_directories("/usr/local/include" "/usr/X11R6/include" "/usr/local/include/avahi-compat-libdns_sd")
|
||||
include_directories("/usr/local/include" "/usr/X11R6/include" "/usr/local/include/avahi-compat-libdns_sd")
|
||||
link_directories("/usr/local/lib")
|
||||
link_directories("/usr/X11R6/lib")
|
||||
endif()
|
||||
|
@ -194,9 +194,8 @@ if (UNIX)
|
|||
check_include_files ("X11/extensions/XInput2.h" HAVE_XI2)
|
||||
check_include_files ("dns_sd.h" HAVE_DNSSD)
|
||||
|
||||
if (HAVE_X11_EXTENSIONS_DPMS_H)
|
||||
# Assume that function prototypes declared, when include exists.
|
||||
set (HAVE_DPMS_PROTOTYPES 1)
|
||||
if (NOT HAVE_X11_EXTENSIONS_XTEST_H)
|
||||
message (FATAL_ERROR "Missing header: X11/extensions/XTest.h")
|
||||
endif()
|
||||
|
||||
if (NOT HAVE_X11_XKBLIB_H)
|
||||
|
@ -292,6 +291,9 @@ elseif (${CMAKE_SYSTEM_NAME} MATCHES "Windows")
|
|||
list (APPEND libs Wtsapi32 Userenv Wininet comsuppw Shlwapi)
|
||||
|
||||
add_definitions (
|
||||
/DSYSAPI_WIN32=1
|
||||
/DWINAPI_MSWINDOWS=1
|
||||
/D_SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING=1 # tr1 is used from gtest and gmock
|
||||
/DWIN32
|
||||
/D_WINDOWS
|
||||
/D_CRT_SECURE_NO_WARNINGS
|
||||
|
@ -300,6 +302,8 @@ elseif (${CMAKE_SYSTEM_NAME} MATCHES "Windows")
|
|||
)
|
||||
endif()
|
||||
|
||||
include_directories("${CMAKE_SOURCE_DIR}/ext/gulrak-filesystem/include")
|
||||
|
||||
#
|
||||
# OpenSSL
|
||||
#
|
||||
|
@ -317,10 +321,21 @@ if (${CMAKE_SYSTEM_NAME} MATCHES "Windows")
|
|||
${OPENSSL_ROOT}/lib/ssleay32.lib
|
||||
)
|
||||
elseif (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||
find_program(APT_PROGRAM "apt")
|
||||
find_program(BREW_PROGRAM "brew")
|
||||
find_program(PORT_PROGRAM "port")
|
||||
|
||||
if (IS_DIRECTORY /opt/local AND PORT_PROGRAM)
|
||||
|
||||
if (IS_DIRECTORY /opt/procursus AND APT_PROGRAM)
|
||||
# procursus/apt
|
||||
set (OPENSSL_ROOT /opt/procursus)
|
||||
|
||||
include_directories (BEFORE SYSTEM ${OPENSSL_ROOT}/include)
|
||||
|
||||
set (OPENSSL_LIBS
|
||||
${OPENSSL_ROOT}/lib/libssl.a
|
||||
${OPENSSL_ROOT}/lib/libcrypto.a
|
||||
)
|
||||
elseif (IS_DIRECTORY /opt/local AND PORT_PROGRAM)
|
||||
# macports
|
||||
set (OPENSSL_ROOT /opt/local)
|
||||
|
||||
|
@ -335,6 +350,16 @@ elseif (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
|||
|
||||
include_directories (BEFORE SYSTEM ${OPENSSL_ROOT}/include)
|
||||
|
||||
set (OPENSSL_LIBS
|
||||
${OPENSSL_ROOT}/lib/libssl.a
|
||||
${OPENSSL_ROOT}/lib/libcrypto.a
|
||||
)
|
||||
elseif (IS_DIRECTORY /opt/homebrew/opt/openssl AND BREW_PROGRAM)
|
||||
# brew
|
||||
set (OPENSSL_ROOT /opt/homebrew/opt/openssl)
|
||||
|
||||
include_directories (BEFORE SYSTEM ${OPENSSL_ROOT}/include)
|
||||
|
||||
set (OPENSSL_LIBS
|
||||
${OPENSSL_ROOT}/lib/libssl.a
|
||||
${OPENSSL_ROOT}/lib/libcrypto.a
|
||||
|
@ -369,7 +394,7 @@ macro (configure_files srcDir destDir)
|
|||
set (sourceFilePath ${srcDir}/${sourceFile})
|
||||
if (IS_DIRECTORY ${sourceFilePath})
|
||||
message (STATUS "Copying directory ${sourceFile}")
|
||||
make_directory (${destDir/${sourceFile})
|
||||
make_directory (${destDir}/${sourceFile})
|
||||
else()
|
||||
message (STATUS "Copying file ${sourceFile}")
|
||||
configure_file (${sourceFilePath} ${destDir}/${sourceFile} COPYONLY)
|
||||
|
@ -420,7 +445,7 @@ endif()
|
|||
if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
|
||||
configure_files (${CMAKE_CURRENT_SOURCE_DIR}/dist/rpm ${CMAKE_BINARY_DIR}/rpm)
|
||||
install(FILES res/barrier.svg DESTINATION share/icons/hicolor/scalable/apps)
|
||||
if("${VERSION_MAJOR}" STREQUAL "2")
|
||||
if("${VERSION_MAJOR}" STREQUAL "2")
|
||||
install(FILES res/barrier2.desktop DESTINATION share/applications)
|
||||
else()
|
||||
install(FILES res/barrier.desktop DESTINATION share/applications)
|
||||
|
@ -430,4 +455,7 @@ endif()
|
|||
else()
|
||||
message (STATUS "NOT configuring the installer")
|
||||
endif()
|
||||
|
||||
enable_testing()
|
||||
|
||||
add_subdirectory (src)
|
||||
|
|
61
LICENSE
61
LICENSE
|
@ -3,7 +3,7 @@ Copyright (C) 2012-2016 Symless Ltd.
|
|||
Copyright (C) 2008-2014 Nick Bolton
|
||||
Copyright (C) 2002-2014 Chris Schoeneman
|
||||
|
||||
This program is released under the GPL with the additional exemption
|
||||
This program is released under the GPL with the additional exemption
|
||||
that compiling, linking, and/or using OpenSSL is allowed.
|
||||
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
|
@ -286,3 +286,62 @@ PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
|||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program is interactive, make it output a short notice like this
|
||||
when it starts in an interactive mode:
|
||||
|
||||
Gnomovision version 69, Copyright (C) year name of author
|
||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||
parts of the General Public License. Of course, the commands you use may
|
||||
be called something other than `show w' and `show c'; they could even be
|
||||
mouse-clicks or menu items--whatever suits your program.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the program, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
||||
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1989
|
||||
Ty Coon, President of Vice
|
||||
|
||||
This General Public License does not permit incorporating your program into
|
||||
proprietary programs. If your program is a subroutine library, you may
|
||||
consider it more useful to permit linking proprietary applications with the
|
||||
library. If this is what you want to do, use the GNU Lesser General
|
||||
Public License instead of this License.
|
||||
|
|
103
README.md
103
README.md
|
@ -1,6 +1,6 @@
|
|||
# Barrier
|
||||
|
||||
Eliminate the barrier between your machines.
|
||||
Eliminate the barrier between your machines.
|
||||
Find [releases for windows and macOS here](https://github.com/debauchee/barrier/releases).
|
||||
Your distro probably already has barrier packaged for it, see [distro specific packages](#distro-specific-packages)
|
||||
below for a list. Alternatively, we also provide a [flatpak](https://github.com/flathub/com.github.debauchee.barrier)
|
||||
|
@ -8,7 +8,7 @@ and a [snap](https://snapcraft.io/barrier).
|
|||
|
||||
### Contact info:
|
||||
|
||||
- `#barrier` on freenode
|
||||
- `#barrier` on LiberaChat IRC network
|
||||
|
||||
#### CI Build Status
|
||||
|
||||
|
@ -30,9 +30,14 @@ Barrier is software that mimics the functionality of a KVM switch, which histori
|
|||
|
||||
Barrier was forked from Symless's Synergy 1.9 codebase. Synergy was a commercialized reimplementation of the original CosmoSynergy written by Chris Schoeneman.
|
||||
|
||||
At the moment, barrier is not compatible with synergy. Barrier needs to be installed on all machines that will share keyboard and mouse.
|
||||
|
||||
### What's different?
|
||||
|
||||
Whereas Synergy has moved beyond its goals from the 1.x era, Barrier aims to maintain that simplicity. Barrier will let you use your keyboard and mouse from machine A to control machine B (or more). It's that simple.
|
||||
Whereas Synergy has moved beyond its goals from the 1.x era, Barrier aims to maintain that simplicity.
|
||||
Barrier will let you use your keyboard and mouse from one computer to control one or more other computers.
|
||||
Clipboard sharing is supported.
|
||||
That's it.
|
||||
|
||||
### Project goals
|
||||
|
||||
|
@ -42,15 +47,33 @@ Compatibility. We use more than one operating system and you probably do, too. W
|
|||
|
||||
Communication. Everything we do is in the open. Our issue tracker will let you see if others are having the same problem you're having and will allow you to add additional information. You will also be able to see when progress is made and how the issue gets resolved.
|
||||
|
||||
### Usage
|
||||
|
||||
Install and run barrier on each machine that will be sharing.
|
||||
On the machine with the keyboard and mouse, make it the server.
|
||||
|
||||
Click the "Configure server" button and drag a new screen onto the grid for each client machine.
|
||||
Ensure the "screen name" matches exactly (case-sensitive) for each configured screen -- the clients' barrier windows will tell you their screen names (just above the server IP).
|
||||
|
||||
On the client(s), put in the server machine's IP address (or use Bonjour/auto configuration when prompted) and "start" them.
|
||||
You should see `Barrier is running` on both server and clients.
|
||||
You should now be able to move the mouse between all the screens as if they were the same machine.
|
||||
|
||||
Note that if the keyboard's Scroll Lock is active then this will prevent the mouse from switching screens.
|
||||
|
||||
### Contact & support
|
||||
|
||||
Please be aware that the *only* way to draw our attention to a bug is to create a new issue in [the issue tracker](https://github.com/debauchee/barrier/issues). 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.
|
||||
For short and simple questions or to just say hello find us on the LiberaChat 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.
|
||||
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.
|
||||
|
||||
Most pull requests will need to include a release note.
|
||||
See docs/newsfragments/README.md for documentation of how to do that.
|
||||
|
||||
## Distro specific packages
|
||||
|
||||
|
@ -59,21 +82,67 @@ specific packages.
|
|||
|
||||
[](https://repology.org/project/barrier/versions)
|
||||
|
||||
### FAQ
|
||||
## FAQ - Frequently Asked Questions
|
||||
|
||||
Q: Does drag and drop work on linux?
|
||||
**Q: Does drag and drop work on linux?**
|
||||
|
||||
A: No
|
||||
> A: No *(see [#855](https://github.com/debauchee/barrier/issues/855) if you'd like to change that)*
|
||||
|
||||
Q: What OSes are supported?
|
||||
|
||||
A:
|
||||
- Windows 7, 8, 8.1, and 10
|
||||
- MacOS/OS X
|
||||
- Linux
|
||||
- FreeBSD
|
||||
- OpenBSD
|
||||
**Q: What OSes are supported?**
|
||||
|
||||
Q: Are 32-bit versions of Windows supported?
|
||||
> A: The [most recent release](https://github.com/debauchee/barrier/releases/latest) of Barrier is known to work on:
|
||||
> - Windows 7, 8, 8.1, 10, and 11
|
||||
> - macOS *(previously known as OS X or Mac OS X)*
|
||||
> - _The current GUI does **not** work on OS versions prior to macOS 10.12 Sierra (but see the related answer below)_
|
||||
> - Linux
|
||||
> - FreeBSD
|
||||
> - OpenBSD
|
||||
|
||||
A: No
|
||||
|
||||
**Q: Are 32-bit versions of Windows supported?**
|
||||
|
||||
> A: No
|
||||
|
||||
|
||||
__Q: Is it possible to use Barrier on Mac OS X / OS X versions prior to 10.12?__
|
||||
|
||||
> A: Not officially.
|
||||
> - For OS X 10.10 Yosemite and later:
|
||||
> - [Barrier v2.1.0](https://github.com/debauchee/barrier/releases/tag/v2.1.0) or earlier _may_ work.
|
||||
> - For Mac OS X 10.9 Mavericks _(and perhaps earlier)_:
|
||||
> 1. the command-line portions of the [current release](https://github.com/debauchee/barrier/releases/latest) _should_ run fine.
|
||||
> 2. The GUI will _not_ run, as that OS version does not include Apple's *Metal* framework.
|
||||
> - _(For a GUI workaround for Mac OS X 10.9, see the [discussion at issue #544](https://github.com/debauchee/barrier/issues/544))_
|
||||
|
||||
> Note: Only versions [v2.3.4](https://github.com/debauchee/barrier/releases/tag/v2.3.4) and [later](https://github.com/debauchee/barrier/releases/latest) of Barrier can be supported by this project.
|
||||
> - Anyone using an earlier version is advised to upgrade due to recently-addressed security vulnerabilities *(and other bug fixes)*.
|
||||
> - This is especially important for computers accessible from the public Internet *(or from other shared/untrusted networks, such as when using shared WiFi)*.
|
||||
|
||||
|
||||
**Q: How do I load my configuration on startup?**
|
||||
|
||||
> A: Start the binary with the argument `--config <path_to_saved_configuration>`
|
||||
|
||||
|
||||
**Q: After loading my configuration on the client the field 'Server IP' is still empty!**
|
||||
|
||||
> A: Edit your configuration to include the server's ip address manually with
|
||||
>
|
||||
>```
|
||||
>(...)
|
||||
>
|
||||
>section: options
|
||||
> serverhostname=<AAA.BBB.CCC.DDD>
|
||||
>```
|
||||
|
||||
**Q: Are there any other significant limitations with the current version of Barrier?**
|
||||
|
||||
> A: Currently:
|
||||
> - Barrier currently has limited UTF-8 support; issues have been reported with processing various languages.
|
||||
> - *(see [#860](https://github.com/debauchee/barrier/issues/860))*
|
||||
> - There is interest in future support for the Wayland compositor/display server protocol *([official site](https://wayland.freedesktop.org/) | [Wikipedia article](https://en.wikipedia.org/wiki/Wayland_(display_server_protocol)))* on Linux.
|
||||
> - As of late 2021, there is no expected completion date for *Wayland* support.
|
||||
> - *(see [#109](https://github.com/debauchee/barrier/issues/109) and [#1251](https://github.com/debauchee/barrier/issues/1251) for status or to volunteer your talents)*
|
||||
>
|
||||
> The complete list of open issues can be found in the ['Issues' tab on GitHub](https://github.com/debauchee/barrier/issues?q=is%3Aissue+is%3Aopen). Help is always appreciated.
|
||||
|
|
|
@ -0,0 +1,76 @@
|
|||
Creating a release
|
||||
==================
|
||||
|
||||
This document is documentation intednded for maintainers of Barrier.
|
||||
It documents the release process of Barrier.
|
||||
|
||||
Step 1: Setup environment variables
|
||||
-----------------------------------
|
||||
|
||||
Setup the following environment variable that will be used throughout the rest of the steps.
|
||||
|
||||
export VERSION=X.Y.Z
|
||||
|
||||
Step 2: Release notes PR
|
||||
------------------------
|
||||
|
||||
Open a new branch (e.g. `release`) and run the following:
|
||||
|
||||
towncrier --version ${VERSION} --date `date -u +%F`
|
||||
|
||||
This collects the release notes using the `towncrier` tool. Please commit the collected release
|
||||
notes afterwards.
|
||||
|
||||
Certain file names are not properly supported by the `towncrier` tool and it ignores them.
|
||||
Check `newsfragments` directory for any forgotten release notes
|
||||
|
||||
Step 3: Merge the release notes PR
|
||||
----------------------------------
|
||||
|
||||
Step 4: Bump the version number
|
||||
-------------------------------
|
||||
|
||||
Pull the merge commit created on the `master` branch during the step 2.
|
||||
|
||||
Edit the following files and update the version numbers:
|
||||
|
||||
- `Build.properties`
|
||||
- `cmake/Version.cmake`
|
||||
- `doc/barrierc.1`
|
||||
- `doc/barriers.1`
|
||||
- `.github/ISSUE_TEMPLATE/bug_report.yml`
|
||||
|
||||
Commit to the release branch with the following message `Barrier x.y.z`.
|
||||
|
||||
Push the commit:
|
||||
|
||||
git push origin master
|
||||
|
||||
Step 5: Push git tag
|
||||
--------------------
|
||||
|
||||
Create a tag:
|
||||
|
||||
git tag -s v${VERSION} -m v${VERSION}
|
||||
|
||||
Push the tag:
|
||||
|
||||
git push origin master --tags
|
||||
|
||||
|
||||
Step 6: Draft a new release on Github
|
||||
-------------------------------------
|
||||
|
||||
Go to https://github.com/buildbot/buildbot/releases and draft a new release.
|
||||
|
||||
Use git tag as the title of the release: `vX.Y.Z`.
|
||||
|
||||
Use the release notes generated by the `towncrier` tool as the description of the releases.
|
||||
|
||||
Upload the artifacts created by Azure pipelines as the binaries of the release. The following
|
||||
artifacts should be uploaded to Github:
|
||||
|
||||
- the Barrier-X.Y.Z-release.dmg created by the newest Mac OS task (artifact name is
|
||||
"Mac Release Disk Image and App XYZ").
|
||||
|
||||
- the BarrierSetup-X.Y.Z-release.exe (artifact name is Windows Release Installer).
|
|
@ -1 +1 @@
|
|||
theme: jekyll-theme-slate
|
||||
theme: jekyll-theme-slate
|
||||
|
|
|
@ -63,9 +63,15 @@ jobs:
|
|||
artifactName: Windows Release Installer
|
||||
|
||||
- job: LinuxBuild
|
||||
strategy:
|
||||
matrix:
|
||||
ubuntu-18.04:
|
||||
imageName: 'ubuntu-18.04'
|
||||
ubuntu-20.04:
|
||||
imageName: 'ubuntu-20.04'
|
||||
displayName: Linux Build
|
||||
pool:
|
||||
vmImage: 'ubuntu-16.04'
|
||||
vmImage: $(imageName)
|
||||
steps:
|
||||
- script: sudo apt-get update -y
|
||||
- script: sudo apt-get install -y libxtst-dev qtdeclarative5-dev libavahi-compat-libdnssd-dev libcurl4-openssl-dev
|
||||
|
@ -75,13 +81,22 @@ jobs:
|
|||
|
||||
- job: MacBuild
|
||||
displayName: Mac Build
|
||||
pool:
|
||||
vmImage: 'macOS-10.14'
|
||||
strategy:
|
||||
matrix:
|
||||
Release:
|
||||
B_BUILD_TYPE: Release
|
||||
BARRIER_VERSION_STAGE: Release
|
||||
big-sur-Release:
|
||||
imageName: "macOS-11"
|
||||
B_BUILD_TYPE: Release
|
||||
BARRIER_VERSION_STAGE: Release
|
||||
catalina-Release:
|
||||
imageName: "macOS-10.15"
|
||||
B_BUILD_TYPE: Release
|
||||
BARRIER_VERSION_STAGE: Release
|
||||
mojave-Release:
|
||||
imageName: "macOS-10.14"
|
||||
B_BUILD_TYPE: Release
|
||||
BARRIER_VERSION_STAGE: Release
|
||||
pool:
|
||||
vmImage: $(imageName)
|
||||
variables:
|
||||
VERBOSE: 1
|
||||
TERM: xterm-256color
|
||||
|
@ -99,4 +114,4 @@ jobs:
|
|||
condition: eq(variables['B_BUILD_TYPE'], 'Release')
|
||||
inputs:
|
||||
pathtoPublish: build/bundle
|
||||
artifactName: Mac Release Disk Image and App
|
||||
artifactName: Mac Release Disk Image and App $(imageName)
|
||||
|
|
|
@ -1,8 +1,7 @@
|
|||
$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') ;
|
||||
Invoke-WebRequest 'https://github.com/nelsonjchen/mDNSResponder/releases/download/v2019.05.08.1/x64_RelWithDebInfo.zip' -OutFile 'deps\BonjourSDKLike.zip' ;
|
||||
Write-Output 'Downloaded BonjourSDKLike Zip'
|
||||
Write-Output 'Unzipping BonjourSDKLike Zip'
|
||||
Remove-Item -Recurse -Force -ErrorAction Ignore .\deps\BonjourSDKLike
|
||||
|
|
|
@ -6,8 +6,7 @@ $qt_version = '5.13.0'
|
|||
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') ;
|
||||
Invoke-WebRequest "https://github.com/nelsonjchen/qli-installer/archive/v$qli_install_version.zip" -OutFile '.\deps\qli-installer.zip' ;
|
||||
Write-Output 'Downloaded QLI Installer'
|
||||
|
||||
Write-Output 'Extracting QLI Installer'
|
||||
|
@ -21,6 +20,6 @@ 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/"
|
||||
$Env:QLI_BASE_URL = "https://download.qt.io/online/qtsdkrepository/"
|
||||
python .\deps\qli-installer\qli-installer.py $qt_version windows desktop win64_msvc2017_64
|
||||
Write-Output 'Installed QT Installer'
|
||||
|
|
|
@ -41,8 +41,7 @@ if ERRORLEVEL 1 goto failed
|
|||
cd build
|
||||
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
|
||||
cmake --build . --config %B_BUILD_TYPE%
|
||||
if ERRORLEVEL 1 goto failed
|
||||
if exist bin\Debug (
|
||||
copy %B_QT_FULLPATH%\bin\Qt5Cored.dll bin\Debug\ > NUL
|
||||
|
@ -65,7 +64,7 @@ if exist bin\Debug (
|
|||
mkdir bin\Release\platforms
|
||||
copy %B_QT_FULLPATH%\plugins\platforms\qwindows.dll bin\Release\platforms\ > NUL
|
||||
) else (
|
||||
echo Remember to copy supporting binaries and confiuration files!
|
||||
echo Remember to copy supporting binaries and configuration files!
|
||||
)
|
||||
|
||||
echo Build completed successfully
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
#!/bin/sh
|
||||
cd "$(dirname $0)" || exit 1
|
||||
cd "$(dirname "$0")" || exit 1
|
||||
# some environments have cmake v2 as 'cmake' and v3 as 'cmake3'
|
||||
# check for cmake3 first then fallback to just cmake
|
||||
B_CMAKE=`type cmake3 2>/dev/null`
|
||||
if [ $? -eq 0 ]; then
|
||||
B_CMAKE=`echo $B_CMAKE | cut -d' ' -f3`
|
||||
B_CMAKE=`echo "$B_CMAKE" | cut -d' ' -f3`
|
||||
else
|
||||
B_CMAKE=cmake
|
||||
fi
|
||||
|
@ -26,7 +26,7 @@ B_CMAKE_FLAGS="-DCMAKE_BUILD_TYPE=$B_BUILD_TYPE $B_CMAKE_FLAGS"
|
|||
rm -rf build
|
||||
mkdir build || exit 1
|
||||
cd build || exit 1
|
||||
echo Starting Barrier $B_BUILD_TYPE build...
|
||||
echo "Starting Barrier $B_BUILD_TYPE build..."
|
||||
$B_CMAKE $B_CMAKE_FLAGS .. || exit 1
|
||||
make || exit 1
|
||||
echo "Build completed successfully"
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
cmake_minimum_required (VERSION 3.4)
|
||||
|
||||
set (BARRIER_VERSION_MAJOR 2)
|
||||
set (BARRIER_VERSION_MINOR 3)
|
||||
set (BARRIER_VERSION_PATCH 3)
|
||||
set (BARRIER_VERSION_MINOR 4)
|
||||
set (BARRIER_VERSION_PATCH 0)
|
||||
set (BARRIER_VERSION_STAGE "release")
|
||||
|
||||
#
|
||||
|
@ -85,6 +85,9 @@ message (STATUS "Full Barrier version string is '" ${BARRIER_VERSION_STRING} "'"
|
|||
|
||||
add_definitions (-DBARRIER_VERSION="${BARRIER_VERSION}")
|
||||
add_definitions (-DBARRIER_VERSION_STRING="${BARRIER_VERSION_STRING}")
|
||||
add_definitions (-DBARRIER_VERSION_MAJOR=${BARRIER_VERSION_MAJOR})
|
||||
add_definitions (-DBARRIER_VERSION_MINOR=${BARRIER_VERSION_MINOR})
|
||||
add_definitions (-DBARRIER_VERSION_PATCH=${BARRIER_VERSION_PATCH})
|
||||
add_definitions (-DBARRIER_REVISION="${BARRIER_REVISION}")
|
||||
add_definitions (-DBARRIER_BUILD_DATE="${BARRIER_BUILD_DATE}")
|
||||
add_definitions (-DBARRIER_BUILD_NUMBER=${BARRIER_BUILD_NUMBER})
|
||||
|
|
|
@ -0,0 +1,44 @@
|
|||
# barrier -- mouse and keyboard sharing utility
|
||||
# Copyright (C) 2012-2016 Symless Ltd.
|
||||
# Copyright (C) 2011 Nick Bolton
|
||||
#
|
||||
# This package is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# found in the file LICENSE that should have accompanied this file.
|
||||
#
|
||||
# This package is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
if (BARRIER_USE_EXTERNAL_GTEST)
|
||||
include (FindPkgConfig)
|
||||
find_package(GTest REQUIRED)
|
||||
pkg_check_modules(GMOCK REQUIRED gmock)
|
||||
include_directories(
|
||||
${GTEST_INCLUDE_DIRS}
|
||||
${GMOCK_INCLUDE_DIRS}
|
||||
)
|
||||
else()
|
||||
include_directories(
|
||||
../ext/gtest
|
||||
../ext/gtest/include
|
||||
../ext/gmock
|
||||
../ext/gmock/include
|
||||
)
|
||||
|
||||
add_library(gtest STATIC ../ext/gtest/src/gtest-all.cc)
|
||||
add_library(gmock STATIC ../ext/gmock/src/gmock-all.cc)
|
||||
|
||||
set(GTEST_LIBRARIES gtest)
|
||||
set(GMOCK_LIBRARIES gmock)
|
||||
|
||||
if (UNIX)
|
||||
# ignore warnings in gtest and gmock
|
||||
set_target_properties(gtest PROPERTIES COMPILE_FLAGS "-w")
|
||||
set_target_properties(gmock PROPERTIES COMPILE_FLAGS "-w")
|
||||
endif()
|
||||
endif()
|
|
@ -1,3 +1,155 @@
|
|||
barrier (2.3.3) UNRELEASED; urgency=medium
|
||||
|
||||
[ Aaron Bieber ]
|
||||
* tell build system about openbsd
|
||||
|
||||
[ Tetja Rediske ]
|
||||
* make non-gui variants build without avahi
|
||||
|
||||
[ Erik Nordstrøm ]
|
||||
* Replace hard-coded names of build directory in build_installer.sh script for macOS with looking at the location of the script by the script itself when it is run. This makes it possible to have differently named build dirs for debug and release builds, and without restricting what each of those directories must be named.
|
||||
* Remove shell script that changes directory and then executes barrier on macOS, and execute barrier directly instead.
|
||||
* Add settings in the Info.plist file that enable high-DPI support on macOS.
|
||||
|
||||
[ Daniel Seither ]
|
||||
* Remove unused variables
|
||||
* IpcLogOutputter: Put member initializers in execution order
|
||||
* OSXDragView: Get rid of uninitialized variable warning
|
||||
* Add override specifiers
|
||||
* Let tray image blend into macOS menu bar
|
||||
|
||||
[ Vasily Galkin ]
|
||||
* Man page: fix incorrect name of user conf file in barriers.1
|
||||
|
||||
[ Keegan Quinn ]
|
||||
* Cast values to fix build errors on OS X 10.11.
|
||||
|
||||
[ Maximiliano Bertacchini ]
|
||||
* Update readme with mention of the snap package.
|
||||
|
||||
[ Javier Candeira ]
|
||||
* Fix #503 - Clarify on README how to report issues
|
||||
|
||||
[ Micael Jarniac ]
|
||||
* Build status badges added to a table
|
||||
|
||||
[ Maximiliano Bertacchini ]
|
||||
* Add build-essential to the snap's build deps.
|
||||
* Explicitly disable wayland support in the snap.
|
||||
* Add comment on snap env var
|
||||
|
||||
[ Vasily Galkin ]
|
||||
* Fix infinite loop on fast TCP disconnection
|
||||
|
||||
[ Dom Rodriguez ]
|
||||
* README: Add OpenBSD to list of supported OSes
|
||||
|
||||
[ Åke Engelbrektson ]
|
||||
* Update gui_sv.ts
|
||||
|
||||
[ the-wes ]
|
||||
* Add more detailed description of what Barrier does
|
||||
|
||||
[ James Le Cuirot ]
|
||||
* Use -pthread flag and simplify pthread build logic
|
||||
* Only require Qt5 when building the GUI
|
||||
|
||||
[ Tomáš Chvátal ]
|
||||
* Fix desktop file Categories to match standard
|
||||
|
||||
[ Chris Simons ]
|
||||
* Add script that uses macdeployqt instead of `reref_dylibs.sh` shell script to create the `.app` bundle
|
||||
* Use `build_dist.sh` in CMake instead of `build_installer.sh` Have CMake always build a bundle, the `build_dist.sh` script will only build a dmg if the build type is "Release"
|
||||
* Add warnings for users manually running `build_installer.sh` and `reref_dylibs.sh` manually
|
||||
* Homebrew (Ruby) throws an error when it gets `SIGPIPE` from the `--max-count` on `grep`.
|
||||
* added barrierc and barriers to macdeployqt targets
|
||||
* Change MacOS Build Steps
|
||||
* Fix TIS/TSM in logs
|
||||
* Elevate XSocketAddressInUse to ERROR
|
||||
* Allow selecting Fingerprint Qlabel
|
||||
* replace tabs with spaces
|
||||
* Change log level on several status messages (Fixes #652, Fixes #516)
|
||||
|
||||
[ Ben Plessinger ]
|
||||
* A few more log cleanups
|
||||
|
||||
[ Vasily Galkin ]
|
||||
* Remove unused IEventQueue::isEmpty() method to simplify code understanding
|
||||
|
||||
[ Povilas Kanapickas ]
|
||||
* XWindowsEventQueueBuffer: Fix delays when waiting for new events
|
||||
|
||||
[ Jonathan Martens ]
|
||||
* Fix Auto config missing hostname prompt #704
|
||||
|
||||
[ Vasily Galkin ]
|
||||
* Windows 8+: make waiting for messages correspond to emptiness check
|
||||
|
||||
[ Povilas Kanapickas ]
|
||||
* gui: Use enum class to scope enum values
|
||||
* lib/client: Use std::string directly instead of String typedef
|
||||
* lib/arch: Use std::string directly instead of String typedef
|
||||
* lib/net: Use std::string directly instead of String typedef
|
||||
* lib/server: Use std::string directly instead of String typedef
|
||||
* lib/base: Use std::string directly instead of String typedef
|
||||
* lib/ipc: Use std::string directly instead of String typedef
|
||||
* lib/net: Add missing include
|
||||
* lib/platform: Use std::string directly instead of String typedef
|
||||
* test: Enable building of tests
|
||||
* test: Reduce the number of implicit include directories
|
||||
* test: Remove unresolved merge conflict markers
|
||||
* test: Fix referenced library name
|
||||
* test: Update to new APIs
|
||||
* tests: Fix crash in XWindowsKeyStateTests
|
||||
* test: Fix undefined behavior of deleting incomplete type
|
||||
* tests: Disable test that depends on external state
|
||||
* Use noexcept instead of exception specifications
|
||||
* lib/common: Remove no longer used stdexcept.h
|
||||
|
||||
[ Jonathan Martens ]
|
||||
* Make connection message a NOTE for consistency
|
||||
|
||||
[ zhexiwang ]
|
||||
* Added toggleScreen function, using hot key to loop through all screens. Comparing to switchToScreen, it is more handy since the user only need to hit one hotkey.
|
||||
|
||||
[ GeorgH93 ]
|
||||
* Fix build on Windows
|
||||
* Keep errorlevel
|
||||
|
||||
[ Povilas Kanapickas ]
|
||||
* Revert "Make connection message a NOTE for consistency"
|
||||
|
||||
[ Chris Simons ]
|
||||
* add comments explaining the use of CLOG_PRINT
|
||||
|
||||
[ Dom Rodriguez ]
|
||||
* Remove ext/gtest, ext/gmock to replace with Git submodule
|
||||
* Add gtest/gmock framework, locked at 1.6.0
|
||||
* Fix CI infrastructure (.bat/.sh) to initialise Git submodules before build
|
||||
|
||||
[ Maximiliano Bertacchini ]
|
||||
* Fix snap build failing to initialize submodules.
|
||||
|
||||
[ Niklas Hambüchen ]
|
||||
* ui: Settings: Explain what "double tap" means
|
||||
|
||||
[ Dom Rodriguez ]
|
||||
* Prepare for v2.3.3 release
|
||||
|
||||
[ Maximiliano Bertacchini ]
|
||||
* Shorten snap version on tagged revisions
|
||||
|
||||
[ Tomoya Tanjo ]
|
||||
* Add Eisu_toggle and Muhenkan keys
|
||||
|
||||
[ Michael Zimmermann ]
|
||||
* add support for keyboard backlight media keys
|
||||
|
||||
[ Dom Rodriguez ]
|
||||
* [Build]: Bump Build.properties
|
||||
|
||||
-- root <root@873b8d543aab> Fri, 07 Aug 2020 16:25:54 +0000
|
||||
|
||||
barrier (2.3.2) disco; urgency=medium
|
||||
|
||||
[ walker0643 ]
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
#define MyAppName "Barrier"
|
||||
#define MyAppVersion "@BARRIER_VERSION@"
|
||||
#define MyAppVersion "@BARRIER_VERSION_MAJOR@.@BARRIER_VERSION_MINOR@.@BARRIER_VERSION_PATCH@.@BARRIER_BUILD_NUMBER@"
|
||||
#define MyAppTextVersion "@BARRIER_VERSION@"
|
||||
#define MyAppPublisher "Debauchee Open Source Group"
|
||||
#define MyAppURL "https://github.com/debauchee/barrier/wiki"
|
||||
#define MyAppURL "https://github.com/debauchee/barrier/wiki"
|
||||
#define MyAppCopyright "Copyright (C) 2018 Debauchee Open Source Group"
|
||||
#define MyAppExeName "barrier.exe"
|
||||
#define MyAppServiceName "Barrier"
|
||||
#define MyAppServiceExe "barrierd.exe"
|
||||
|
@ -11,8 +13,8 @@
|
|||
[Setup]
|
||||
AppId={{41036EA6-3F7A-4803-8AE0-469E5E91EFCC}
|
||||
AppName={#MyAppName}
|
||||
AppVersion={#MyAppVersion}
|
||||
AppVerName={#MyAppName} {#MyAppVersion}
|
||||
AppVersion={#MyAppTextVersion}
|
||||
AppVerName={#MyAppName} {#MyAppTextVersion}
|
||||
AppPublisher={#MyAppPublisher}
|
||||
AppPublisherURL={#MyAppURL}
|
||||
AppSupportURL={#MyAppURL}
|
||||
|
@ -21,11 +23,18 @@ DefaultDirName={pf}\{#MyAppName}
|
|||
DisableProgramGroupPage=yes
|
||||
LicenseFile=@CMAKE_CURRENT_SOURCE_DIR@/res/License.rtf
|
||||
OutputDir=@CMAKE_RUNTIME_OUTPUT_DIRECTORY@/../installer-inno/bin
|
||||
OutputBaseFilename=BarrierSetup-{#MyAppVersion}
|
||||
OutputBaseFilename=BarrierSetup-{#MyAppTextVersion}
|
||||
SetupIconFile=@CMAKE_CURRENT_SOURCE_DIR@/res/barrier.ico
|
||||
VersionInfoProductTextVersion={#MyAppTextVersion}
|
||||
VersionInfoProductVersion={#MyAppVersion}
|
||||
VersionInfoTextVersion={#MyAppTextVersion}
|
||||
VersionInfoVersion={#MyAppVersion}
|
||||
VersionInfoCopyright={#MyAppCopyright}
|
||||
|
||||
Compression=lzma
|
||||
SolidCompression=yes
|
||||
ArchitecturesInstallIn64BitMode=x64 ia64
|
||||
UninstallDisplayIcon={app}\{#MyAppExeName}
|
||||
|
||||
#include "scripts\lang\english.iss"
|
||||
|
||||
|
@ -45,16 +54,17 @@ Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks:
|
|||
; to avoid duplicate entries remove the existing rule (fails if it doesn't exist) before adding
|
||||
Filename: {sys}\netsh.exe; Parameters: "advfirewall firewall delete rule name=""{#MyAppListenerDesc}"""; Flags: runhidden
|
||||
Filename: {sys}\netsh.exe; Parameters: "advfirewall firewall add rule name=""{#MyAppListenerDesc}"" protocol=TCP dir=in localport=24800 action=allow"; Flags: runhidden
|
||||
Filename: {sys}\sc.exe; Parameters: "create {#MyAppServiceName} start= auto binPath= ""{app}\{#MyAppServiceExe}"""; Flags: runhidden
|
||||
Filename: {sys}\sc.exe; Parameters: "create {#MyAppServiceName} start= auto binPath= ""\""{app}\{#MyAppServiceExe}\"""""; Flags: runhidden
|
||||
Filename: {sys}\sc.exe; Parameters: "description {#MyAppServiceName} ""{#MyAppServiceDesc}"""; Flags: runhidden
|
||||
Filename: {sys}\sc.exe; Parameters: "start {#MyAppServiceName}"; Flags: runhidden
|
||||
Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent
|
||||
|
||||
[UninstallDelete]
|
||||
Type: files; Name: "{app}\barrierd.log"
|
||||
Type: filesandordirs; Name: "{commonappdata}\Barrier"
|
||||
|
||||
[UninstallRun]
|
||||
Filename: {sys}\sc.exe; Parameters: "stop {#MyAppServiceName}"; Flags: runhidden
|
||||
Filename: {sys}\taskkill; Parameters: "/im {#MyAppExeName} /f /t"; Flags: runhidden
|
||||
Filename: {sys}\net.exe; Parameters: "stop {#MyAppServiceName}"; Flags: runhidden
|
||||
Filename: {sys}\sc.exe; Parameters: "delete {#MyAppServiceName}"; Flags: runhidden
|
||||
Filename: {sys}\netsh.exe; Parameters: "advfirewall firewall delete rule name=""{#MyAppListenerDesc}"""; Flags: runhidden
|
||||
|
||||
|
|
|
@ -0,0 +1,18 @@
|
|||
[Languages]
|
||||
Name: "it"; MessagesFile: "compiler:Default.isl"
|
||||
|
||||
[CustomMessages]
|
||||
;http://www.microsoft.com/globaldev/reference/lcid-all.mspx
|
||||
en.lcid=1033
|
||||
en.depdownload_msg=Le seguenti applicazioni sono necessarie per poter continuare l'installazione:%n%n%1%nScaricare ed installa ora?
|
||||
en.depdownload_memo_title=Scarica dipendenze
|
||||
en.depinstall_memo_title=Installa dipendenze
|
||||
en.depinstall_title=Installazione dipendenze
|
||||
en.depinstall_description=Attendere che l'installazione installi le dipendenze sul computer.
|
||||
en.depinstall_status=Installazione %1...
|
||||
en.depinstall_missing=%1 deve essere installato prima che l'installazione possa continuare. Installa %1 ed esegui nuovamente il programma di installazione.
|
||||
en.depinstall_error=Si è verificato un errore durante l'installazione delle dipendenze. Riavviare il computer ed eseguire nuovamente l'installazione o installare manualmente le seguenti dipendenze: %n
|
||||
|
||||
it.isxdl_langfile=
|
||||
|
||||
[Files]
|
|
@ -31,6 +31,6 @@
|
|||
<key>NSHumanReadableCopyright</key>
|
||||
<string>© 2018 Debauchee Open Source Group</string>
|
||||
<key>LSMinimumSystemVersion</key>
|
||||
<string>10.9.0</string>
|
||||
<string>10.12.0</string>
|
||||
</dict>
|
||||
</plist>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#!/bin/sh
|
||||
|
||||
# Use the same verbose variable as CMake
|
||||
[ "$VERBOSE" == "1" ] && set -x
|
||||
[ "$VERBOSE" = "1" ] && set -x
|
||||
|
||||
# Exit on unset variables or pipe errors
|
||||
set -uo pipefail
|
||||
|
@ -14,10 +14,10 @@ B_BARRIERC="Barrier.app/Contents/MacOS/barrierc"
|
|||
B_BARRIERS="Barrier.app/Contents/MacOS/barriers"
|
||||
|
||||
# Colorized output
|
||||
function info() { tput bold; echo "$@" ; tput sgr0 ;}
|
||||
function error() { tput bold; tput setaf 1; echo "$@"; tput sgr0 ; }
|
||||
function success() { tput bold; tput setaf 2; echo "$@"; tput sgr0 ; }
|
||||
function warn() { tput bold; tput setaf 3; echo "$@"; tput sgr0 ; }
|
||||
info() { tput bold; echo "$@"; tput sgr0 ; }
|
||||
error() { tput bold; tput setaf 1; echo "$@"; tput sgr0 ; }
|
||||
success() { tput bold; tput setaf 2; echo "$@"; tput sgr0 ; }
|
||||
warn() { tput bold; tput setaf 3; echo "$@"; tput sgr0 ; }
|
||||
|
||||
info "Checking for bundle contents"
|
||||
if [ ! -d "Barrier.app/Contents" ]; then
|
||||
|
@ -40,7 +40,7 @@ if which -s port ; then
|
|||
info "MacPorts found, searching for macdeployqt"
|
||||
DEPLOYQT="$(port contents qt5-qttools | grep --only --max-count 1 '/.*macdeployqt')"
|
||||
if [ ! -x "$DEPLOYQT" ]; then
|
||||
error Please install package qt5-qttools
|
||||
error "Please install package qt5-qttools"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
@ -48,15 +48,15 @@ fi
|
|||
# Check for macdeployqt on Homebrew
|
||||
if which -s brew ; then
|
||||
info "Homebrew found, searching for macdeployqt"
|
||||
DEPLOYQT="$(brew list qt | grep --only '/.*macdeployqt' | head -1)"
|
||||
DEPLOYQT="$(brew list qt@5 | grep --only '/.*macdeployqt' | head -1)"
|
||||
if [ ! -x "$DEPLOYQT" ]; then
|
||||
error Please install package qt
|
||||
error "Please install package qt"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
# Use macdeployqt to include libraries and create dmg
|
||||
if [ "$B_BUILDTYPE" == "Release" ]; then
|
||||
if [ "$B_BUILDTYPE" = "Release" ]; then
|
||||
info "Building Release disk image (dmg)"
|
||||
"$DEPLOYQT" Barrier.app -dmg \
|
||||
-executable="$B_BARRIERC" \
|
||||
|
@ -70,4 +70,4 @@ else
|
|||
-executable="$B_BARRIERC" \
|
||||
-executable="$B_BARRIERS" || exit 1
|
||||
success "Bundle created successfully"
|
||||
fi
|
||||
fi
|
||||
|
|
|
@ -1,30 +1,30 @@
|
|||
#!/bin/sh
|
||||
|
||||
# add warning for users running manually
|
||||
function warn() { tput bold; tput setaf 3; echo "$@"; tput sgr0 ; }
|
||||
warn() { tput bold; tput setaf 3; echo "$@"; tput sgr0 ; }
|
||||
warn "The scripts build_installer.sh and reref_dylibs.sh have been deprecated."
|
||||
warn "Please use build_dist.sh instead to deploy using macdeployqt"
|
||||
|
||||
# change this to rename the installer package
|
||||
B_DMG="Barrier-@BARRIER_VERSION@.dmg"
|
||||
|
||||
cd "$( dirname '$0' )"
|
||||
cd "$( dirname "$0" )"
|
||||
OWNDIR="$( pwd )"
|
||||
|
||||
B_REREF_SCRIPT="$OWNDIR/reref_dylibs.sh"
|
||||
if [ ! -x $B_REREF_SCRIPT ]; then
|
||||
echo Missing script: $B_REREF_SCRIPT
|
||||
if [ ! -x "$B_REREF_SCRIPT" ]; then
|
||||
echo "Missing script: $B_REREF_SCRIPT"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# remove any old copies so there's no confusion about whether this
|
||||
# process completes successfully or not
|
||||
rm -rf temp.dmg $B_DMG
|
||||
rm -rf temp.dmg "$B_DMG"
|
||||
|
||||
cd Barrier.app/Contents 2>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
echo Please make sure that the build completed successfully
|
||||
echo before trying to create the installer.
|
||||
echo "Please make sure that the build completed successfully"
|
||||
echo "before trying to create the installer."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
@ -77,7 +77,7 @@ hdiutil create -size 64m -fs HFS+ -volname "Barrier" temp.dmg || exit 1
|
|||
hdiutil attach temp.dmg -mountpoint mnt || exit 1
|
||||
cp -r Barrier.app mnt/ || exit 1
|
||||
hdiutil detach mnt || exit 1
|
||||
hdiutil convert temp.dmg -format UDZO -o $B_DMG || exit 1
|
||||
hdiutil convert temp.dmg -format UDZO -o "$B_DMG" || exit 1
|
||||
rm temp.dmg
|
||||
|
||||
echo "dmg $B_DMB created successfully"
|
||||
echo "dmg $B_DMG created successfully"
|
||||
|
|
|
@ -5,28 +5,28 @@ B_TARGET=$1
|
|||
if [ "x$B_TARGET" = "x" ]; then
|
||||
|
||||
# add warning for users running manually
|
||||
function warn() { tput bold; tput setaf 3; echo "$@"; tput sgr0 ; }
|
||||
warn() { tput bold; tput setaf 3; echo "$@"; tput sgr0 ; }
|
||||
warn "The scripts build_installer.sh and reref_dylibs.sh have been deprecated."
|
||||
warn "Please use build_dist.sh instead to deploy using macdeployqt"
|
||||
|
||||
echo Which binary needs to be re-referenced?
|
||||
echo "Which binary needs to be re-referenced?"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cd $(dirname $B_TARGET) || exit 1
|
||||
cd "$(dirname "$B_TARGET")" || exit 1
|
||||
|
||||
# where to find non-system libraries relative to target's directory.
|
||||
# the vast majority of the time this should be empty
|
||||
B_REL_PATH=$2
|
||||
|
||||
# we're in target's directory now. trim off the path
|
||||
B_TARGET=$(basename $B_TARGET)
|
||||
B_TARGET=$(basename "$B_TARGET")
|
||||
|
||||
# get a list of non-system libraries and make local copies
|
||||
B_LIBS=$(otool -XL $B_TARGET | awk '{ print $1 }' | grep -Ev '^(/usr/lib|/System)')
|
||||
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)
|
||||
B_LIB_NAME=$(basename "$B_LIB")
|
||||
# otool reports barrier as "barrier:" which fails self-reference test below
|
||||
B_LIB_NAME=${B_LIB_NAME//:}
|
||||
|
||||
|
@ -34,16 +34,16 @@ for B_LIB in $B_LIBS; do
|
|||
[ "$B_TARGET" = "$B_LIB_NAME" ] && continue
|
||||
|
||||
B_DST=${B_REL_PATH}${B_LIB_NAME}
|
||||
if [ ! -e $B_DST ]; then
|
||||
cp $B_LIB $B_DST || exit 1
|
||||
chmod u+rw $B_DST || exit 1
|
||||
if [ ! -e "$B_DST" ]; then
|
||||
cp "$B_LIB" "$B_DST" || exit 1
|
||||
chmod u+rw "$B_DST" || exit 1
|
||||
# recursively call this script on libraries purposefully not passing
|
||||
# $B_REL_PATH so that it is only used explicitly
|
||||
$0 $B_DST
|
||||
$0 "$B_DST"
|
||||
fi
|
||||
|
||||
# adjust the target's metadata to point to the local copy
|
||||
# rather than the system-wide copy which would only exist on
|
||||
# a development machine
|
||||
install_name_tool -change $B_LIB @loader_path/$B_DST $B_TARGET || exit 1
|
||||
install_name_tool -change "$B_LIB" "@loader_path/$B_DST" "$B_TARGET" || exit 1
|
||||
done
|
||||
|
|
|
@ -1,234 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE QtCreatorCodeStyle>
|
||||
<!-- Written by QtCreator 3.0.1, 2014-02-14T09:50:24. -->
|
||||
<qtcreator>
|
||||
<data>
|
||||
<variable>CodeStyleData</variable>
|
||||
<valuemap type="QVariantMap">
|
||||
<value type="bool" key="AlignAssignments">false</value>
|
||||
<value type="bool" key="AutoSpacesForTabs">false</value>
|
||||
<value type="bool" key="BindStarToIdentifier">true</value>
|
||||
<value type="bool" key="BindStarToLeftSpecifier">false</value>
|
||||
<value type="bool" key="BindStarToRightSpecifier">false</value>
|
||||
<value type="bool" key="BindStarToTypeName">false</value>
|
||||
<value type="bool" key="ExtraPaddingForConditionsIfConfusingAlign">true</value>
|
||||
<value type="bool" key="IndentAccessSpecifiers">false</value>
|
||||
<value type="bool" key="IndentBlockBody">true</value>
|
||||
<value type="bool" key="IndentBlockBraces">false</value>
|
||||
<value type="bool" key="IndentBlocksRelativeToSwitchLabels">false</value>
|
||||
<value type="bool" key="IndentClassBraces">false</value>
|
||||
<value type="bool" key="IndentControlFlowRelativeToSwitchLabels">true</value>
|
||||
<value type="bool" key="IndentDeclarationsRelativeToAccessSpecifiers">true</value>
|
||||
<value type="bool" key="IndentEnumBraces">false</value>
|
||||
<value type="bool" key="IndentFunctionBody">true</value>
|
||||
<value type="bool" key="IndentFunctionBraces">false</value>
|
||||
<value type="bool" key="IndentNamespaceBody">false</value>
|
||||
<value type="bool" key="IndentNamespaceBraces">false</value>
|
||||
<value type="int" key="IndentSize">4</value>
|
||||
<value type="bool" key="IndentStatementsRelativeToSwitchLabels">true</value>
|
||||
<value type="bool" key="IndentSwitchLabels">false</value>
|
||||
<value type="int" key="PaddingMode">2</value>
|
||||
<value type="bool" key="SpacesForTabs">false</value>
|
||||
<value type="int" key="TabSize">4</value>
|
||||
</valuemap>
|
||||
</data>
|
||||
<data>
|
||||
<variable>DisplayName</variable>
|
||||
<value type="QString">Barrier</value>
|
||||
</data>
|
||||
</qtcreator>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE QtCreatorCodeStyle>
|
||||
<!-- Written by QtCreator 3.0.1, 2014-02-14T09:50:24. -->
|
||||
<qtcreator>
|
||||
<data>
|
||||
<variable>CodeStyleData</variable>
|
||||
<valuemap type="QVariantMap">
|
||||
<value type="bool" key="AlignAssignments">false</value>
|
||||
<value type="bool" key="AutoSpacesForTabs">false</value>
|
||||
<value type="bool" key="BindStarToIdentifier">true</value>
|
||||
<value type="bool" key="BindStarToLeftSpecifier">false</value>
|
||||
<value type="bool" key="BindStarToRightSpecifier">false</value>
|
||||
<value type="bool" key="BindStarToTypeName">false</value>
|
||||
<value type="bool" key="ExtraPaddingForConditionsIfConfusingAlign">true</value>
|
||||
<value type="bool" key="IndentAccessSpecifiers">false</value>
|
||||
<value type="bool" key="IndentBlockBody">true</value>
|
||||
<value type="bool" key="IndentBlockBraces">false</value>
|
||||
<value type="bool" key="IndentBlocksRelativeToSwitchLabels">false</value>
|
||||
<value type="bool" key="IndentClassBraces">false</value>
|
||||
<value type="bool" key="IndentControlFlowRelativeToSwitchLabels">true</value>
|
||||
<value type="bool" key="IndentDeclarationsRelativeToAccessSpecifiers">true</value>
|
||||
<value type="bool" key="IndentEnumBraces">false</value>
|
||||
<value type="bool" key="IndentFunctionBody">true</value>
|
||||
<value type="bool" key="IndentFunctionBraces">false</value>
|
||||
<value type="bool" key="IndentNamespaceBody">false</value>
|
||||
<value type="bool" key="IndentNamespaceBraces">false</value>
|
||||
<value type="int" key="IndentSize">4</value>
|
||||
<value type="bool" key="IndentStatementsRelativeToSwitchLabels">true</value>
|
||||
<value type="bool" key="IndentSwitchLabels">false</value>
|
||||
<value type="int" key="PaddingMode">2</value>
|
||||
<value type="bool" key="SpacesForTabs">false</value>
|
||||
<value type="int" key="TabSize">4</value>
|
||||
</valuemap>
|
||||
</data>
|
||||
<data>
|
||||
<variable>DisplayName</variable>
|
||||
<value type="QString">Barrier</value>
|
||||
</data>
|
||||
</qtcreator>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE QtCreatorCodeStyle>
|
||||
<!-- Written by QtCreator 3.0.1, 2014-02-14T09:50:24. -->
|
||||
<qtcreator>
|
||||
<data>
|
||||
<variable>CodeStyleData</variable>
|
||||
<valuemap type="QVariantMap">
|
||||
<value type="bool" key="AlignAssignments">false</value>
|
||||
<value type="bool" key="AutoSpacesForTabs">false</value>
|
||||
<value type="bool" key="BindStarToIdentifier">true</value>
|
||||
<value type="bool" key="BindStarToLeftSpecifier">false</value>
|
||||
<value type="bool" key="BindStarToRightSpecifier">false</value>
|
||||
<value type="bool" key="BindStarToTypeName">false</value>
|
||||
<value type="bool" key="ExtraPaddingForConditionsIfConfusingAlign">true</value>
|
||||
<value type="bool" key="IndentAccessSpecifiers">false</value>
|
||||
<value type="bool" key="IndentBlockBody">true</value>
|
||||
<value type="bool" key="IndentBlockBraces">false</value>
|
||||
<value type="bool" key="IndentBlocksRelativeToSwitchLabels">false</value>
|
||||
<value type="bool" key="IndentClassBraces">false</value>
|
||||
<value type="bool" key="IndentControlFlowRelativeToSwitchLabels">true</value>
|
||||
<value type="bool" key="IndentDeclarationsRelativeToAccessSpecifiers">true</value>
|
||||
<value type="bool" key="IndentEnumBraces">false</value>
|
||||
<value type="bool" key="IndentFunctionBody">true</value>
|
||||
<value type="bool" key="IndentFunctionBraces">false</value>
|
||||
<value type="bool" key="IndentNamespaceBody">false</value>
|
||||
<value type="bool" key="IndentNamespaceBraces">false</value>
|
||||
<value type="int" key="IndentSize">4</value>
|
||||
<value type="bool" key="IndentStatementsRelativeToSwitchLabels">true</value>
|
||||
<value type="bool" key="IndentSwitchLabels">false</value>
|
||||
<value type="int" key="PaddingMode">2</value>
|
||||
<value type="bool" key="SpacesForTabs">false</value>
|
||||
<value type="int" key="TabSize">4</value>
|
||||
</valuemap>
|
||||
</data>
|
||||
<data>
|
||||
<variable>DisplayName</variable>
|
||||
<value type="QString">Barrier</value>
|
||||
</data>
|
||||
</qtcreator>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE QtCreatorCodeStyle>
|
||||
<!-- Written by QtCreator 3.0.1, 2014-02-14T09:50:24. -->
|
||||
<qtcreator>
|
||||
<data>
|
||||
<variable>CodeStyleData</variable>
|
||||
<valuemap type="QVariantMap">
|
||||
<value type="bool" key="AlignAssignments">false</value>
|
||||
<value type="bool" key="AutoSpacesForTabs">false</value>
|
||||
<value type="bool" key="BindStarToIdentifier">true</value>
|
||||
<value type="bool" key="BindStarToLeftSpecifier">false</value>
|
||||
<value type="bool" key="BindStarToRightSpecifier">false</value>
|
||||
<value type="bool" key="BindStarToTypeName">false</value>
|
||||
<value type="bool" key="ExtraPaddingForConditionsIfConfusingAlign">true</value>
|
||||
<value type="bool" key="IndentAccessSpecifiers">false</value>
|
||||
<value type="bool" key="IndentBlockBody">true</value>
|
||||
<value type="bool" key="IndentBlockBraces">false</value>
|
||||
<value type="bool" key="IndentBlocksRelativeToSwitchLabels">false</value>
|
||||
<value type="bool" key="IndentClassBraces">false</value>
|
||||
<value type="bool" key="IndentControlFlowRelativeToSwitchLabels">true</value>
|
||||
<value type="bool" key="IndentDeclarationsRelativeToAccessSpecifiers">true</value>
|
||||
<value type="bool" key="IndentEnumBraces">false</value>
|
||||
<value type="bool" key="IndentFunctionBody">true</value>
|
||||
<value type="bool" key="IndentFunctionBraces">false</value>
|
||||
<value type="bool" key="IndentNamespaceBody">false</value>
|
||||
<value type="bool" key="IndentNamespaceBraces">false</value>
|
||||
<value type="int" key="IndentSize">4</value>
|
||||
<value type="bool" key="IndentStatementsRelativeToSwitchLabels">true</value>
|
||||
<value type="bool" key="IndentSwitchLabels">false</value>
|
||||
<value type="int" key="PaddingMode">2</value>
|
||||
<value type="bool" key="SpacesForTabs">false</value>
|
||||
<value type="int" key="TabSize">4</value>
|
||||
</valuemap>
|
||||
</data>
|
||||
<data>
|
||||
<variable>DisplayName</variable>
|
||||
<value type="QString">Barrier</value>
|
||||
</data>
|
||||
</qtcreator>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE QtCreatorCodeStyle>
|
||||
<!-- Written by QtCreator 3.0.1, 2014-02-14T09:50:24. -->
|
||||
<qtcreator>
|
||||
<data>
|
||||
<variable>CodeStyleData</variable>
|
||||
<valuemap type="QVariantMap">
|
||||
<value type="bool" key="AlignAssignments">false</value>
|
||||
<value type="bool" key="AutoSpacesForTabs">false</value>
|
||||
<value type="bool" key="BindStarToIdentifier">true</value>
|
||||
<value type="bool" key="BindStarToLeftSpecifier">false</value>
|
||||
<value type="bool" key="BindStarToRightSpecifier">false</value>
|
||||
<value type="bool" key="BindStarToTypeName">false</value>
|
||||
<value type="bool" key="ExtraPaddingForConditionsIfConfusingAlign">true</value>
|
||||
<value type="bool" key="IndentAccessSpecifiers">false</value>
|
||||
<value type="bool" key="IndentBlockBody">true</value>
|
||||
<value type="bool" key="IndentBlockBraces">false</value>
|
||||
<value type="bool" key="IndentBlocksRelativeToSwitchLabels">false</value>
|
||||
<value type="bool" key="IndentClassBraces">false</value>
|
||||
<value type="bool" key="IndentControlFlowRelativeToSwitchLabels">true</value>
|
||||
<value type="bool" key="IndentDeclarationsRelativeToAccessSpecifiers">true</value>
|
||||
<value type="bool" key="IndentEnumBraces">false</value>
|
||||
<value type="bool" key="IndentFunctionBody">true</value>
|
||||
<value type="bool" key="IndentFunctionBraces">false</value>
|
||||
<value type="bool" key="IndentNamespaceBody">false</value>
|
||||
<value type="bool" key="IndentNamespaceBraces">false</value>
|
||||
<value type="int" key="IndentSize">4</value>
|
||||
<value type="bool" key="IndentStatementsRelativeToSwitchLabels">true</value>
|
||||
<value type="bool" key="IndentSwitchLabels">false</value>
|
||||
<value type="int" key="PaddingMode">2</value>
|
||||
<value type="bool" key="SpacesForTabs">false</value>
|
||||
<value type="int" key="TabSize">4</value>
|
||||
</valuemap>
|
||||
</data>
|
||||
<data>
|
||||
<variable>DisplayName</variable>
|
||||
<value type="QString">Barrier</value>
|
||||
</data>
|
||||
</qtcreator>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE QtCreatorCodeStyle>
|
||||
<!-- Written by QtCreator 3.0.1, 2014-02-14T09:50:24. -->
|
||||
<qtcreator>
|
||||
<data>
|
||||
<variable>CodeStyleData</variable>
|
||||
<valuemap type="QVariantMap">
|
||||
<value type="bool" key="AlignAssignments">false</value>
|
||||
<value type="bool" key="AutoSpacesForTabs">false</value>
|
||||
<value type="bool" key="BindStarToIdentifier">true</value>
|
||||
<value type="bool" key="BindStarToLeftSpecifier">false</value>
|
||||
<value type="bool" key="BindStarToRightSpecifier">false</value>
|
||||
<value type="bool" key="BindStarToTypeName">false</value>
|
||||
<value type="bool" key="ExtraPaddingForConditionsIfConfusingAlign">true</value>
|
||||
<value type="bool" key="IndentAccessSpecifiers">false</value>
|
||||
<value type="bool" key="IndentBlockBody">true</value>
|
||||
<value type="bool" key="IndentBlockBraces">false</value>
|
||||
<value type="bool" key="IndentBlocksRelativeToSwitchLabels">false</value>
|
||||
<value type="bool" key="IndentClassBraces">false</value>
|
||||
<value type="bool" key="IndentControlFlowRelativeToSwitchLabels">true</value>
|
||||
<value type="bool" key="IndentDeclarationsRelativeToAccessSpecifiers">true</value>
|
||||
<value type="bool" key="IndentEnumBraces">false</value>
|
||||
<value type="bool" key="IndentFunctionBody">true</value>
|
||||
<value type="bool" key="IndentFunctionBraces">false</value>
|
||||
<value type="bool" key="IndentNamespaceBody">false</value>
|
||||
<value type="bool" key="IndentNamespaceBraces">false</value>
|
||||
<value type="int" key="IndentSize">4</value>
|
||||
<value type="bool" key="IndentStatementsRelativeToSwitchLabels">true</value>
|
||||
<value type="bool" key="IndentSwitchLabels">false</value>
|
||||
<value type="int" key="PaddingMode">2</value>
|
||||
<value type="bool" key="SpacesForTabs">false</value>
|
||||
<value type="int" key="TabSize">4</value>
|
||||
</valuemap>
|
||||
</data>
|
||||
<data>
|
||||
<variable>DisplayName</variable>
|
||||
<value type="QString">Barrier</value>
|
||||
</data>
|
||||
</qtcreator>
|
|
@ -47,9 +47,9 @@ section: links
|
|||
end
|
||||
|
||||
# The aliases section is to map the full names of the computers to their logical names used in the screens section
|
||||
# One way to find the actual name of a comptuer is to run hostname from a command window
|
||||
# One way to find the actual name of a computer is to run hostname from a command window
|
||||
section: aliases
|
||||
# Laptop is actually known as John-Smiths-MacBook-3.local
|
||||
desktop2:
|
||||
John-Smiths-MacBook-3.local
|
||||
John-Smiths-MacBook-3.local:
|
||||
desktop2
|
||||
end
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
# barebones barrier.conf example
|
||||
# for two computers side by side
|
||||
# replace screen.name.server and screen.name.client with your screen names from gui
|
||||
# there's a 50/50 chance you'll want to swap left and right
|
||||
# save this as barrier.conf in your home folder and "Use existing configuration" on server
|
||||
|
||||
section: screens
|
||||
screen.name.server:
|
||||
screen.name.client:
|
||||
end
|
||||
|
||||
section: links
|
||||
screen.name.server:
|
||||
left = screen.name.client
|
||||
screen.name.client:
|
||||
right = screen.name.server
|
||||
end
|
|
@ -34,6 +34,6 @@ end
|
|||
|
||||
section: aliases
|
||||
# The "real" name of iMac is John-Smiths-iMac-3.local. If we wanted we could remove this alias and instead use John-Smiths-iMac-3.local everywhere iMac is above. Hopefully it should be easy to see why using an alias is nicer
|
||||
iMac:
|
||||
John-Smiths-iMac-3.local
|
||||
John-Smiths-iMac-3.local:
|
||||
iMac
|
||||
end
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\" See UpdateManpages.txt about modification of this file. Most of it was generated by help2man 1.47.8.
|
||||
.TH BARRIERC "1" "November 2019" "barrierc 2.3.3-release" "User Commands"
|
||||
.TH BARRIERC "1" "November 2019" "barrierc 2.4.0-release" "User Commands"
|
||||
.SH NAME
|
||||
barrierc \- Barrier Keyboard/Mouse Client
|
||||
.SH SYNOPSIS
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.\" See UpdateManpages.txt about modification of this file. Most of it was generated by help2man 1.47.8.
|
||||
.TH BARRIERS "1" "November 2019" "barriers 2.3.3-release" "User Commands"
|
||||
.TH BARRIERS "1" "November 2019" "barriers 2.4.0-release" "User Commands"
|
||||
.SH NAME
|
||||
barriers \- Barrier Keyboard/Mouse Server
|
||||
.SH SYNOPSIS
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
Corrected macOS packaging to provide a better error message when a user attempts to launch Barrier on an incompatible macOS version. (https://github.com/debauchee/barrier/issues/1260).
|
|
@ -0,0 +1 @@
|
|||
Updated FAQs in project README.md with more detail on OS support and links to issues for infrequent users. (https://github.com/debauchee/barrier/issues/1260).
|
|
@ -0,0 +1,13 @@
|
|||
This is the directory for release note fragments processed by
|
||||
[towncrier](https://github.com/hawkowl/towncrier).
|
||||
|
||||
When making a user-visible change create a file in this directory and it will be automatically be
|
||||
included into the release note document when the next release is published.
|
||||
|
||||
The file extension specifies the type of a change. The following are currently supported:
|
||||
|
||||
- .feature: a new feature.
|
||||
- .bugfix: a bug fix.
|
||||
- .security: a fix for security issue.
|
||||
- .doc: a documentation improvement.
|
||||
- .removal: a deprecation or removal of functionality.
|
|
@ -0,0 +1,2 @@
|
|||
Fix wrong encoding for text copied between Linux and Windows
|
||||
(https://github.com/debauchee/barrier/issues/1037, https://github.com/debauchee/barrier/issues/1137).
|
|
@ -0,0 +1 @@
|
|||
Fixed build on GCC 11.2 (https://github.com/debauchee/barrier/issues/1366).
|
|
@ -0,0 +1,2 @@
|
|||
Updated Japanese translation.
|
||||
Add and translate strings that are not in gui.ts. Minor string adjustment, Fix wrong or duplicate shortcut keys.
|
|
@ -0,0 +1 @@
|
|||
Fixed FAQ link to Linux drag and drop issue.
|
|
@ -0,0 +1 @@
|
|||
Fixed a regression in 2.4.0 that caused Barrier to not support scaling other than 100% (https://github.com/debauchee/barrier/issues/1462).
|
|
@ -4,17 +4,17 @@
|
|||
<plist version="1.0">
|
||||
<!-- Mac OSX only: Copy this plist file into [~]/Library/LaunchAgents to start barrier client automatically. Make sure you change the IP below. -->
|
||||
<dict>
|
||||
<key>Label</key>
|
||||
<string>org.debauchee.com.barrierc.plist</string>
|
||||
<key>OnDemand</key>
|
||||
<false/>
|
||||
<key>ProgramArguments</key>
|
||||
<array>
|
||||
<key>Label</key>
|
||||
<string>org.debauchee.com.barrierc.plist</string>
|
||||
<key>OnDemand</key>
|
||||
<false/>
|
||||
<key>ProgramArguments</key>
|
||||
<array>
|
||||
<string>/usr/bin/barrierc</string>
|
||||
<!-- Replace this IP with the IP of your barriers server -->
|
||||
<string>192.168.0.2</string>
|
||||
</array>
|
||||
<key>RunAtLoad</key>
|
||||
<true/>
|
||||
</array>
|
||||
<key>RunAtLoad</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
|
|
|
@ -4,12 +4,12 @@
|
|||
<plist version="1.0">
|
||||
<!-- Mac OSX only: Copy this plist file into [~]/Library/LaunchAgents to start barrier server automatically. Make sure you change configuration file below -->
|
||||
<dict>
|
||||
<key>Label</key>
|
||||
<string>org.debauchee.com.barriers.plist</string>
|
||||
<key>OnDemand</key>
|
||||
<false/>
|
||||
<key>ProgramArguments</key>
|
||||
<array>
|
||||
<key>Label</key>
|
||||
<string>org.debauchee.com.barriers.plist</string>
|
||||
<key>OnDemand</key>
|
||||
<false/>
|
||||
<key>ProgramArguments</key>
|
||||
<array>
|
||||
<string>/usr/bin/barriers</string>
|
||||
<string>--no-daemon</string>
|
||||
<string>--config</string>
|
||||
|
|
|
@ -0,0 +1,98 @@
|
|||
Release notes
|
||||
=============
|
||||
|
||||
[comment]: <> (towncrier release notes start)
|
||||
|
||||
Barrier `2.4.0` ( `2021-11-01` )
|
||||
================================
|
||||
|
||||
Security fixes
|
||||
--------------
|
||||
|
||||
- Barrier now supports client identity verification (fixes CVE-2021-42072, CVE-2021-42073).
|
||||
|
||||
Previously a malicious client could connect to Barrier server without any authentication and
|
||||
send application-level messages. This made the attack surface of Barrier significantly larger.
|
||||
Additionally, in case the malicious client got possession of a valid screen name by brute forcing
|
||||
or other means it could modify the clipboard contents of the server.
|
||||
|
||||
To support seamless upgrades from older versions of Barrier this is currently disabled by default.
|
||||
The feature can be enabled in the settings dialog. If enabled, older clients of Barrier will be
|
||||
rejected.
|
||||
|
||||
- Barrier now uses SHA256 fingerprints for establishing security of encrypted SSL connections.
|
||||
After upgrading client to new version the existing server fingerprint will need to be approved
|
||||
again. Client and server will show both SHA1 and SHA256 server fingerprints to allow
|
||||
interoperability with older versions of Barrier.
|
||||
|
||||
All of the above security issues have been reported by Matthias Gerstner who was really helpful
|
||||
resolving them.
|
||||
|
||||
Bug fixes
|
||||
---------
|
||||
|
||||
- Fixed build failure on mips*el and riscv64 architecture.
|
||||
- Fixed reading of configuration on Windows when the paths contain non-ASCII characters
|
||||
(https://github.com/debauchee/barrier/issues/976, https://github.com/debauchee/barrier/issues/974,
|
||||
https://github.com/debauchee/barrier/issues/444).
|
||||
- Barrier no longer uses openssl CLI tool for any operations and hooks into the openssl library directly.
|
||||
- More X11 clipboard MIME types have been mapped to corresponding converters (https://github.com/debauchee/barrier/issues/344).
|
||||
- Fixed setup of multiple actions associated with a hotkey.
|
||||
- Fixed setup of hotkeys with special characters such as comma and semicolon
|
||||
(https://github.com/debauchee/barrier/issues/778).
|
||||
- Fixed transfer of non-ASCII characters coming from a Windows server in certain cases
|
||||
(https://github.com/debauchee/barrier/issues/527).
|
||||
- Barrier will now regenerate server certificate if it's invalid instead of failing to launch
|
||||
(https://github.com/debauchee/barrier/issues/802)
|
||||
- Added support for additional keys on Sun Microsystems USB keyboards
|
||||
(https://github.com/debauchee/barrier/issues/784).
|
||||
- Updated Chinese translation.
|
||||
- Updated Slovak translation.
|
||||
- Theme icons are now preferred to icons distributed together with Barrier
|
||||
(https://github.com/debauchee/barrier/issues/471).
|
||||
- Fixed incorrect setup of Barrier service path on Windows.
|
||||
|
||||
Features
|
||||
--------
|
||||
|
||||
- Added `--drop-target` option that improves drag and drop support on Windows when Barrier is
|
||||
being run as a portable app.
|
||||
- The `--enable-crypto` command line option has been made the default to reduce chances of
|
||||
accidental security mishaps when configuring Barrier from command line.
|
||||
A new `--disable-crypto` command line option has been added to explicitly disable encryption.
|
||||
- Added support for randomart images for easier comparison of SSL certificate fingerprints.
|
||||
The algorithm is identical to what OpenSSH uses.
|
||||
- Implemented a configuration option for Server GUI auto-start.
|
||||
- Made it possible to use keyboard instead of mouse to modify screen layout.
|
||||
- Added support for keyboard backlight media keys
|
||||
- Added support for Eisu_toggle and Muhenkan keys
|
||||
- Added `--profile-dir` option that allows to select custom profile directory.
|
||||
|
||||
Barrier `2.3.4` ( `2021-11-01` )
|
||||
================================
|
||||
|
||||
Security fixes
|
||||
--------------
|
||||
|
||||
- Barrier will now correctly close connections when the app-level handshake fails (fixes CVE-2021-42075).
|
||||
|
||||
Previously repeated failing connections would leak file descriptors leading to Barrier being unable
|
||||
to receive new connections from clients.
|
||||
|
||||
- Barrier will now enforce a maximum length of input messages (fixes CVE-2021-42076).
|
||||
|
||||
Previously it was possible for a malicious client or server to send excessive length messages
|
||||
leading to denial of service by resource exhaustion.
|
||||
|
||||
- Fixed a bug which caused Barrier to crash when disconnecting a TCP session just after sending
|
||||
Hello message (fixes CVE-2021-42074).
|
||||
This bug allowed an unauthenticated attacker to crash Barrier with only network access.
|
||||
|
||||
All of the above security issues have been reported by Matthias Gerstner who was really helpful
|
||||
resolving them.
|
||||
|
||||
Bug fixes
|
||||
---------
|
||||
|
||||
- Fixed a bug in SSL implementation that caused invalid data occasionally being sent to clients
|
||||
under heavy load.
|
|
@ -0,0 +1,37 @@
|
|||
{% for section, _ in sections|dictsort(by='key') %}
|
||||
{% set underline = "-" %}
|
||||
{% if section %}
|
||||
{{section}}
|
||||
{{ underline * section|length }}{% set underline = "-" %}
|
||||
|
||||
{% endif %}
|
||||
{% if sections[section] %}
|
||||
{% for category, val in definitions|dictsort if category in sections[section]%}
|
||||
|
||||
{{ definitions[category]['name'] }}
|
||||
{{ underline * definitions[category]['name']|length }}
|
||||
|
||||
{% if definitions[category]['showcontent'] %}
|
||||
{% for text, values in sections[section][category]|dictsort(by='value') %}
|
||||
- {{ text }}
|
||||
{% endfor %}
|
||||
{% else %}
|
||||
- {{ sections[section][category]['']|sort|join(', ') }}
|
||||
|
||||
|
||||
{% endif %}
|
||||
{% if sections[section][category]|length == 0 %}
|
||||
|
||||
No significant changes.
|
||||
|
||||
|
||||
{% else %}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% else %}
|
||||
|
||||
No significant changes.
|
||||
|
||||
|
||||
{% endif %}
|
||||
{% endfor %}
|
|
@ -0,0 +1 @@
|
|||
Subproject commit 614bbe87b80435d87ab8791564370e0c1d13627d
|
|
@ -233,7 +233,7 @@ extern "C" {
|
|||
even newer MIPS CPU's, but at the moment one size fits all for
|
||||
optimization options. Older Sparc's work better with only UNROLL, but
|
||||
there's no way to tell at compile time what it is you're running on */
|
||||
|
||||
|
||||
#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */
|
||||
# define DES_PTR
|
||||
# define DES_RISC1
|
||||
|
|
|
@ -233,7 +233,7 @@ extern "C" {
|
|||
even newer MIPS CPU's, but at the moment one size fits all for
|
||||
optimization options. Older Sparc's work better with only UNROLL, but
|
||||
there's no way to tell at compile time what it is you're running on */
|
||||
|
||||
|
||||
#if defined( __sun ) || defined ( sun ) /* Newer Sparc's */
|
||||
# define DES_PTR
|
||||
# define DES_RISC1
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Checks if directory exists, otherwise asks to install package.
|
||||
function check_dir_exists() {
|
||||
check_dir_exists() {
|
||||
local path=$1
|
||||
local package=$2
|
||||
|
||||
|
@ -11,7 +11,7 @@ function check_dir_exists() {
|
|||
fi
|
||||
}
|
||||
|
||||
if [ ! $BARRIER_BUILD_ENV ]; then
|
||||
if [ -z "$BARRIER_BUILD_ENV" ]; then
|
||||
check_dir_exists '/Applications/Xcode.app' 'Xcode'
|
||||
|
||||
printf "Modifying environment for Barrier build...\n"
|
||||
|
@ -29,18 +29,15 @@ if [ ! $BARRIER_BUILD_ENV ]; then
|
|||
|
||||
elif command -v brew; then
|
||||
printf "Detected Homebrew\n"
|
||||
QT_PATH=$(brew --prefix qt)
|
||||
OPENSSL_PATH=$(brew --prefix openssl)
|
||||
QT_PATH=$(brew --prefix qt@5)
|
||||
|
||||
check_dir_exists "$QT_PATH" 'qt'
|
||||
check_dir_exists "$OPENSSL_PATH" 'openssl'
|
||||
check_dir_exists "$QT_PATH" 'qt5'
|
||||
|
||||
export BARRIER_BUILD_BREW=1
|
||||
export CMAKE_PREFIX_PATH="$QT_PATH:$CMAKE_PREFIX_PATH"
|
||||
export LD_LIBRARY_PATH="$OPENSSL_PATH/lib:$LD_LIBRARY_PATH"
|
||||
export CPATH="$OPENSSL_PATH/include:$CPATH"
|
||||
export PKG_CONFIG_PATH="$OPENSSL_PATH/lib/pkgconfig:$PKG_CONFIG_PATH"
|
||||
|
||||
export CMAKE_PREFIX_PATH="/opt/procursus:$QT_PATH:$CMAKE_PREFIX_PATH"
|
||||
export LD_LIBRARY_PATH="/opt/procursus/lib:$LD_LIBRARY_PATH"
|
||||
export CPATH="/opt/procursus/include:$CPATH"
|
||||
export PKG_CONFIG_PATH="/opt/procursus/lib/pkgconfig:$PKG_CONFIG_PATH"
|
||||
else
|
||||
printf "Neither Homebrew nor Macports is installed. Can't get dependency paths\n"
|
||||
exit 1
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Thank you for chosing Barrier!
|
||||
Thank you for choosing Barrier!
|
||||
https://github.com/debauchee/barrier/
|
||||
|
||||
Barrier allows you to share your keyboard and mouse between computers over a network.
|
||||
|
|
|
@ -5,6 +5,5 @@ Comment=Keyboard and mouse sharing solution
|
|||
Exec=barrier
|
||||
Icon=barrier
|
||||
Terminal=false
|
||||
Categories=Utility;DesktopUtility;
|
||||
Categories=Utility;RemoteAccess;
|
||||
Keywords=keyboard;mouse;sharing;network;share;
|
||||
|
||||
|
|
|
@ -19,9 +19,6 @@
|
|||
/* Define if your compiler has standard C++ library support. */
|
||||
#cmakedefine HAVE_CXX_STDLIB ${HAVE_CXX_STDLIB}
|
||||
|
||||
/* Define if the <X11/extensions/dpms.h> header file declares function prototypes. */
|
||||
#cmakedefine HAVE_DPMS_PROTOTYPES ${HAVE_DPMS_PROTOTYPES}
|
||||
|
||||
/* Define if you have a working `getpwuid_r` function. */
|
||||
#cmakedefine HAVE_GETPWUID_R ${HAVE_GETPWUID_R}
|
||||
|
||||
|
@ -97,9 +94,6 @@
|
|||
/* Define to 1 if you have the <unistd.h> header file. */
|
||||
#cmakedefine HAVE_UNISTD_H ${HAVE_UNISTD_H}
|
||||
|
||||
/* Define to 1 if you have the `vsnprintf` function. */
|
||||
#cmakedefine HAVE_VSNPRINTF ${HAVE_VSNPRINTF}
|
||||
|
||||
/* Define to 1 if you have the <wchar.h> header file. */
|
||||
#cmakedefine HAVE_WCHAR_H ${HAVE_WCHAR_H}
|
||||
|
||||
|
@ -115,9 +109,6 @@
|
|||
/* Define to 1 if you have the <X11/extensions/XKBstr.h> header file. */
|
||||
#cmakedefine HAVE_X11_EXTENSIONS_XKBSTR_H ${HAVE_X11_EXTENSIONS_XKBSTR_H}
|
||||
|
||||
/* Define to 1 if you have the <X11/extensions/XTest.h> header file. */
|
||||
#cmakedefine HAVE_X11_EXTENSIONS_XTEST_H ${HAVE_X11_EXTENSIONS_XTEST_H}
|
||||
|
||||
/* Define to 1 if you have the <X11/XKBlib.h> header file. */
|
||||
#cmakedefine HAVE_X11_XKBLIB_H ${HAVE_X11_XKBLIB_H}
|
||||
|
||||
|
@ -160,8 +151,5 @@
|
|||
/* Define to 1 if your <sys/time.h> declares `struct tm`. */
|
||||
#cmakedefine TM_IN_SYS_TIME ${TM_IN_SYS_TIME}
|
||||
|
||||
/* Define to 1 if the X Window System is missing or not being used. */
|
||||
#cmakedefine X_DISPLAY_MISSING ${X_DISPLAY_MISSING}
|
||||
|
||||
/* Define to `unsigned int` if <sys/types.h> does not define. */
|
||||
#cmakedefine size_t ${size_t}
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
#!/bin/sh
|
||||
ICNS_BASE=../dist/macos/bundle/Barrier.app/Contents/Resources
|
||||
if ! which magick >/dev/null 2>&1; then
|
||||
echo "Need ImageMagic for this"
|
||||
echo "Need ImageMagick for this"
|
||||
exit 10
|
||||
fi
|
||||
cd $(dirname $0) || exit $?
|
||||
cd "$(dirname "$0")" || exit $?
|
||||
if [ ! -r barrier.png ]; then
|
||||
echo "Use inkscape (or another vector graphics editor) to create barrier.png from barrier.svg first"
|
||||
exit 10
|
||||
|
@ -12,11 +12,11 @@ fi
|
|||
rm -rf work || exit $?
|
||||
mkdir -p work || exit $?
|
||||
for s in 16 24 32 48 64 128 256 512 1024; do
|
||||
magick convert barrier.png -resize ${s}x${s} -depth 8 work/${s}.png || exit $?
|
||||
magick convert barrier.png -resize "${s}x${s}" -depth 8 "work/${s}.png" || exit $?
|
||||
done
|
||||
# windows icon
|
||||
magick convert work/{16,24,32,48,64,128}.png barrier.png barrier.ico || exit $?
|
||||
# macos icon
|
||||
png2icns $ICNS_BASE/Barrier.icns work/{16,32,256,512,1024}.png || exit $?
|
||||
png2icns "$ICNS_BASE/Barrier.icns" work/{16,32,256,512,1024}.png || exit $?
|
||||
rm -rf work
|
||||
echo Done
|
||||
|
|
|
@ -1,65 +0,0 @@
|
|||
#
|
||||
# Barrier OpenSSL configuration file.
|
||||
# Used for generation of certificate requests.
|
||||
#
|
||||
|
||||
dir = .
|
||||
|
||||
[ca]
|
||||
default_ca = CA_default
|
||||
|
||||
[CA_default]
|
||||
serial = $dir/serial
|
||||
database = $dir/certindex.txt
|
||||
new_certs_dir = $dir/certs
|
||||
certificate = $dir/cacert.pem
|
||||
private_key = $dir/private/cakey.pem
|
||||
default_days = 365
|
||||
default_md = md5
|
||||
preserve = no
|
||||
email_in_dn = no
|
||||
nameopt = default_ca
|
||||
certopt = default_ca
|
||||
policy = policy_match
|
||||
|
||||
[policy_match]
|
||||
countryName = match
|
||||
stateOrProvinceName = match
|
||||
organizationName = match
|
||||
organizationalUnitName = optional
|
||||
commonName = supplied
|
||||
emailAddress = optional
|
||||
|
||||
[req]
|
||||
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
|
||||
distinguished_name = req_distinguished_name
|
||||
req_extensions = v3_req
|
||||
|
||||
[req_distinguished_name]
|
||||
0.organizationName = Organization Name (company)
|
||||
organizationalUnitName = Organizational Unit Name (department, division)
|
||||
emailAddress = Email Address
|
||||
emailAddress_max = 40
|
||||
localityName = Locality Name (city, district)
|
||||
stateOrProvinceName = State or Province Name (full name)
|
||||
countryName = Country Name (2 letter code)
|
||||
countryName_min = 2
|
||||
countryName_max = 2
|
||||
commonName = Common Name (hostname, IP, or your name)
|
||||
commonName_max = 64
|
||||
0.organizationName_default = My Company
|
||||
localityName_default = My Town
|
||||
stateOrProvinceName_default = State or Providence
|
||||
countryName_default = US
|
||||
|
||||
[v3_ca]
|
||||
basicConstraints = CA:TRUE
|
||||
subjectKeyIdentifier = hash
|
||||
authorityKeyIdentifier = keyid:always,issuer:always
|
||||
|
||||
[v3_req]
|
||||
basicConstraints = CA:FALSE
|
||||
subjectKeyIdentifier = hash
|
|
@ -1,7 +1,7 @@
|
|||
name: barrier
|
||||
base: core18
|
||||
version: master
|
||||
version-script: git describe --tags --long | sed "s/^v//"
|
||||
version-script: git describe --tags | 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
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
# barrier -- mouse and keyboard sharing utility
|
||||
# Copyright (C) 2012-2016 Symless Ltd.
|
||||
# Copyright (C) 2011 Nick Bolton
|
||||
#
|
||||
#
|
||||
# This package is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# found in the file LICENSE that should have accompanied this file.
|
||||
#
|
||||
#
|
||||
# This package is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
|
@ -19,7 +19,13 @@ include_directories (${CMAKE_CURRENT_BINARY_DIR}/lib)
|
|||
|
||||
add_subdirectory(lib)
|
||||
add_subdirectory(cmd)
|
||||
add_subdirectory(test)
|
||||
|
||||
include(../cmake/gtest.cmake)
|
||||
|
||||
if (BARRIER_BUILD_TESTS)
|
||||
add_subdirectory(test/integtests)
|
||||
add_subdirectory(test/unittests)
|
||||
endif()
|
||||
|
||||
if (BARRIER_BUILD_GUI)
|
||||
add_subdirectory(gui)
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
# barrier -- mouse and keyboard sharing utility
|
||||
# Copyright (C) 2012-2016 Symless Ltd.
|
||||
# Copyright (C) 2011 Nick Bolton
|
||||
#
|
||||
#
|
||||
# This package is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# found in the file LICENSE that should have accompanied this file.
|
||||
#
|
||||
#
|
||||
# This package is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
|
@ -18,6 +18,5 @@ add_subdirectory(barrierc)
|
|||
add_subdirectory(barriers)
|
||||
|
||||
if (WIN32)
|
||||
add_subdirectory(barrierd)
|
||||
add_subdirectory(barrierd)
|
||||
endif()
|
||||
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
# barrier -- mouse and keyboard sharing utility
|
||||
# Copyright (C) 2012-2016 Symless Ltd.
|
||||
# Copyright (C) 2009 Nick Bolton
|
||||
#
|
||||
#
|
||||
# This package is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# found in the file LICENSE that should have accompanied this file.
|
||||
#
|
||||
#
|
||||
# This package is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
|
@ -22,15 +22,8 @@ if (WIN32)
|
|||
file(GLOB arch_headers "MSWindows*.h")
|
||||
file(GLOB arch_sources "MSWindows*.cpp")
|
||||
list(APPEND sources
|
||||
resource.h
|
||||
barrierc.ico
|
||||
barrierc.rc
|
||||
tb_error.ico
|
||||
tb_idle.ico
|
||||
tb_run.ico
|
||||
tb_wait.ico
|
||||
barrierc.exe.manifest
|
||||
)
|
||||
barrierc.exe.manifest)
|
||||
elseif (APPLE)
|
||||
file(GLOB arch_headers "OSX*.h")
|
||||
file(GLOB arch_sources "OSX*.cpp")
|
||||
|
@ -55,4 +48,3 @@ if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
|||
elseif (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
|
||||
install (TARGETS barrierc DESTINATION bin)
|
||||
endif()
|
||||
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
* barrier -- mouse and keyboard sharing utility
|
||||
* Copyright (C) 2012-2016 Symless Ltd.
|
||||
* Copyright (C) 2003 Chris Schoeneman
|
||||
*
|
||||
*
|
||||
* This package is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* found in the file LICENSE that should have accompanied this file.
|
||||
*
|
||||
*
|
||||
* This package is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
* barrier -- mouse and keyboard sharing utility
|
||||
* Copyright (C) 2012-2016 Symless Ltd.
|
||||
* Copyright (C) 2003 Chris Schoeneman
|
||||
*
|
||||
*
|
||||
* This package is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* found in the file LICENSE that should have accompanied this file.
|
||||
*
|
||||
*
|
||||
* This package is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
* barrier -- mouse and keyboard sharing utility
|
||||
* Copyright (C) 2012-2016 Symless Ltd.
|
||||
* Copyright (C) 2004 Chris Schoeneman
|
||||
*
|
||||
*
|
||||
* This package is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* found in the file LICENSE that should have accompanied this file.
|
||||
*
|
||||
*
|
||||
* This package is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
|
@ -66,4 +66,3 @@ createTaskBarReceiver(const BufferedLogOutputter* logBuffer, IEventQueue* events
|
|||
{
|
||||
return new OSXClientTaskBarReceiver(logBuffer, events);
|
||||
}
|
||||
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
* barrier -- mouse and keyboard sharing utility
|
||||
* Copyright (C) 2012-2016 Symless Ltd.
|
||||
* Copyright (C) 2004 Chris Schoeneman
|
||||
*
|
||||
*
|
||||
* This package is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* found in the file LICENSE that should have accompanied this file.
|
||||
*
|
||||
*
|
||||
* This package is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
* barrier -- mouse and keyboard sharing utility
|
||||
* Copyright (C) 2012-2016 Symless Ltd.
|
||||
* Copyright (C) 2003 Chris Schoeneman
|
||||
*
|
||||
*
|
||||
* This package is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* found in the file LICENSE that should have accompanied this file.
|
||||
*
|
||||
*
|
||||
* This package is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
* barrier -- mouse and keyboard sharing utility
|
||||
* Copyright (C) 2012-2016 Symless Ltd.
|
||||
* Copyright (C) 2003 Chris Schoeneman
|
||||
*
|
||||
*
|
||||
* This package is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* found in the file LICENSE that should have accompanied this file.
|
||||
*
|
||||
*
|
||||
* This package is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
* barrier -- mouse and keyboard sharing utility
|
||||
* Copyright (C) 2012-2016 Symless Ltd.
|
||||
* Copyright (C) 2002 Chris Schoeneman
|
||||
*
|
||||
*
|
||||
* This package is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* found in the file LICENSE that should have accompanied this file.
|
||||
*
|
||||
*
|
||||
* This package is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
|
@ -32,13 +32,13 @@
|
|||
#endif
|
||||
|
||||
int
|
||||
main(int argc, char** argv)
|
||||
main(int argc, char** argv)
|
||||
{
|
||||
#if SYSAPI_WIN32
|
||||
// record window instance for tray icon, etc
|
||||
ArchMiscWindows::setInstanceWin32(GetModuleHandle(NULL));
|
||||
#endif
|
||||
|
||||
|
||||
Arch arch;
|
||||
arch.init();
|
||||
|
||||
|
|
|
@ -1,2 +1,16 @@
|
|||
<?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><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>
|
||||
<?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>
|
||||
<dpiAwareness xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">PerMonitor</dpiAwareness>
|
||||
</windowsSettings>
|
||||
</application>
|
||||
</assembly>
|
|
@ -1,4 +1,4 @@
|
|||
//Microsoft Developer Studio generated resource script.
|
||||
// Microsoft Visual C++ generated resource script.
|
||||
//
|
||||
#include "resource.h"
|
||||
|
||||
|
@ -8,9 +8,6 @@
|
|||
// Generated from the TEXTINCLUDE 2 resource.
|
||||
//
|
||||
#include <winresrc.h>
|
||||
#if !defined(IDC_STATIC)
|
||||
#define IDC_STATIC (-1)
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#undef APSTUDIO_READONLY_SYMBOLS
|
||||
|
@ -19,10 +16,8 @@
|
|||
// English (U.S.) resources
|
||||
|
||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
|
||||
#ifdef _WIN32
|
||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||
#pragma code_page(1252)
|
||||
#endif //_WIN32
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
@ -30,18 +25,18 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
|||
// TEXTINCLUDE
|
||||
//
|
||||
|
||||
1 TEXTINCLUDE DISCARDABLE
|
||||
1 TEXTINCLUDE
|
||||
BEGIN
|
||||
"resource.h\0"
|
||||
END
|
||||
|
||||
2 TEXTINCLUDE DISCARDABLE
|
||||
2 TEXTINCLUDE
|
||||
BEGIN
|
||||
"#include <winresrc.h>\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
3 TEXTINCLUDE DISCARDABLE
|
||||
3 TEXTINCLUDE
|
||||
BEGIN
|
||||
"\r\n"
|
||||
"\0"
|
||||
|
@ -50,6 +45,46 @@ END
|
|||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Version
|
||||
//
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION BARRIER_VERSION_MAJOR, BARRIER_VERSION_MINOR, BARRIER_VERSION_PATCH, BARRIER_BUILD_NUMBER
|
||||
PRODUCTVERSION BARRIER_VERSION_MAJOR, BARRIER_VERSION_MINOR, BARRIER_VERSION_PATCH, BARRIER_BUILD_NUMBER
|
||||
FILEFLAGSMASK 0x3fL
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
#else
|
||||
FILEFLAGS 0x0L
|
||||
#endif
|
||||
FILEOS VOS_NT_WINDOWS32
|
||||
FILETYPE VFT_APP
|
||||
FILESUBTYPE 0x0L
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
BLOCK "040904b0"
|
||||
BEGIN
|
||||
VALUE "CompanyName", "Debauchee Open Source Group"
|
||||
VALUE "CompanyWeb", "https://github.com/debauchee/barrier/"
|
||||
VALUE "FileVersion", BARRIER_VERSION
|
||||
VALUE "LegalCopyright", "Copyright (C) 2018 Debauchee Open Source Group\nCopyright (C) 2012-2016 Symless Ltd.\nCopyright (C) 2008-2014 Nick Bolton\nCopyright (C) 2002-2014 Chris Schoeneman"
|
||||
VALUE "ProductName", "Barrier"
|
||||
VALUE "ProductVersion", BARRIER_VERSION
|
||||
VALUE "OriginalFilename", "barrierc.exe"
|
||||
VALUE "FileDescription", "Open source KVM software client"
|
||||
VALUE "InternalName", "barrierc"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
BEGIN
|
||||
VALUE "Translation", 0x409, 1200
|
||||
END
|
||||
END
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Icon
|
||||
|
@ -57,18 +92,47 @@ END
|
|||
|
||||
// Icon with lowest ID value placed first to ensure application icon
|
||||
// remains consistent on all systems.
|
||||
IDI_BARRIER ICON DISCARDABLE "barrierc.ico"
|
||||
IDI_TASKBAR_NOT_RUNNING ICON DISCARDABLE "tb_idle.ico"
|
||||
IDI_TASKBAR_NOT_WORKING ICON DISCARDABLE "tb_error.ico"
|
||||
IDI_TASKBAR_NOT_CONNECTED ICON DISCARDABLE "tb_wait.ico"
|
||||
IDI_TASKBAR_CONNECTED ICON DISCARDABLE "tb_run.ico"
|
||||
IDI_BARRIER ICON "barrierc.ico"
|
||||
IDI_TASKBAR_NOT_RUNNING ICON "tb_idle.ico"
|
||||
IDI_TASKBAR_NOT_WORKING ICON "tb_error.ico"
|
||||
IDI_TASKBAR_NOT_CONNECTED ICON "tb_wait.ico"
|
||||
IDI_TASKBAR_CONNECTED ICON "tb_run.ico"
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Menu
|
||||
//
|
||||
|
||||
IDR_TASKBAR MENU
|
||||
BEGIN
|
||||
POPUP "Barrier"
|
||||
BEGIN
|
||||
MENUITEM "Show Status", IDC_TASKBAR_STATUS
|
||||
MENUITEM "Show Log", IDC_TASKBAR_SHOW_LOG
|
||||
MENUITEM "Copy Log To Clipboard", IDC_TASKBAR_LOG
|
||||
POPUP "Set Log Level"
|
||||
BEGIN
|
||||
MENUITEM "Error", IDC_TASKBAR_LOG_LEVEL_ERROR
|
||||
MENUITEM "Warning", IDC_TASKBAR_LOG_LEVEL_WARNING
|
||||
MENUITEM "Note", IDC_TASKBAR_LOG_LEVEL_NOTE
|
||||
MENUITEM "Info", IDC_TASKBAR_LOG_LEVEL_INFO
|
||||
MENUITEM "Debug", IDC_TASKBAR_LOG_LEVEL_DEBUG
|
||||
MENUITEM "Debug1", IDC_TASKBAR_LOG_LEVEL_DEBUG1
|
||||
MENUITEM "Debug2", IDC_TASKBAR_LOG_LEVEL_DEBUG2
|
||||
END
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Quit", IDC_TASKBAR_QUIT
|
||||
END
|
||||
END
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Dialog
|
||||
//
|
||||
|
||||
IDD_TASKBAR_STATUS DIALOG DISCARDABLE 0, 0, 145, 18
|
||||
IDD_TASKBAR_STATUS DIALOG 0, 0, 145, 18
|
||||
STYLE DS_MODALFRAME | WS_POPUP
|
||||
FONT 8, "MS Sans Serif"
|
||||
BEGIN
|
||||
|
@ -77,47 +141,12 @@ BEGIN
|
|||
END
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Menu
|
||||
//
|
||||
|
||||
IDR_TASKBAR MENU DISCARDABLE
|
||||
BEGIN
|
||||
POPUP "Barrier"
|
||||
BEGIN
|
||||
MENUITEM "Show Status", IDC_TASKBAR_STATUS
|
||||
MENUITEM "Show Log", IDC_TASKBAR_SHOW_LOG
|
||||
MENUITEM "Copy Log To Clipboard", IDC_TASKBAR_LOG
|
||||
POPUP "Set Log Level"
|
||||
BEGIN
|
||||
MENUITEM "Error", IDC_TASKBAR_LOG_LEVEL_ERROR
|
||||
|
||||
MENUITEM "Warning", IDC_TASKBAR_LOG_LEVEL_WARNING
|
||||
|
||||
MENUITEM "Note", IDC_TASKBAR_LOG_LEVEL_NOTE
|
||||
|
||||
MENUITEM "Info", IDC_TASKBAR_LOG_LEVEL_INFO
|
||||
|
||||
MENUITEM "Debug", IDC_TASKBAR_LOG_LEVEL_DEBUG
|
||||
|
||||
MENUITEM "Debug1", IDC_TASKBAR_LOG_LEVEL_DEBUG1
|
||||
|
||||
MENUITEM "Debug2", IDC_TASKBAR_LOG_LEVEL_DEBUG2
|
||||
|
||||
END
|
||||
MENUITEM SEPARATOR
|
||||
MENUITEM "Quit", IDC_TASKBAR_QUIT
|
||||
END
|
||||
END
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// String Table
|
||||
//
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_FAILED "Barrier is about to quit with errors or warnings. Please check the log then click OK."
|
||||
IDS_INIT_FAILED "Barrier failed to initialize: %{1}"
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
#define IDC_TASKBAR_LOG_LEVEL_DEBUG2 40015
|
||||
|
||||
// Next default values for new objects
|
||||
//
|
||||
//
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||
#define _APS_NEXT_RESOURCE_VALUE 109
|
||||
|
|
|
@ -16,6 +16,9 @@
|
|||
|
||||
file(GLOB headers "*.h")
|
||||
file(GLOB sources "*.cpp")
|
||||
if (WIN32)
|
||||
list(APPEND sources barrierd.rc)
|
||||
endif()
|
||||
|
||||
if (WIN32)
|
||||
add_executable (barrierd WIN32 ${sources})
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
* barrier -- mouse and keyboard sharing utility
|
||||
* Copyright (C) 2012-2016 Symless Ltd.
|
||||
* Copyright (C) 2012 Nick Bolton
|
||||
*
|
||||
*
|
||||
* This package is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* found in the file LICENSE that should have accompanied this file.
|
||||
*
|
||||
*
|
||||
* This package is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 119 KiB |
|
@ -0,0 +1,111 @@
|
|||
// Microsoft Visual C++ generated resource script.
|
||||
//
|
||||
|
||||
#define APSTUDIO_READONLY_SYMBOLS
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 2 resource.
|
||||
//
|
||||
#include <winresrc.h>
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#undef APSTUDIO_READONLY_SYMBOLS
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// English (U.S.) resources
|
||||
|
||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
|
||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||
#pragma code_page(1252)
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// TEXTINCLUDE
|
||||
//
|
||||
|
||||
1 TEXTINCLUDE
|
||||
BEGIN
|
||||
"resource.h\0"
|
||||
END
|
||||
|
||||
2 TEXTINCLUDE
|
||||
BEGIN
|
||||
"#include <winresrc.h>\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
3 TEXTINCLUDE
|
||||
BEGIN
|
||||
"\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Version
|
||||
//
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION BARRIER_VERSION_MAJOR, BARRIER_VERSION_MINOR, BARRIER_VERSION_PATCH, BARRIER_BUILD_NUMBER
|
||||
PRODUCTVERSION BARRIER_VERSION_MAJOR, BARRIER_VERSION_MINOR, BARRIER_VERSION_PATCH, BARRIER_BUILD_NUMBER
|
||||
FILEFLAGSMASK 0x3fL
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
#else
|
||||
FILEFLAGS 0x0L
|
||||
#endif
|
||||
FILEOS VOS_NT_WINDOWS32
|
||||
FILETYPE VFT_APP
|
||||
FILESUBTYPE 0x0L
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
BLOCK "040904b0"
|
||||
BEGIN
|
||||
VALUE "CompanyName", "Debauchee Open Source Group"
|
||||
VALUE "CompanyWeb", "https://github.com/debauchee/barrier/"
|
||||
VALUE "FileVersion", BARRIER_VERSION
|
||||
VALUE "LegalCopyright", "Copyright (C) 2018 Debauchee Open Source Group\nCopyright (C) 2012-2016 Symless Ltd.\nCopyright (C) 2008-2014 Nick Bolton\nCopyright (C) 2002-2014 Chris Schoeneman"
|
||||
VALUE "ProductName", "Barrier"
|
||||
VALUE "ProductVersion", BARRIER_VERSION
|
||||
VALUE "OriginalFilename", "barrierd.exe"
|
||||
VALUE "FileDescription", "Open source KVM software daemon"
|
||||
VALUE "InternalName", "barrierd"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
BEGIN
|
||||
VALUE "Translation", 0x409, 1200
|
||||
END
|
||||
END
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Icon
|
||||
//
|
||||
|
||||
// Icon with lowest ID value placed first to ensure application icon
|
||||
// remains consistent on all systems.
|
||||
IDI_BARRIER ICON "barrierd.ico"
|
||||
|
||||
|
||||
#endif // English (U.S.) resources
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
|
||||
#ifndef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 3 resource.
|
||||
//
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#endif // not APSTUDIO_INVOKED
|
||||
|
|
@ -1,11 +1,11 @@
|
|||
# barrier -- mouse and keyboard sharing utility
|
||||
# Copyright (C) 2012-2016 Symless Ltd.
|
||||
# Copyright (C) 2009 Nick Bolton
|
||||
#
|
||||
#
|
||||
# This package is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# found in the file LICENSE that should have accompanied this file.
|
||||
#
|
||||
#
|
||||
# This package is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
|
@ -22,15 +22,8 @@ if (WIN32)
|
|||
file(GLOB arch_headers "MSWindows*.h")
|
||||
file(GLOB arch_sources "MSWindows*.cpp")
|
||||
list(APPEND sources
|
||||
resource.h
|
||||
barriers.ico
|
||||
barriers.rc
|
||||
tb_error.ico
|
||||
tb_idle.ico
|
||||
tb_run.ico
|
||||
tb_wait.ico
|
||||
barriers.exe.manifest
|
||||
)
|
||||
barriers.exe.manifest)
|
||||
elseif (APPLE)
|
||||
file(GLOB arch_headers "OSX*.h")
|
||||
file(GLOB arch_sources "OSX*.cpp")
|
||||
|
@ -55,5 +48,3 @@ if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
|||
elseif (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
|
||||
install (TARGETS barriers DESTINATION bin)
|
||||
endif()
|
||||
|
||||
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
* barrier -- mouse and keyboard sharing utility
|
||||
* Copyright (C) 2012-2016 Symless Ltd.
|
||||
* Copyright (C) 2003 Chris Schoeneman
|
||||
*
|
||||
*
|
||||
* This package is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* found in the file LICENSE that should have accompanied this file.
|
||||
*
|
||||
*
|
||||
* This package is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
* barrier -- mouse and keyboard sharing utility
|
||||
* Copyright (C) 2012-2016 Symless Ltd.
|
||||
* Copyright (C) 2003 Chris Schoeneman
|
||||
*
|
||||
*
|
||||
* This package is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* found in the file LICENSE that should have accompanied this file.
|
||||
*
|
||||
*
|
||||
* This package is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
* barrier -- mouse and keyboard sharing utility
|
||||
* Copyright (C) 2012-2016 Symless Ltd.
|
||||
* Copyright (C) 2004 Chris Schoeneman
|
||||
*
|
||||
*
|
||||
* This package is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* found in the file LICENSE that should have accompanied this file.
|
||||
*
|
||||
*
|
||||
* This package is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
* barrier -- mouse and keyboard sharing utility
|
||||
* Copyright (C) 2012-2016 Symless Ltd.
|
||||
* Copyright (C) 2004 Chris Schoeneman
|
||||
*
|
||||
*
|
||||
* This package is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* found in the file LICENSE that should have accompanied this file.
|
||||
*
|
||||
*
|
||||
* This package is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
* barrier -- mouse and keyboard sharing utility
|
||||
* Copyright (C) 2012-2016 Symless Ltd.
|
||||
* Copyright (C) 2003 Chris Schoeneman
|
||||
*
|
||||
*
|
||||
* This package is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* found in the file LICENSE that should have accompanied this file.
|
||||
*
|
||||
*
|
||||
* This package is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
* barrier -- mouse and keyboard sharing utility
|
||||
* Copyright (C) 2012-2016 Symless Ltd.
|
||||
* Copyright (C) 2003 Chris Schoeneman
|
||||
*
|
||||
*
|
||||
* This package is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* found in the file LICENSE that should have accompanied this file.
|
||||
*
|
||||
*
|
||||
* This package is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
* barrier -- mouse and keyboard sharing utility
|
||||
* Copyright (C) 2012-2016 Symless Ltd.
|
||||
* Copyright (C) 2002 Chris Schoeneman
|
||||
*
|
||||
*
|
||||
* This package is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* found in the file LICENSE that should have accompanied this file.
|
||||
*
|
||||
*
|
||||
* This package is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
|
@ -32,7 +32,7 @@
|
|||
#endif
|
||||
|
||||
int
|
||||
main(int argc, char** argv)
|
||||
main(int argc, char** argv)
|
||||
{
|
||||
#if SYSAPI_WIN32
|
||||
// record window instance for tray icon, etc
|
||||
|
@ -45,7 +45,7 @@ main(int argc, char** argv)
|
|||
*/
|
||||
setenv("OS_ACTIVITY_DT_MODE", "NO", true);
|
||||
#endif
|
||||
|
||||
|
||||
Arch arch;
|
||||
arch.init();
|
||||
|
||||
|
|
|
@ -1,2 +1,16 @@
|
|||
<?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>
|
||||
<?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>
|
||||
<dpiAwareness xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">PerMonitor</dpiAwareness>
|
||||
</windowsSettings>
|
||||
</application>
|
||||
</assembly>
|
|
@ -16,10 +16,8 @@
|
|||
// English (U.S.) resources
|
||||
|
||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
|
||||
#ifdef _WIN32
|
||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||
#pragma code_page(1252)
|
||||
#endif //_WIN32
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
@ -27,18 +25,18 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
|||
// TEXTINCLUDE
|
||||
//
|
||||
|
||||
1 TEXTINCLUDE
|
||||
1 TEXTINCLUDE
|
||||
BEGIN
|
||||
"resource.h\0"
|
||||
END
|
||||
|
||||
2 TEXTINCLUDE
|
||||
2 TEXTINCLUDE
|
||||
BEGIN
|
||||
"#include <winresrc.h>\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
3 TEXTINCLUDE
|
||||
3 TEXTINCLUDE
|
||||
BEGIN
|
||||
"\r\n"
|
||||
"\0"
|
||||
|
@ -47,6 +45,46 @@ END
|
|||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Version
|
||||
//
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION BARRIER_VERSION_MAJOR, BARRIER_VERSION_MINOR, BARRIER_VERSION_PATCH, BARRIER_BUILD_NUMBER
|
||||
PRODUCTVERSION BARRIER_VERSION_MAJOR, BARRIER_VERSION_MINOR, BARRIER_VERSION_PATCH, BARRIER_BUILD_NUMBER
|
||||
FILEFLAGSMASK 0x3fL
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
#else
|
||||
FILEFLAGS 0x0L
|
||||
#endif
|
||||
FILEOS VOS_NT_WINDOWS32
|
||||
FILETYPE VFT_APP
|
||||
FILESUBTYPE 0x0L
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
BLOCK "040904b0"
|
||||
BEGIN
|
||||
VALUE "CompanyName", "Debauchee Open Source Group"
|
||||
VALUE "CompanyWeb", "https://github.com/debauchee/barrier/"
|
||||
VALUE "FileVersion", BARRIER_VERSION
|
||||
VALUE "LegalCopyright", "Copyright (C) 2018 Debauchee Open Source Group\nCopyright (C) 2012-2016 Symless Ltd.\nCopyright (C) 2008-2014 Nick Bolton\nCopyright (C) 2002-2014 Chris Schoeneman"
|
||||
VALUE "ProductName", "Barrier"
|
||||
VALUE "ProductVersion", BARRIER_VERSION
|
||||
VALUE "OriginalFilename", "barriers.exe"
|
||||
VALUE "FileDescription", "Open source KVM software server"
|
||||
VALUE "InternalName", "barriers"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
BEGIN
|
||||
VALUE "Translation", 0x409, 1200
|
||||
END
|
||||
END
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Icon
|
||||
|
@ -54,18 +92,19 @@ END
|
|||
|
||||
// Icon with lowest ID value placed first to ensure application icon
|
||||
// remains consistent on all systems.
|
||||
IDI_BARRIER ICON "barriers.ico"
|
||||
IDI_TASKBAR_NOT_RUNNING ICON "tb_idle.ico"
|
||||
IDI_TASKBAR_NOT_WORKING ICON "tb_error.ico"
|
||||
IDI_BARRIER ICON "barriers.ico"
|
||||
IDI_TASKBAR_NOT_RUNNING ICON "tb_idle.ico"
|
||||
IDI_TASKBAR_NOT_WORKING ICON "tb_error.ico"
|
||||
IDI_TASKBAR_NOT_CONNECTED ICON "tb_wait.ico"
|
||||
IDI_TASKBAR_CONNECTED ICON "tb_run.ico"
|
||||
IDI_TASKBAR_CONNECTED ICON "tb_run.ico"
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Menu
|
||||
//
|
||||
|
||||
IDR_TASKBAR MENU
|
||||
IDR_TASKBAR MENU
|
||||
BEGIN
|
||||
POPUP "Barrier"
|
||||
BEGIN
|
||||
|
@ -110,7 +149,7 @@ END
|
|||
// String Table
|
||||
//
|
||||
|
||||
STRINGTABLE
|
||||
STRINGTABLE
|
||||
BEGIN
|
||||
IDS_FAILED "Barrier is about to quit with errors or warnings. Please check the log then click OK."
|
||||
IDS_INIT_FAILED "Barrier failed to initialize: %{1}"
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
#define ID_BARRIER_RESETSERVER 40017
|
||||
|
||||
// Next default values for new objects
|
||||
//
|
||||
//
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||
#define _APS_NEXT_RESOURCE_VALUE 109
|
||||
|
|
|
@ -6,15 +6,124 @@ set (CMAKE_AUTORCC ON)
|
|||
set (CMAKE_AUTOUIC ON)
|
||||
set (CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||
|
||||
file (GLOB GUI_SOURCE_FILES src/*.cpp src/*.h)
|
||||
file (GLOB GUI_UI_FILES src/*.ui)
|
||||
# files that are used both in tests and the app
|
||||
set(GUI_COMMON_SOURCE_FILES
|
||||
src/Action.cpp
|
||||
src/Hotkey.cpp
|
||||
src/KeySequence.cpp
|
||||
)
|
||||
|
||||
set(GUI_COMMON_HEADER_FILES
|
||||
src/Action.h
|
||||
src/Hotkey.h
|
||||
src/KeySequence.h
|
||||
)
|
||||
|
||||
set(GUI_SOURCE_FILES
|
||||
src/AboutDialog.cpp
|
||||
src/ActionDialog.cpp
|
||||
src/AddClientDialog.cpp
|
||||
src/AppConfig.cpp
|
||||
src/BarrierLocale.cpp
|
||||
src/BaseConfig.cpp
|
||||
src/CommandProcess.cpp
|
||||
src/DataDownloader.cpp
|
||||
src/DisplayIsValid.cpp
|
||||
src/FingerprintAcceptDialog.cpp
|
||||
src/HotkeyDialog.cpp
|
||||
src/IpcClient.cpp
|
||||
src/Ipc.cpp
|
||||
src/IpcReader.cpp
|
||||
src/KeySequenceWidget.cpp
|
||||
src/LogWindow.cpp
|
||||
src/main.cpp
|
||||
src/MainWindow.cpp
|
||||
src/NewScreenWidget.cpp
|
||||
src/QBarrierApplication.cpp
|
||||
src/QUtility.cpp
|
||||
src/Screen.cpp
|
||||
src/ScreenSettingsDialog.cpp
|
||||
src/ScreenSetupModel.cpp
|
||||
src/ScreenSetupView.cpp
|
||||
src/ServerConfig.cpp
|
||||
src/ServerConfigDialog.cpp
|
||||
src/SettingsDialog.cpp
|
||||
src/SetupWizard.cpp
|
||||
src/SslCertificate.cpp
|
||||
src/TrashScreenWidget.cpp
|
||||
src/VersionChecker.cpp
|
||||
src/ZeroconfBrowser.cpp
|
||||
src/ZeroconfRegister.cpp
|
||||
src/ZeroconfServer.cpp
|
||||
src/ZeroconfService.cpp
|
||||
src/ZeroconfThread.cpp
|
||||
)
|
||||
|
||||
set(GUI_HEADER_FILES
|
||||
src/AboutDialog.h
|
||||
src/ActionDialog.h
|
||||
src/AddClientDialog.h
|
||||
src/AppConfig.h
|
||||
src/BarrierLocale.h
|
||||
src/BaseConfig.h
|
||||
src/CommandProcess.h
|
||||
src/DataDownloader.h
|
||||
src/DisplayIsValid.h
|
||||
src/ElevateMode.h
|
||||
src/HotkeyDialog.h
|
||||
src/IpcClient.h
|
||||
src/Ipc.h
|
||||
src/IpcReader.h
|
||||
src/KeySequenceWidget.h
|
||||
src/LogWindow.h
|
||||
src/MainWindow.h
|
||||
src/NewScreenWidget.h
|
||||
src/ProcessorArch.h
|
||||
src/QBarrierApplication.h
|
||||
src/QUtility.h
|
||||
src/Screen.h
|
||||
src/ScreenSettingsDialog.h
|
||||
src/ScreenSetupModel.h
|
||||
src/ScreenSetupView.h
|
||||
src/ServerConfigDialog.h
|
||||
src/ServerConfig.h
|
||||
src/SettingsDialog.h
|
||||
src/SetupWizard.h
|
||||
src/ShutdownCh.h
|
||||
src/SslCertificate.h
|
||||
src/TrashScreenWidget.h
|
||||
src/VersionChecker.h
|
||||
src/ZeroconfBrowser.h
|
||||
src/ZeroconfRecord.h
|
||||
src/ZeroconfRegister.h
|
||||
src/ZeroconfServer.h
|
||||
src/ZeroconfService.h
|
||||
src/ZeroconfThread.h
|
||||
)
|
||||
|
||||
set(GUI_UI_FILES
|
||||
src/AboutDialogBase.ui
|
||||
src/ActionDialogBase.ui
|
||||
src/AddClientDialogBase.ui
|
||||
src/FingerprintAcceptDialog.ui
|
||||
src/HotkeyDialogBase.ui
|
||||
src/LogWindowBase.ui
|
||||
src/MainWindowBase.ui
|
||||
src/ScreenSettingsDialogBase.ui
|
||||
src/ServerConfigDialogBase.ui
|
||||
src/SettingsDialogBase.ui
|
||||
src/SetupWizardBase.ui
|
||||
)
|
||||
|
||||
if (WIN32)
|
||||
set (GUI_RC_FILES res/win/Barrier.rc)
|
||||
endif()
|
||||
|
||||
add_executable (barrier WIN32
|
||||
${GUI_COMMON_SOURCE_FILES}
|
||||
${GUI_COMMON_HEADER_FILES}
|
||||
${GUI_SOURCE_FILES}
|
||||
${GUI_HEADER_FILES}
|
||||
${GUI_UI_FILES}
|
||||
${GUI_RC_FILES}
|
||||
res/Barrier.qrc
|
||||
|
@ -22,13 +131,13 @@ add_executable (barrier WIN32
|
|||
|
||||
include_directories (./src)
|
||||
|
||||
target_link_libraries (barrier Qt5::Core Qt5::Widgets Qt5::Network)
|
||||
target_link_libraries(barrier net base io Qt5::Core Qt5::Widgets Qt5::Network ${OPENSSL_LIBS})
|
||||
target_compile_definitions (barrier PRIVATE -DBARRIER_VERSION_STAGE="${BARRIER_VERSION_STAGE}")
|
||||
target_compile_definitions (barrier PRIVATE -DBARRIER_REVISION="${BARRIER_REVISION}")
|
||||
|
||||
if (WIN32)
|
||||
include_directories ($ENV{BONJOUR_SDK_HOME}/Include)
|
||||
find_library (DNSSD_LIB dnssd.lib
|
||||
find_library (DNSSD_LIB dnssd.lib
|
||||
HINTS ENV BONJOUR_SDK_HOME
|
||||
PATH_SUFFIXES "Lib/x64")
|
||||
set_target_properties (barrier PROPERTIES LINK_FLAGS "/NODEFAULTLIB:LIBCMT")
|
||||
|
@ -51,3 +160,22 @@ if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
|||
elseif (${CMAKE_SYSTEM_NAME} MATCHES "Linux" OR ${CMAKE_SYSTEM_NAME} MATCHES "BSD")
|
||||
install (TARGETS barrier DESTINATION bin)
|
||||
endif()
|
||||
|
||||
if (BARRIER_BUILD_TESTS)
|
||||
set(GUI_TEST_SOURCE_FILES
|
||||
test/KeySequenceTests.cpp
|
||||
test/HotkeyTests.cpp
|
||||
test/main.cpp
|
||||
)
|
||||
|
||||
add_executable(guiunittests
|
||||
${GUI_TEST_SOURCE_FILES}
|
||||
${GUI_COMMON_SOURCE_FILES}
|
||||
${GUI_COMMON_HEADER_FILES}
|
||||
)
|
||||
|
||||
add_test(guiunittests guiunittests)
|
||||
|
||||
target_include_directories(guiunittests PUBLIC ../../ext)
|
||||
target_link_libraries(guiunittests gtest gmock Qt5::Core Qt5::Widgets Qt5::Network ${libs})
|
||||
endif()
|
||||
|
|
162
src/gui/gui.pro
162
src/gui/gui.pro
|
@ -1,162 +0,0 @@
|
|||
QT += widgets \
|
||||
network
|
||||
TEMPLATE = app
|
||||
TARGET = barrier
|
||||
DEFINES += VERSION_STAGE=\\\"$$QMAKE_VERSION_STAGE\\\"
|
||||
DEFINES += VERSION_REVISION=\\\"$$QMAKE_VERSION_REVISION\\\"
|
||||
DEFINES -= UNICODE
|
||||
DEFINES += _MBCS
|
||||
DEPENDPATH += . \
|
||||
res
|
||||
INCLUDEPATH += . \
|
||||
src \
|
||||
../lib/shared/
|
||||
FORMS += src/MainWindowBase.ui \
|
||||
src/AboutDialogBase.ui \
|
||||
src/ServerConfigDialogBase.ui \
|
||||
src/ScreenSettingsDialogBase.ui \
|
||||
src/ActionDialogBase.ui \
|
||||
src/HotkeyDialogBase.ui \
|
||||
src/SettingsDialogBase.ui \
|
||||
src/SetupWizardBase.ui \
|
||||
src/AddClientDialogBase.ui \
|
||||
src/ActivationDialog.ui \
|
||||
src/CancelActivationDialog.ui \
|
||||
src/FailedLoginDialog.ui
|
||||
SOURCES += src/main.cpp \
|
||||
src/MainWindow.cpp \
|
||||
src/AboutDialog.cpp \
|
||||
src/ServerConfig.cpp \
|
||||
src/ServerConfigDialog.cpp \
|
||||
src/ScreenSetupView.cpp \
|
||||
src/Screen.cpp \
|
||||
src/ScreenSetupModel.cpp \
|
||||
src/NewScreenWidget.cpp \
|
||||
src/TrashScreenWidget.cpp \
|
||||
src/ScreenSettingsDialog.cpp \
|
||||
src/BaseConfig.cpp \
|
||||
src/HotkeyDialog.cpp \
|
||||
src/ActionDialog.cpp \
|
||||
src/Hotkey.cpp \
|
||||
src/Action.cpp \
|
||||
src/KeySequence.cpp \
|
||||
src/KeySequenceWidget.cpp \
|
||||
src/SettingsDialog.cpp \
|
||||
src/AppConfig.cpp \
|
||||
src/QBarrierApplication.cpp \
|
||||
src/VersionChecker.cpp \
|
||||
src/SetupWizard.cpp \
|
||||
src/IpcClient.cpp \
|
||||
src/IpcReader.cpp \
|
||||
src/Ipc.cpp \
|
||||
src/BarrierLocale.cpp \
|
||||
src/QUtility.cpp \
|
||||
src/ZeroconfServer.cpp \
|
||||
src/ZeroconfThread.cpp \
|
||||
src/ZeroconfRegister.cpp \
|
||||
src/ZeroconfBrowser.cpp \
|
||||
src/ZeroconfService.cpp \
|
||||
src/DataDownloader.cpp \
|
||||
src/AddClientDialog.cpp \
|
||||
src/CommandProcess.cpp \
|
||||
src/CoreInterface.cpp \
|
||||
src/Fingerprint.cpp \
|
||||
src/SslCertificate.cpp \
|
||||
src/WebClient.cpp \
|
||||
src/ActivationNotifier.cpp \
|
||||
src/ActivationDialog.cpp \
|
||||
src/CancelActivationDialog.cpp \
|
||||
src/FailedLoginDialog.cpp \
|
||||
../lib/shared/SerialKey.cpp \
|
||||
src/LicenseManager.cpp
|
||||
HEADERS += src/MainWindow.h \
|
||||
src/AboutDialog.h \
|
||||
src/ServerConfig.h \
|
||||
src/ServerConfigDialog.h \
|
||||
src/ScreenSetupView.h \
|
||||
src/Screen.h \
|
||||
src/ScreenSetupModel.h \
|
||||
src/NewScreenWidget.h \
|
||||
src/TrashScreenWidget.h \
|
||||
src/ScreenSettingsDialog.h \
|
||||
src/BaseConfig.h \
|
||||
src/HotkeyDialog.h \
|
||||
src/ActionDialog.h \
|
||||
src/Hotkey.h \
|
||||
src/Action.h \
|
||||
src/KeySequence.h \
|
||||
src/KeySequenceWidget.h \
|
||||
src/SettingsDialog.h \
|
||||
src/AppConfig.h \
|
||||
src/QBarrierApplication.h \
|
||||
src/VersionChecker.h \
|
||||
src/SetupWizard.h \
|
||||
src/IpcClient.h \
|
||||
src/IpcReader.h \
|
||||
src/Ipc.h \
|
||||
src/BarrierLocale.h \
|
||||
src/QUtility.h \
|
||||
src/ZeroconfServer.h \
|
||||
src/ZeroconfThread.h \
|
||||
src/ZeroconfRegister.h \
|
||||
src/ZeroconfRecord.h \
|
||||
src/ZeroconfBrowser.h \
|
||||
src/ZeroconfService.h \
|
||||
src/DataDownloader.h \
|
||||
src/AddClientDialog.h \
|
||||
src/CommandProcess.h \
|
||||
src/ProcessorArch.h \
|
||||
src/CoreInterface.h \
|
||||
src/Fingerprint.h \
|
||||
src/SslCertificate.h \
|
||||
src/WebClient.h \
|
||||
src/ActivationNotifier.h \
|
||||
src/ElevateMode.h \
|
||||
src/ActivationDialog.h \
|
||||
src/CancelActivationDialog.h \
|
||||
src/FailedLoginDialog.h \
|
||||
../lib/shared/EditionType.h \
|
||||
../lib/shared/SerialKey.h \
|
||||
src/LicenseManager.h
|
||||
RESOURCES += res/Barrier.qrc
|
||||
RC_FILE = res/win/Barrier.rc
|
||||
macx {
|
||||
QMAKE_INFO_PLIST = res/mac/Info.plist
|
||||
TARGET = Barrier
|
||||
QBARRIER_ICON.files = res/mac/Barrier.icns
|
||||
QBARRIER_ICON.path = Contents/Resources
|
||||
QMAKE_BUNDLE_DATA += QBARRIER_ICON
|
||||
LIBS += $$MACX_LIBS
|
||||
}
|
||||
unix:!macx:LIBS += -ldns_sd
|
||||
debug {
|
||||
OBJECTS_DIR = tmp/debug
|
||||
MOC_DIR = tmp/debug
|
||||
RCC_DIR = tmp/debug
|
||||
}
|
||||
release {
|
||||
OBJECTS_DIR = tmp/release
|
||||
MOC_DIR = tmp/release
|
||||
RCC_DIR = tmp/release
|
||||
}
|
||||
win32-msvc2015 {
|
||||
LIBS += -lAdvapi32
|
||||
QMAKE_LFLAGS += /NODEFAULTLIB:LIBCMT
|
||||
}
|
||||
win32-msvc* {
|
||||
contains(QMAKE_HOST.arch, x86):{
|
||||
QMAKE_LFLAGS *= /MACHINE:X86
|
||||
LIBS += -L"$$(BONJOUR_SDK_HOME)/Lib/Win32" -ldnssd
|
||||
}
|
||||
|
||||
contains(QMAKE_HOST.arch, x86_64):{
|
||||
QMAKE_LFLAGS *= /MACHINE:X64
|
||||
LIBS += -L"$$(BONJOUR_SDK_HOME)/Lib/x64" -ldnssd
|
||||
}
|
||||
}
|
||||
win32 {
|
||||
Debug:DESTDIR = ../../bin/Debug
|
||||
Release:DESTDIR = ../../bin/Release
|
||||
INCLUDEPATH += "$$(BONJOUR_SDK_HOME)/Include"
|
||||
}
|
||||
else:DESTDIR = ../../bin
|
|
@ -650,12 +650,17 @@ To automatically trust this fingerprint for future connections, click Yes. To re
|
|||
<name>QObject</name>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="60"/>
|
||||
<source>Barrier Configurations (*.sgc);;All files (*.*)</source>
|
||||
<source>All files (*.*)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="60"/>
|
||||
<source>Barrier Configurations (*.sgc)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="67"/>
|
||||
<source>Barrier Configurations (*.conf);;All files (*.*)</source>
|
||||
<source>Barrier Configurations (*.conf)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
|
|
|
@ -1 +1 @@
|
|||
lupdate -noobsolete gui.pro -ts gui.ts
|
||||
lupdate -noobsolete src/* -ts gui.ts
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
cd res/lang
|
||||
lrelease *.ts
|
||||
cd res/lang
|
||||
lrelease *.ts
|
||||
|
|
|
@ -1,46 +1,46 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<languages>
|
||||
<language ietfCode="en" name="English" />
|
||||
<language ietfCode="ca-AD" name="Català (Andorra)" />
|
||||
<language ietfCode="cs-CZ" name="Čeština" />
|
||||
<language ietfCode="cy" name="Cymraeg" />
|
||||
<language ietfCode="da" name="Dansk" />
|
||||
<language ietfCode="de" name="Deutsch" />
|
||||
<language ietfCode="es" name="Español" />
|
||||
<language ietfCode="fr" name="Français" />
|
||||
<language ietfCode="hr-HR" name="Hrvatski" />
|
||||
<language ietfCode="id" name="Indonesia" />
|
||||
<language ietfCode="it" name="Italiano" />
|
||||
<language ietfCode="lv" name="Latvijas" />
|
||||
<language ietfCode="lt" name="Lietuvos" />
|
||||
<language ietfCode="hu-HU" name="Magyar" />
|
||||
<language ietfCode="nl-NL" name="Nederlands" />
|
||||
<language ietfCode="no" name="Norsk" />
|
||||
<language ietfCode="pl-PL" name="Polski" />
|
||||
<language ietfCode="pt-PT" name="Português" />
|
||||
<language ietfCode="pt-BR" name="Português (Brasil)" />
|
||||
<language ietfCode="ro" name="Română" />
|
||||
<language ietfCode="sq-AL" name="Shqiptar" />
|
||||
<language ietfCode="sl-SI" name="Slovenščina" />
|
||||
<language ietfCode="sk-SK" name="Slovenčina" />
|
||||
<language ietfCode="fi" name="Suomi" />
|
||||
<language ietfCode="sv" name="Svenska" />
|
||||
<language ietfCode="vi" name="Tiếng Việt" />
|
||||
<language ietfCode="tr-TR" name="Türkçe" />
|
||||
<language ietfCode="bg-BG" name="български" />
|
||||
<language ietfCode="ru" name="Русский" />
|
||||
<language ietfCode="sr" name="српски" />
|
||||
<language ietfCode="uk" name="Український" />
|
||||
<language ietfCode="grk" name="Ελληνικά" />
|
||||
<language ietfCode="he" name="עברית" />
|
||||
<language ietfCode="ar" name="العربية" />
|
||||
<language ietfCode="pes-IR" name="فارسی" />
|
||||
<language ietfCode="ur" name="اردو" />
|
||||
<language ietfCode="mr" name="मराठी" />
|
||||
<language ietfCode="si" name="Sඉන්හල" />
|
||||
<language ietfCode="th-TH" name="ภาษาไทย" />
|
||||
<language ietfCode="zh-CN" name="中文 (简体)" />
|
||||
<language ietfCode="zh-TW" name="中文 (繁體)" />
|
||||
<language ietfCode="ja-JP" name="日本語" />
|
||||
<language ietfCode="ko" name="한국어" />
|
||||
</languages>
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<languages>
|
||||
<language ietfCode="en" name="English" />
|
||||
<language ietfCode="ca-AD" name="Català (Andorra)" />
|
||||
<language ietfCode="cs-CZ" name="Čeština" />
|
||||
<language ietfCode="cy" name="Cymraeg" />
|
||||
<language ietfCode="da" name="Dansk" />
|
||||
<language ietfCode="de" name="Deutsch" />
|
||||
<language ietfCode="es" name="Español" />
|
||||
<language ietfCode="fr" name="Français" />
|
||||
<language ietfCode="hr-HR" name="Hrvatski" />
|
||||
<language ietfCode="id" name="Indonesia" />
|
||||
<language ietfCode="it" name="Italiano" />
|
||||
<language ietfCode="lv" name="Latvijas" />
|
||||
<language ietfCode="lt" name="Lietuvos" />
|
||||
<language ietfCode="hu-HU" name="Magyar" />
|
||||
<language ietfCode="nl-NL" name="Nederlands" />
|
||||
<language ietfCode="no" name="Norsk" />
|
||||
<language ietfCode="pl-PL" name="Polski" />
|
||||
<language ietfCode="pt-PT" name="Português" />
|
||||
<language ietfCode="pt-BR" name="Português (Brasil)" />
|
||||
<language ietfCode="ro" name="Română" />
|
||||
<language ietfCode="sq-AL" name="Shqiptar" />
|
||||
<language ietfCode="sl-SI" name="Slovenščina" />
|
||||
<language ietfCode="sk-SK" name="Slovenčina" />
|
||||
<language ietfCode="fi" name="Suomi" />
|
||||
<language ietfCode="sv" name="Svenska" />
|
||||
<language ietfCode="vi" name="Tiếng Việt" />
|
||||
<language ietfCode="tr-TR" name="Türkçe" />
|
||||
<language ietfCode="bg-BG" name="български" />
|
||||
<language ietfCode="ru" name="Русский" />
|
||||
<language ietfCode="sr" name="српски" />
|
||||
<language ietfCode="uk" name="Український" />
|
||||
<language ietfCode="grk" name="Ελληνικά" />
|
||||
<language ietfCode="he" name="עברית" />
|
||||
<language ietfCode="ar" name="العربية" />
|
||||
<language ietfCode="pes-IR" name="فارسی" />
|
||||
<language ietfCode="ur" name="اردو" />
|
||||
<language ietfCode="mr" name="मराठी" />
|
||||
<language ietfCode="si" name="Sඉන්හල" />
|
||||
<language ietfCode="th-TH" name="ภาษาไทย" />
|
||||
<language ietfCode="zh-CN" name="中文 (简体)" />
|
||||
<language ietfCode="zh-TW" name="中文 (繁體)" />
|
||||
<language ietfCode="ja-JP" name="日本語" />
|
||||
<language ietfCode="ko" name="한국어" />
|
||||
</languages>
|
||||
|
|
|
@ -648,12 +648,17 @@ To automatically trust this fingerprint for future connections, click Yes. To re
|
|||
<name>QObject</name>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="60"/>
|
||||
<source>Barrier Configurations (*.sgc);;All files (*.*)</source>
|
||||
<source>All files (*.*)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="60"/>
|
||||
<source>Barrier Configurations (*.sgc)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="67"/>
|
||||
<source>Barrier Configurations (*.conf);;All files (*.*)</source>
|
||||
<source>Barrier Configurations (*.conf)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
|
|
|
@ -648,12 +648,17 @@ To automatically trust this fingerprint for future connections, click Yes. To re
|
|||
<name>QObject</name>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="60"/>
|
||||
<source>Barrier Configurations (*.sgc);;All files (*.*)</source>
|
||||
<source>All files (*.*)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="60"/>
|
||||
<source>Barrier Configurations (*.sgc)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="67"/>
|
||||
<source>Barrier Configurations (*.conf);;All files (*.*)</source>
|
||||
<source>Barrier Configurations (*.conf)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
|
|
Binary file not shown.
|
@ -648,13 +648,18 @@ To automatically trust this fingerprint for future connections, click Yes. To re
|
|||
<name>QObject</name>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="60"/>
|
||||
<source>Barrier Configurations (*.sgc);;All files (*.*)</source>
|
||||
<translation type="finished">Конфигурации на Синерджи (*.sgc);; Всички файлове (*.*)</translation>
|
||||
<source>All files (*.*)</source>
|
||||
<translation type="finished">Всички файлове (*.*)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="60"/>
|
||||
<source>Barrier Configurations (*.sgc)</source>
|
||||
<translation type="finished">Конфигурации на Синерджи (*.sgc)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="67"/>
|
||||
<source>Barrier Configurations (*.conf);;All files (*.*)</source>
|
||||
<translation type="finished">Конфигурации на Синерджи (*.conf);; Всички файлове (*.*)</translation>
|
||||
<source>Barrier Configurations (*.conf)</source>
|
||||
<translation type="finished">Конфигурации на Синерджи (*.conf)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="src/main.cpp" line="119"/>
|
||||
|
|
Binary file not shown.
|
@ -648,13 +648,18 @@ To automatically trust this fingerprint for future connections, click Yes. To re
|
|||
<name>QObject</name>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="60"/>
|
||||
<source>Barrier Configurations (*.sgc);;All files (*.*)</source>
|
||||
<translation type="finished">Configuracions Barrier (*.sgc);;Tots els arxius (*.*)</translation>
|
||||
<source>All files (*.*)</source>
|
||||
<translation type="finished">Tots els arxius (*.*)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="60"/>
|
||||
<source>Barrier Configurations (*.sgc)</source>
|
||||
<translation type="finished">Configuracions Barrier (*.sgc)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="67"/>
|
||||
<source>Barrier Configurations (*.conf);;All files (*.*)</source>
|
||||
<translation type="finished">Configuracions Barrier (*.conf);;Tots els arxius (*.*)</translation>
|
||||
<source>Barrier Configurations (*.conf)</source>
|
||||
<translation type="finished">Configuracions Barrier (*.conf)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="src/main.cpp" line="119"/>
|
||||
|
@ -900,8 +905,8 @@ To automatically trust this fingerprint for future connections, click Yes. To re
|
|||
<source>Drag new screens to the grid or move existing ones around.
|
||||
Drag a screen to the trashcan to delete it.
|
||||
Double click on a screen to edit its settings.</source>
|
||||
<translation type="finished">Arrossega noves pantalles a la graella o mou les actuals al voltant.
|
||||
Arrossega una pantalla a la paperera per eliminar-la.
|
||||
<translation type="finished">Arrossega noves pantalles a la graella o mou les actuals al voltant.
|
||||
Arrossega una pantalla a la paperera per eliminar-la.
|
||||
Fes doble clic a una pantalla per editar la seva configuració.</translation>
|
||||
</message>
|
||||
<message>
|
||||
|
@ -1330,7 +1335,7 @@ p, li { white-space: pre-wrap; }
|
|||
Server response:
|
||||
|
||||
%1</source>
|
||||
<translation type="finished">Error inici de sessió, hi ha hagut un error.
|
||||
<translation type="finished">Error inici de sessió, hi ha hagut un error.
|
||||
Resposta del servidor:
|
||||
%1</translation>
|
||||
</message>
|
||||
|
|
Binary file not shown.
|
@ -648,13 +648,18 @@ To automatically trust this fingerprint for future connections, click Yes. To re
|
|||
<name>QObject</name>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="60"/>
|
||||
<source>Barrier Configurations (*.sgc);;All files (*.*)</source>
|
||||
<translation type="finished">Nastavení Barrier (*.sgc);;Všechny soubory (*.*)</translation>
|
||||
<source>All files (*.*)</source>
|
||||
<translation type="finished">Všechny soubory (*.*)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="60"/>
|
||||
<source>Barrier Configurations (*.sgc)</source>
|
||||
<translation type="finished">Nastavení Barrier (*.sgc)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="67"/>
|
||||
<source>Barrier Configurations (*.conf);;All files (*.*)</source>
|
||||
<translation type="finished">Nastavení Barrier (*.conf);;Všechny soubory (*.*)</translation>
|
||||
<source>Barrier Configurations (*.conf)</source>
|
||||
<translation type="finished">Nastavení Barrier (*.conf)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="src/main.cpp" line="119"/>
|
||||
|
|
Binary file not shown.
|
@ -648,13 +648,18 @@ To automatically trust this fingerprint for future connections, click Yes. To re
|
|||
<name>QObject</name>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="60"/>
|
||||
<source>Barrier Configurations (*.sgc);;All files (*.*)</source>
|
||||
<translation type="finished">Cyfluniadau Barrier (*.sgc);;Pob ffeil (*.*)</translation>
|
||||
<source>All files (*.*)</source>
|
||||
<translation type="finished">Pob ffeil (*.*)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="60"/>
|
||||
<source>Barrier Configurations (*.sgc)</source>
|
||||
<translation type="finished">Cyfluniadau Barrier (*.sgc)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="67"/>
|
||||
<source>Barrier Configurations (*.conf);;All files (*.*)</source>
|
||||
<translation type="finished">Cyfluniadau Barrier (*.conf);;Pob ffeil (*.*)</translation>
|
||||
<source>Barrier Configurations (*.conf)</source>
|
||||
<translation type="finished">Cyfluniadau Barrier (*.conf)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="src/main.cpp" line="119"/>
|
||||
|
|
Binary file not shown.
|
@ -648,13 +648,18 @@ To automatically trust this fingerprint for future connections, click Yes. To re
|
|||
<name>QObject</name>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="60"/>
|
||||
<source>Barrier Configurations (*.sgc);;All files (*.*)</source>
|
||||
<translation type="finished">Barrier-konfigurationer (*.sgc);;Alle filer (*.*)</translation>
|
||||
<source>All files (*.*)</source>
|
||||
<translation type="finished">Alle filer (*.*)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="60"/>
|
||||
<source>Barrier Configurations (*.sgc)</source>
|
||||
<translation type="finished">Barrier-konfigurationer (*.sgc)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="src/MainWindow.cpp" line="67"/>
|
||||
<source>Barrier Configurations (*.conf);;All files (*.*)</source>
|
||||
<translation type="finished">Barrier-konfigurationer (*.conf);;Alle filer (*.*)</translation>
|
||||
<source>Barrier Configurations (*.conf)</source>
|
||||
<translation type="finished">Barrier-konfigurationer (*.conf)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="src/main.cpp" line="119"/>
|
||||
|
@ -1329,7 +1334,7 @@ p, li { white-space: pre-wrap; }
|
|||
Server response:
|
||||
|
||||
%1</source>
|
||||
<translation type="finished">Fejl i login, en fejl opstod.
|
||||
<translation type="finished">Fejl i login, en fejl opstod.
|
||||
Server svar:
|
||||
%1</translation>
|
||||
</message>
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue