TheAssassin
0d57e9ae9b
Log error when pipe creation fails
2020-10-05 22:31:16 +02:00
TheAssassin
407ecc408d
Read subprocesses' pipes until they're empty
2020-09-22 13:04:23 +02:00
TheAssassin
8ee0e43c23
Switch to new subprocess lib in type 0 plugins, mk. 3
...
This commit fixes the remaining buffer issues by introducing a little more complexity. It shall be refactored in the future to decrease complexity again, but for now, it works well and function is more important than form at this point.
CC #143
2020-09-04 18:02:40 +02:00
TheAssassin
e9bbbc80f4
Switch to new subprocess lib in type 0 plugins, mk. 2
...
Apparently fixes all buffer-related crashes, but there's a few minor bugs left.
CC #143
2020-08-31 08:39:43 +02:00
TheAssassin
68f4655fc4
Add method to write from buffers to ldLog streams
2020-08-31 06:30:06 +02:00
TheAssassin
1072c6d9f0
Improve check_output performance
2020-08-31 05:08:24 +02:00
TheAssassin
f33dc8dd34
Switch to new subprocess lib in type 0 plugins, mk. 1
2020-08-31 04:41:01 +02:00
TheAssassin
6621f1edf7
Forgot to add pipe reader to CMake
2020-08-31 04:20:40 +02:00
TheAssassin
ee73ac6c8e
Use new pipe_reader in subprocess's check_output
...
The class will read until the process quits (or until memory's up).
TODO: reduce load on CPU with some sleep (right now, it's pretty much some busy waiting)
2020-08-31 04:20:03 +02:00
TheAssassin
66691ee882
Add new helper class pipe reader
...
Implements synchronous, non-block reading from pipes.
2020-08-28 17:36:56 +02:00
TheAssassin
e91b459fce
Use std::distance instead of pointer arithmetics
2020-08-08 11:54:58 +02:00
TheAssassin
3f86f178a5
Use classic C string handling
...
That way, we don't have to allocate memory, and it's also shorter.
2020-08-08 11:49:17 +02:00
TheAssassin
a8975e0e50
Clean up memory in case exec* fails
...
Prevents memory leaks.
2020-08-08 11:44:21 +02:00
TheAssassin
6c47939fdc
Fix initialization bug
2020-08-08 11:34:02 +02:00
TheAssassin
8663e5bf26
Update license information in help text
2020-08-08 01:06:51 +02:00
TheAssassin
89493e399b
Build fully static strip binary
2020-08-08 00:47:54 +02:00
TheAssassin
4d999ef5c6
Build somewhat static strip ourselves
2020-08-08 00:30:28 +02:00
TheAssassin
b39dfa6591
Fix static binaries handling
2020-08-08 00:30:28 +02:00
TheAssassin
484ff3f004
Fix C string processing bug
...
Well, makes sense now that I look at it... but caused a couple of hours worrying why my child processes were crashing until I noticed it'd only happen if I specified custom environment variables...
2020-08-08 00:30:28 +02:00
TheAssassin
8b604871cc
Refactor duplicate code into static method
2020-08-08 00:30:28 +02:00
TheAssassin
88dd09f2d1
Set all variables to defaults in header
2020-08-08 00:30:28 +02:00
TheAssassin
d43e8a42bf
Fix whitespace
2020-08-08 00:30:28 +02:00
TheAssassin
5feef7880e
Try to fix waitpid issues
2020-08-08 00:30:28 +02:00
TheAssassin
2b2c6a913f
Set default value
2020-08-07 21:22:58 +02:00
TheAssassin
aeb0bfa98b
Use consistent error message for all plugins
2020-08-07 21:22:58 +02:00
TheAssassin
37aa37f5fe
Fix behavior of close()
...
The implementation was obviously wrong/incomplete.
2020-08-07 21:22:58 +02:00
TheAssassin
59a8ec41ba
Replace cpp-subprocess with own linuxdeploy-subprocess
2020-08-07 21:22:58 +02:00
TheAssassin
4a0cfe323d
Require newer CMake version only for static builds
2020-08-07 21:22:58 +02:00
TheAssassin
c895a1dc59
Add kill and poll features for processes
2020-08-07 21:22:58 +02:00
TheAssassin
80a5667ca7
Check waitpid() for errors
2020-08-07 21:22:58 +02:00
TheAssassin
2425ccc832
Extract process handling into separate class
...
Needed for plugins' subprocess handling.
2020-08-07 21:22:58 +02:00
TheAssassin
55b2d00f23
Add reusable assert template
2020-08-07 21:22:58 +02:00
TheAssassin
e1f6da17b4
Add basic subprocess micro library
...
cpp-subprocess does not work when linked statically for some weird reason. Therefore, we're going to ship our own.
2020-08-07 21:22:58 +02:00
TheAssassin
326b002ed5
Fetch up-to-date CMake for AppImage builds
2020-08-07 21:22:58 +02:00
TheAssassin
86d4404a16
Try to use target_link_options again
2020-08-07 21:22:58 +02:00
TheAssassin
cbfbb1ee2d
Debug CI build issues mk. 1
2020-08-07 21:22:58 +02:00
TheAssassin
5fde708954
Improve CMake check
2020-08-06 14:44:00 +02:00
TheAssassin
dc07fbd401
Build static binaries for releases on Travis
2020-08-06 14:10:57 +02:00
TheAssassin
5b713b3bee
Add support for fully static builds
2020-08-06 02:07:31 +02:00
TheAssassin
5644d5ca06
Add license notices to binary for dependencies
...
Was long overdue.
2020-08-06 01:19:29 +02:00
TheAssassin
557bad2241
Add --deploy-deps-only
2020-07-15 03:17:37 +02:00
TheAssassin
590a746882
Replace std::cerr messages with ldLog
...
Was long overdue now. Makes for a consistent logging, and helps communicate that the messages are errors to the user.
2020-07-15 03:10:12 +02:00
TheAssassin
a609adb4f5
Merge pull request #135 from komputerwiz/master
...
Fix update information used by Travis builds
2020-07-05 20:41:00 +02:00
Matthew Barry
591e21a766
fix update information used by Travis builds
...
Seems like this was overlooked by commit 2af5430 when fixing #126
2020-07-05 12:50:47 -05:00
TheAssassin
0f3a118687
Add param to automatically rename deployed icons
...
Useful e.g., when passing multiple icons with different resolutions via -i, if they have the resolution in the filename.
Also removes all traces of that appName concept that has been abandoned.
2020-06-11 21:04:33 +02:00
TheAssassin
1c0ce6a0a5
Merge pull request #132 from X0rg/patch-1
...
Update README.md with CPU-X project
2020-05-24 01:50:12 +02:00
Xorg
2f00292756
Update README.md with CPU-X project
2020-05-24 01:00:32 +02:00
TheAssassin
f24c167722
Add $LINUXDEPLOY for input plugins
...
The input plugins can use this environment variable to call linuxdeploy themselves. This can be very handy to have it deploy additional dependencies on libraries they copy themselves.
An alternative approach is to simply use liblinuxdeploy inside the plugin, like the Qt plugin does.
2020-05-03 18:32:55 +02:00
TheAssassin
2af54304e2
Fix update information
...
Closes #126 .
2020-04-08 23:41:58 +02:00
TheAssassin
4391ad24d9
Merge pull request #125 from d1vanov/master
...
Fix links in README.md
2020-04-04 16:19:13 +02:00
Dmitry Ivanov
f3ae65bc57
Fix links in README.md
2020-04-04 17:17:41 +03:00
TheAssassin
d086da38c4
Allow users to use custom patchelf
...
Fixes #120 .
2020-02-06 02:34:37 +01:00
TheAssassin
652ef5a215
Use the right method to resolve symlinks
...
Just checked with absolute, it doesn't always resolve symlinks. canonical is supposed to do that according to https://www.boost.org/doc/libs/1_48_0/libs/filesystem/v3/doc/reference.html#Canonical-path .
2019-12-13 17:53:28 +01:00
TheAssassin
2b13c52452
Workaround for ldd bug
...
Closes #110 .
See https://sourceware.org/bugzilla/show_bug.cgi?id=25263 for more information.
2019-12-13 17:49:22 +01:00
TheAssassin
c45cd46319
Move which to utils module
...
Also uses the native split functionality provided by the utils module
instead of some external dependency's.
Preparation for using this method in plugins such as the Qt plugin.
2019-11-19 11:28:24 +01:00
TheAssassin
1bd5453c61
Fix detection of copyright tools
...
CC #104
2019-11-18 23:13:44 +01:00
TheAssassin
9783db602e
Quick fix unavailability of which command
...
CC #104
2019-11-18 20:44:53 +01:00
TheAssassin
6cfa741f40
Add missing newline ( fixes #102 )
2019-11-13 15:31:52 +01:00
TheAssassin
1be3327a11
Use own prebuilt CMake
2019-09-28 15:25:13 +02:00
TheAssassin
cca5ad2e07
Merge pull request #96 from linuxdeploy/completely-switch-to-centos6
...
Build all binaries on CentOS 6
2019-09-28 04:22:40 +02:00
TheAssassin
058832615c
Fix binaries upload
2019-09-28 04:02:00 +02:00
TheAssassin
cf5927c521
Make sure old build script artifacts carry different name
2019-09-28 03:49:57 +02:00
TheAssassin
103b637944
Make CentOS 6 build script equivalent to old one
2019-09-28 03:49:15 +02:00
TheAssassin
58189efba6
Build binaries on CentOS 6
2019-09-28 03:48:53 +02:00
TheAssassin
019f902b17
Fix Docker build artifacts handling
2019-09-28 03:48:18 +02:00
TheAssassin
f97d1e9a01
Improve shell use of Docker images
2019-09-28 03:47:24 +02:00
TheAssassin
543078c11e
Clean up Dockerfile
2019-09-28 03:47:05 +02:00
TheAssassin
9ddb0d7650
Remove old debug code
2019-09-28 01:33:45 +02:00
TheAssassin
8252503d97
Merge pull request #95 from linuxdeploy/centos6-builds
...
Centos6 builds
2019-09-27 21:59:30 +02:00
TheAssassin
d312ba07d0
No need to run install step for Docker builds
2019-09-27 21:34:06 +02:00
TheAssassin
d3853e961b
Clean up Dockerfile
2019-09-27 21:32:44 +02:00
TheAssassin
ef7b397d4a
Use devtoolset to compile dependencies in CentOS 6 builds
2019-09-27 21:32:27 +02:00
TheAssassin
330f8a393f
Use devtoolset 7 for 64-bit CentOS builds
2019-09-27 21:32:09 +02:00
TheAssassin
77ad746c5d
Build i386 CentOS 6 binaries on Travis
2019-09-27 21:15:52 +02:00
TheAssassin
cd04cc260e
32-bit CentOS 6 builds
2019-09-27 21:09:10 +02:00
TheAssassin
3c4580a325
Allow bundling of additional binaries without moving them
...
Required to bundle e.g., applications' plugins together with their
dependencies without moving them out of position so they can still
be found by the original apps.
2019-09-22 19:06:00 +02:00
TheAssassin
f20af7dc67
Refactor and improve relative directory calculation
...
Also makes variable names less ambiguous and adds some documenting
comments.
2019-09-22 18:58:21 +02:00
TheAssassin
0ba33879b0
Fix argument forwarding in generated AppRun script
2019-09-12 16:35:09 +02:00
TheAssassin
f3b7c5ab73
Never ask to integrate linuxdeploy AppImages
2019-09-06 15:47:45 +02:00
TheAssassin
6bc354bacb
Update linuxdeploy-desktopfile
2019-09-06 03:13:21 +02:00
TheAssassin
d26947985d
Add tests only if they are built and can therefore be run
2019-09-06 03:13:05 +02:00
TheAssassin
2cc962a344
Update README.md
2019-08-22 15:08:04 +02:00
TheAssassin
612bf962a3
Another missing return statement
2019-08-15 01:10:02 +02:00
TheAssassin
19d958d30f
There should at least be debug messages for potential errors
2019-08-15 00:00:19 +02:00
TheAssassin
fc82028af4
More forgotten return statements in bool methods
2019-08-14 23:57:50 +02:00
TheAssassin
2d45ef4c72
Fix missing return statement in static bool method
...
Looks like devtoolset compiler behaves differently on bool methods
without an explicit return statement. Kind of strange.
Undefined behavior?
2019-08-14 23:42:57 +02:00
TheAssassin
470caa3db1
Replace ln based subprocess symlinking with boost functionality
2019-08-14 23:25:21 +02:00
TheAssassin
d24e6dac56
Clean up symlink helper
2019-08-14 22:47:59 +02:00
TheAssassin
913f5bc6cc
Mirror package was hosted on disappeared
2019-08-14 16:12:19 +02:00
TheAssassin
4746fd0e87
Merge pull request #87 from linuxdeploy/apprun-hooks
...
AppRun hooks for plugins
2019-08-14 16:10:45 +02:00
TheAssassin
de363bc90b
Merge branch 'master' into apprun-hooks
2019-08-14 15:14:02 +02:00
TheAssassin
8e9114b7c5
Improve generated AppRun script
2019-08-14 14:36:06 +02:00
TheAssassin
72e4fb49e0
Don't try to move if there's no need to do so
2019-08-14 14:35:53 +02:00
TheAssassin
abdefbc0ff
Use a custom variable to support test runs from IDE better
...
When your IDE is running as an AppImage, the $APPRUN variable is
already set in the built-in terminal. Now of course you could just
calculate the path of $APPRUN yourself and force-overwrite it in that
script; however that's more effort and more likely to break.
Therefore it's easier to just introduce and use a custom variable.
2019-08-14 14:33:25 +02:00
TheAssassin
58845cee8f
Support for AppRun hooks installed by plugins, mk. 1
2019-08-14 04:13:30 +02:00
TheAssassin
5bc8840003
Mark methods const where possible
2019-08-14 04:11:36 +02:00
TheAssassin
1cb5a742db
Break up deployment algorithm into independent methods
...
That makes maintenance easier.
2019-08-14 02:28:21 +02:00
TheAssassin
142facd986
Improve method
2019-08-14 01:35:31 +02:00
TheAssassin
aced62378a
Move AppDir root deployment into separate class
...
Makes adding more features easier, as there's a clear defined interface
to the class and the mechanism can be split into more methods more
easily without bloating the AppDir class further.
2019-08-14 01:35:23 +02:00
TheAssassin
3fd595a63b
Expose file copying helper in public interface
2019-08-14 01:33:09 +02:00
TheAssassin
9dc10fc0fc
Method can be static
2019-08-14 01:08:20 +02:00
TheAssassin
3183ee2f4f
Mark methods const where possible
2019-07-27 16:37:16 +02:00
TheAssassin
374e17b5e3
Merge pull request #85 from linuxdeploy/update_cpp_subprocess
...
Update cpp-subprocess to ensure that the bug in util::read_all() is fixed
2019-07-25 20:32:12 +02:00
TheAssassin
d9681ccf5c
Merge branch 'master' into update_cpp_subprocess
2019-07-25 20:10:35 +02:00
Alexis Lopez Zubieta
57dbdc6933
Update cpp-subprocess to ensure that the bug in util::read_all() is fixed
2019-07-25 13:08:21 -05:00
TheAssassin
3d766446d9
Improve log message
2019-07-25 17:47:34 +02:00
TheAssassin
e24b46d291
Change method name to something more meaningful
2019-07-25 17:44:50 +02:00
TheAssassin
47b8370751
Method can be static
2019-07-25 17:43:45 +02:00
TheAssassin
0d055ebb81
Merge pull request #84 from darealshinji/patch-1
...
remove all comments
2019-07-07 16:06:52 +02:00
darealshinji
ce5aecead5
remove all comments
...
Otherwise the generated header contains entries like this:
``` c
"libxcb-dri2.so.0",
"#",
"https://github.com/probonopd/linuxdeployqt/issues/331#issuecomment-442276277 ",
"libxcb-dri3.so.0",
"#",
"https://github.com/AppImage/AppImages/issues/348 ",
```
2019-07-06 20:21:16 +02:00
TheAssassin
f01ae51f58
Merge pull request #79 from haampie/fix-deployment-of-dependencies
...
Fix an issue where dependencies are not deployed when calling deployLibrary only
2019-06-10 20:31:12 +02:00
Harmen Stoppels
0e95f19a75
Make deployLibrary deploy its dependencies by default, and avoid unnecessary recursion by making deployElfDependencies not deploy its deps of deps
2019-06-10 20:12:30 +02:00
TheAssassin
94bb814d69
Merge pull request #78 from haampie/fix-remove-recursion-elf-deployment
...
Remove recursion of ELF deployment since ldd already does that for us
2019-06-09 21:08:37 +02:00
Harmen Stoppels
159b082658
Remove recursion of ELF deployment since ldd already does that for us
2019-06-09 14:43:59 +02:00
TheAssassin
2a1127d7e8
Show acceptable icon sizes in error message
...
CC #75 .
2019-05-24 23:25:03 +02:00
TheAssassin
3f81577b04
Fix missing newline in error messages
2019-05-24 22:49:19 +02:00
TheAssassin
834b467a41
Fix data printed in error message
2019-05-24 22:48:53 +02:00
TheAssassin
46ccb8965d
Add missing valid resolutions (CC #75 )
2019-05-24 16:19:36 +02:00
TheAssassin
5c3a51fd48
Merge pull request #71 from dbarach/master
...
Add a workspace sanity check
2019-03-27 17:12:19 +01:00
Dave Barach
44cb9466b3
Merge branch 'master' of https://github.com/dbarach/linuxdeploy
...
Signed-off-by: Dave Barach <dave@barachs.net >
2019-03-27 11:08:11 -04:00
Dave Barach
1dfcab8556
Add a workspace sanity check
...
Check to make sure that one source file in one of the git submodules
is present. If not, throw a fatal error which explains what probably
went wrong, and how to fix it:
"Missing submodule(s), please 'git clone --recurse-submodules...'"
Signed-off-by: Dave Barach <dave@barachs.net >
2019-03-27 11:03:25 -04:00
Dave Barach
e62e8d8396
Add a workspace sanity check
...
Check to make sure that one source file in one of the git submodules
is present. If not, throw a fatal error which explains what probably
went wrong, and how to fix it:
"Missing submodule(s), please 'git clone --recurse-submodules...'"
Signed-off-by: Dave Barach <dave@barachs.net >
2019-03-27 10:23:47 -04:00
TheAssassin
875842ee3b
Fix linking issues
2019-03-21 15:13:08 +01:00
TheAssassin
a4fe77305d
Reduce redundancy when adding boost header-only libs
2019-03-21 11:51:06 +01:00
TheAssassin
4f44dcf954
Fix Docker build script path issue
2019-03-21 11:28:15 +01:00
TheAssassin
44b234734b
Upload CentOS 6 binaries
2019-03-21 11:27:02 +01:00
TheAssassin
871f1d6e99
Fix permissions
2019-03-21 11:20:45 +01:00
TheAssassin
f06643ea5f
Experimental CentOS 6 build
2019-03-21 11:13:44 +01:00
TheAssassin
6baa443fd7
appimagetool is being annoying
2019-03-21 10:32:17 +01:00
TheAssassin
77c52883f1
Remove deprecated debug code
2019-03-20 17:25:13 +01:00
TheAssassin
157861d236
Make symlinking work for older versions of ln, too
2019-03-20 17:23:14 +01:00
TheAssassin
32dca18eee
We don't use exceptions for error communication
2019-03-20 17:22:46 +01:00
TheAssassin
1f498772b4
Properly handle nonexisting files
2019-02-23 18:01:47 +01:00
TheAssassin
f9fc51a832
Improve search for patchelf
...
CC https://github.com/linuxdeploy/linuxdeploy-plugin-qt/issues/24 .
2019-02-20 13:13:34 +01:00
TheAssassin
a3e06e0024
Statically link desktopfile library
2019-02-07 00:46:59 +01:00
TheAssassin
956a253428
Return final deployment path
...
deployFile allows for specifying a directory as destination, and copies
files into there, simulating the behavior of tools like cp. To do that,
it creates the directory, then appends the filename of the input file
to it and uses that as destination for the "copy file" call.
It's pretty handy for some applications to get the full path of the
new file returned by this method directly (doesn't have to implement
this concatenation more than once).
2019-02-06 23:23:48 +01:00
TheAssassin
ce6597fb9d
Better handle debug-symbols-only ELF files
2019-01-29 01:00:36 +01:00
TheAssassin
028d85a070
Explicitly disable all copy/move(-assignment) behavior
2019-01-29 00:03:35 +01:00
TheAssassin
8df605cb19
Use shared pointer to manage PImpl object
2019-01-29 00:02:49 +01:00
TheAssassin
3a0870842c
Update linuxdeploy-desktopfile
2019-01-28 16:52:20 +01:00
TheAssassin
1510d0c333
Update README.md
...
[ci skip]
2019-01-07 15:45:43 +01:00
TheAssassin
7c8ab1c773
Fix desktop file deployment
2018-12-22 23:26:28 +01:00
TheAssassin
5374e7ece9
Switch to extracted desktop file library
2018-12-22 23:09:04 +01:00
TheAssassin
6b715c691a
Give test case more suitable name
2018-12-22 23:02:39 +01:00
TheAssassin
78f33a7190
Move linuxdeploy-specific helper out of desktop file class
2018-12-22 23:02:15 +01:00
TheAssassin
3df27ba175
Add proper desktop file
...
The auto-generated desktop file does trigger integration tools like
AppImageLauncher, this one shows it's a CLI tool and should just be
launched now.
2018-12-21 19:08:33 +01:00
TheAssassin
2ea9a367b5
Check whether parsing with comments is supported
2018-12-21 19:08:33 +01:00
TheAssassin
673ccf5691
Improve simple desktop file test
2018-12-21 19:08:33 +01:00
TheAssassin
d743e11486
Merge pull request #63 from linuxdeploy/issue-62
...
Fix handling of localized desktop file entries
2018-12-09 16:13:06 +01:00
TheAssassin
cddefc3806
Validate some constraints on localized keys
2018-12-06 12:09:18 +01:00
TheAssassin
1f5315926d
Increase readability
2018-12-06 12:08:51 +01:00
TheAssassin
a12f3ac0fe
Improve error message
2018-12-06 11:56:21 +01:00
TheAssassin
640b756a7f
Temporarily allow localization brackets in key names
...
Must be revised when introducing proper localization support.
2018-12-06 11:49:14 +01:00
TheAssassin
d486f936e2
Test localized keys support
...
This is the unit test that was missing to cover the use case described
in #69 .
2018-12-06 11:47:25 +01:00
TheAssassin
b7faefdc56
Merge pull request #60 from linuxdeploy/issue-59
...
Ship 32-bit strip binary
2018-11-24 00:44:39 +01:00
TheAssassin
4585cb1a28
Download known working version of strip for i386, mk. 2
2018-11-24 00:34:38 +01:00
TheAssassin
23c85c732a
Download known working version of strip for i386
2018-11-24 00:04:40 +01:00
TheAssassin
b3e259bda1
Merge branch 'master' into issue-59
2018-11-23 22:08:37 +01:00
TheAssassin
d42abe363c
Merge pull request #61 from linuxdeploy/debug-desktopfile-unit-tests-in-release-builds
...
Fix desktop file parser unit test failures
2018-11-23 22:08:03 +01:00
TheAssassin
ef90b09c79
Fix remaining issues with usage of assert
2018-11-23 20:52:54 +01:00
TheAssassin
ce097235f2
Note for self: -O1+ strips out expressions surrounded by assert()
2018-11-23 18:05:56 +01:00
TheAssassin
d65574544f
Ship 32-bit strip binary, mk. 3
2018-11-23 17:55:53 +01:00
TheAssassin
b38612d07e
Ship 32-bit strip binary, mk. 2
2018-11-23 17:17:38 +01:00
TheAssassin
9cddf75449
Ship 32-bit strip binary
2018-11-23 16:32:43 +01:00
TheAssassin
b974f44ffd
Debug desktop file unit tests, mk.1
...
They're only broken on non-debug builds, so it's quite likely the
optimizations break the code.
2018-11-21 00:03:20 +01:00
TheAssassin
ecaeda4533
Deactivate unit tests that fail for no apparent reason on Travis CI
...
Will re-enable and debug them eventually. Right now, they prevent
binaries from being published, which is really a problem.
2018-11-19 22:25:20 +01:00
TheAssassin
ccfd05b5e0
Improve DesktopFile's comparison operators
2018-11-19 22:12:14 +01:00
TheAssassin
6cf9bc55a7
Fix comparison editor
2018-11-19 22:06:29 +01:00
TheAssassin
1e3e074f35
Properly copy desktop file reader
2018-11-19 22:06:08 +01:00
TheAssassin
7b16864dbe
Add missing return statement
2018-11-19 21:51:26 +01:00
TheAssassin
0b5ab2fc36
Fix return type of setter
2018-11-19 21:51:26 +01:00
TheAssassin
b3d0e7f20f
Merge pull request #57 from linuxdeploy/fix-plugin-detection
...
Fix plugin detection
2018-11-19 21:09:23 +01:00
TheAssassin
132931772c
Fix directory check
2018-11-19 20:52:45 +01:00
TheAssassin
6f7a2fd54a
Reduce verbosity of debug logging related to plugin detection
2018-11-19 20:50:09 +01:00
TheAssassin
c4258759b4
Make sure directories aren't falsely recognized as plugins
2018-11-19 20:48:04 +01:00
TheAssassin
786a24cb25
Fix CMake syntax
2018-11-16 00:25:27 +01:00
TheAssassin
35f1acf00d
Cleaning up coverage data after creating them makes no sense
...
The cleanup shall take place before running the test binaries which
create the new data, not afterwards.
2018-11-16 00:23:03 +01:00
TheAssassin
be0a891770
Improve test fixture names
2018-11-15 23:45:42 +01:00
TheAssassin
92a1370b30
Be able to use EXPECT_EQ with DesktopFile objects
...
GoogleTest internally uses operator==(first, second) instead of
first.operator==(second). By implementing the operators outside the
classes, GoogleTest can be made happy.
2018-11-15 23:36:04 +01:00
TheAssassin
541da1b573
Test (in)equality operators
2018-11-15 23:32:36 +01:00
TheAssassin
f274de8045
Make sure default keys don't overwrite existing ones
2018-11-15 21:24:08 +01:00
TheAssassin
6a951558ce
Use assert to check for impossible scenarios
2018-11-15 21:23:43 +01:00
TheAssassin
a4b13a1916
Clean up coverage data before new run
...
This makes sure that reports on subsequent runs are accurate.
2018-11-15 21:19:22 +01:00
TheAssassin
1c4e4a3888
Remove redundant setters/getters
2018-11-15 20:53:16 +01:00
TheAssassin
e4bf795211
No need for a string conversion operator
...
Doesn't make sense here anyway.
2018-11-15 20:44:43 +01:00
TheAssassin
e994eacfa0
Prevent unnecessary log messages in unit tests
2018-11-15 19:08:03 +01:00
TheAssassin
beb2ee15be
Don't use exceptions to detect abnormal behavior
...
https://isocpp.org/wiki/faq/exceptions#why-not-exceptions
2018-11-15 18:48:58 +01:00
TheAssassin
2e1a37ccf5
Fix path to test data
2018-11-15 18:05:08 +01:00
TheAssassin
520ac6de9b
Reduce amount of implicit behavior in desktop file parser
2018-11-15 18:03:46 +01:00
TheAssassin
1bcdcab057
Restructure desktop file tests, build single binary
2018-11-15 17:58:02 +01:00
TheAssassin
1d9c907ec3
Merge pull request #55 from linuxdeploy/test_desktopfile_parser_conformance
...
Test desktopfile parser conformance
2018-11-15 17:51:06 +01:00
TheAssassin
3e584f5551
Merge branch 'master' into test_desktopfile_parser_conformance
2018-11-15 17:21:23 +01:00
TheAssassin
f7975f1b80
Use return types with guaranteed sizes
...
This will ensure the conversions work equally on both 32-bit platforms
(int == long on 32-bit Linux systems, on 64 bit long > int).
2018-11-15 17:19:42 +01:00
TheAssassin
4af76a92c5
Fix duplicate key detection
2018-11-15 13:41:53 +01:00
TheAssassin
b6f5f371b6
Avoid copying data more often than necessary c
2018-11-15 13:40:22 +01:00
TheAssassin
d10e0614a1
Increase build speed of tests
2018-11-15 13:39:17 +01:00
TheAssassin
4ffa1a66ae
Improve code style
2018-11-15 13:22:41 +01:00
TheAssassin
9707b81931
Fix basic format header checks
2018-11-15 13:14:31 +01:00
TheAssassin
21b12cc6b6
Use EXPECT instead of ASSERT
2018-11-15 13:01:10 +01:00
TheAssassin
ae61f6b9d8
Update README.md
2018-11-15 01:35:09 +01:00
TheAssassin
b43b04f693
Check for valid and invalid keys (spec/basic format)
2018-11-15 01:29:14 +01:00
TheAssassin
61fb8bebdb
Fix execution of desktop file tests
2018-11-15 00:58:56 +01:00
TheAssassin
002ba4a496
Split two checks to make sure they're tested separately
...
Otherwise, one test case is always uncovered (either the first one
passes and the second one triggers, or the first one triggers and the
second one is never tested).
2018-11-14 11:22:38 +01:00
TheAssassin
244d82fede
Test behavior on lines with multiple = characters
2018-11-14 11:19:02 +01:00
TheAssassin
9f8121ebff
Check whether invalid lines are recognized
2018-11-14 11:16:35 +01:00
TheAssassin
80adfa8872
Recognize broken section headings, mk. 4
2018-11-14 11:14:24 +01:00
TheAssassin
4a07c8151e
Make sure errors are recognized in all sections, not just the first one
2018-11-14 11:10:34 +01:00
TheAssassin
ded20c162d
Recognize broken section headings, mk. 3
2018-11-14 10:59:17 +01:00
TheAssassin
bf152a509b
Recognize broken section headings, mk. 2
2018-11-14 10:46:48 +01:00
TheAssassin
dc8f446ca4
Recognize broken section headings, mk. 1
2018-11-14 10:41:47 +01:00
TheAssassin
fbc1d78122
Use custom exceptions for error handling
2018-11-14 10:31:41 +01:00
TheAssassin
9b2ff305e0
Merge pull request #52 from linuxdeploy/generate-coverage-reports
...
Generate coverage reports
2018-11-10 19:54:05 +01:00
TheAssassin
ee0acdb6f1
Patchelf is indeed also needed by the integration tests
2018-11-10 14:18:11 +01:00
TheAssassin
e069f6cd22
Fix typos
2018-11-10 14:03:23 +01:00
TheAssassin
74d482612a
Add support for ccache
2018-11-10 14:03:11 +01:00
TheAssassin
8f2a49daf0
Fix build command syntax
2018-11-10 14:02:53 +01:00
TheAssassin
4a9e0583d0
Build in parallel before running coverage tools
...
Also, don't run tests parallelized any more, because the output is
unreadable.
2018-11-10 13:24:01 +01:00
TheAssassin
d83ca617e6
Fix release build check
2018-11-10 13:10:47 +01:00
TheAssassin
16483c38e4
Build binaries before running tests when calculating coverage
2018-11-10 13:04:21 +01:00
TheAssassin
65ef0bd7ed
Travis accepts but doesn't like multi-value env
2018-11-10 13:00:51 +01:00
TheAssassin
60f2cb78cd
Generate textual coverage reports, mk. 4
...
Fix Travis config syntax
2018-11-10 12:57:29 +01:00
TheAssassin
9b8d7698f4
Remove dependency on lcov
...
We don't use it anyway, but use the more modern and flexible gcovr.
2018-11-10 03:43:51 +01:00
TheAssassin
5b1b91da5f
Generate textual coverage reports, mk. 3
2018-11-10 03:39:34 +01:00
TheAssassin
44571a4c6b
Remove obviously broken release build check
2018-11-10 03:38:56 +01:00
TheAssassin
744368868b
Generate textual coverage reports, mk. 2
2018-11-10 03:36:33 +01:00
TheAssassin
d476f308f8
Generate textual coverage reports, mk. 1
2018-11-10 03:32:50 +01:00
TheAssassin
232a76d1ba
Merge pull request #49 from linuxdeploy/restructure-libraries
...
Restructure libraries
2018-11-10 03:08:35 +01:00
TheAssassin
b97c8b45f5
Fix linking issue
2018-11-10 02:59:31 +01:00
TheAssassin
d6e6cac6e0
Move libraries into directories following package path
2018-11-10 01:43:36 +01:00
TheAssassin
830dc50136
Avoid recompiling code if excludelist hasn't changed
2018-11-10 01:39:55 +01:00
TheAssassin
16ed8bfa6a
Merge pull request #44 from linuxdeploy/issue-39
...
Implement own desktop file parser
2018-11-09 23:06:59 +01:00
TheAssassin
dbfdc6ebe6
Merge branch 'master' into issue-39
2018-11-09 22:19:59 +01:00
TheAssassin
a6b09ee30c
Revert "Create coverage report during build"
...
We cannot test for coverage in a release build, but we don't want to
build in debug mode for released binaries.
We might consider creating a separate coverage target for testing code
coverage.
This reverts commit aaaca8b321 .
2018-11-09 22:17:49 +01:00
TheAssassin
8b8255b158
Clean up redundant includes
2018-11-09 22:04:59 +01:00
TheAssassin
a87fd648e0
Add dedicated test for values with spaces
...
CC @azubieta
2018-11-09 21:28:40 +01:00
TheAssassin
574a883733
Don't require desktop file's path to exist
2018-11-09 21:28:40 +01:00
TheAssassin
aaaca8b321
Create coverage report during build
2018-11-09 21:28:40 +01:00
TheAssassin
22bbd04304
Properly calculate processor count for coverage testing
2018-11-09 21:28:40 +01:00
TheAssassin
96b5c3c479
Generate text report for coverage
2018-11-09 21:28:40 +01:00
TheAssassin
35e67a26bb
Add missing dependencies for boost::lexical_cast
2018-11-09 20:08:11 +01:00
TheAssassin
74fb390e2f
Make sure to include boost::lexical_cast
2018-11-09 18:53:35 +01:00
TheAssassin
3b3f86f9a2
Revert "Remove unused submodule, mk. 2"
...
Was working on the wrong branch.
This reverts commit b1838315d9 .
2018-11-09 18:52:18 +01:00
TheAssassin
e6341435bd
Revert "Make sure to include boost::lexical_cast"
...
Was working on the wrong branch.
This reverts commit e388ad9eb6 .
2018-11-09 18:52:10 +01:00
TheAssassin
e388ad9eb6
Make sure to include boost::lexical_cast
2018-11-09 18:50:44 +01:00
TheAssassin
b1838315d9
Remove unused submodule, mk. 2
2018-11-09 18:50:23 +01:00
TheAssassin
6e525e0a65
Add missing newline
2018-11-09 18:31:27 +01:00
TheAssassin
b540240ba5
Improve efficiency
2018-11-09 18:31:19 +01:00
TheAssassin
5d219c99b7
Remove unnecessary dependency from target
2018-11-09 18:30:47 +01:00
TheAssassin
459c5aad9a
Fix use of DesktopFile class
2018-11-09 18:24:16 +01:00
TheAssassin
c6a517c1f5
Remove unused submodule
2018-11-09 16:07:47 +01:00
TheAssassin
11bbe4d219
Rewrite DesktopFile using own parser
2018-11-09 16:04:40 +01:00
TheAssassin
0d59a27905
Improve test workflow
...
Use ASSERT first to make sure teh function that performs the work has
run as intended, then use EXPECT to make sure all checks are run.
2018-11-09 13:41:32 +01:00
TheAssassin
a4e48db545
Fix include paths
2018-11-09 13:15:03 +01:00
TheAssassin
b56e202c40
Add targets for remaining coverage report types
2018-11-09 03:24:03 +01:00
TheAssassin
8b4feb5fd5
Add data getter
2018-11-09 03:16:14 +01:00
TheAssassin
156b45f819
Mark query function as const
2018-11-09 03:10:36 +01:00
TheAssassin
3e1d340612
Add DesktopFileWriter
2018-11-09 03:05:20 +01:00
TheAssassin
8a2d57e8d5
Move definition of types into DesktopFile
...
Types will be shared with future DesktopFileWriter class.
2018-11-09 02:26:09 +01:00
TheAssassin
be1b2c95d4
Move type definitions into class
2018-11-09 02:14:48 +01:00
TheAssassin
4bb1ef124b
Move into proper namespace
2018-11-09 01:56:05 +01:00
TheAssassin
93c947b56a
Check whether keys and values with spaces are parsed properly
2018-11-09 01:48:44 +01:00
TheAssassin
4bf295d4d6
Validate all values in desktop file
2018-11-09 01:45:36 +01:00
TheAssassin
2c40482bc0
Implement subscript operator returning sections
2018-11-09 01:44:02 +01:00
TheAssassin
a647205226
Implement conversion to double
2018-11-09 01:32:18 +01:00
TheAssassin
73832323c8
Implement actual parsing
2018-11-09 01:12:48 +01:00
TheAssassin
169275e023
Fix semantics of isEmpty()
2018-11-09 00:58:09 +01:00
TheAssassin
78e5d0858e
Add actual data structures
2018-11-09 00:57:06 +01:00
TheAssassin
b4efb2bc56
Increase test coverage
2018-11-09 00:54:32 +01:00
TheAssassin
aa2e8b9105
Allow construction from istream
2018-11-09 00:43:02 +01:00
TheAssassin
793b35dc61
Parse file in constructor
2018-11-09 00:37:58 +01:00
TheAssassin
5ba8b613d6
Fix includes
2018-11-09 00:36:55 +01:00
TheAssassin
75f2511437
Add some convenience function to convert/parse value
2018-11-09 00:08:40 +01:00
TheAssassin
9a4916fe84
Desktop file entry initial commit
2018-11-08 23:08:32 +01:00
TheAssassin
e584088656
Use already existing function to copy data
2018-11-08 22:45:50 +01:00
TheAssassin
8a79cfbe1d
Mark query functions as const
2018-11-08 22:38:29 +01:00
TheAssassin
22ecabc51b
Desktop file parser initial commit
2018-11-08 22:18:23 +01:00
TheAssassin
81dfae892c
Add support for code coverage measurements
2018-11-08 22:17:21 +01:00
TheAssassin
bedd66d161
INI parser now contains a CMake script
2018-11-07 23:20:29 +01:00
TheAssassin
62f04213ce
Use fixed fork of INI parser
2018-11-07 23:20:26 +01:00
TheAssassin
4790fabc44
Revert "Temporary workaround for #39 "
...
Fixed the issue properly in the dependency, therefore the workaround is
no longer needed.
This reverts commit 6112a6353e .
2018-11-07 22:21:52 +01:00
TheAssassin
6112a6353e
Temporary workaround for #39
2018-11-07 20:09:24 +01:00
TheAssassin
82b7ccd76a
Merge pull request #41 from linuxdeploy/integration_test
...
Improve AppDir root files deployment
2018-11-06 15:48:05 +01:00
TheAssassin
4e33e395de
Show warning if existing AppRun is overwritten
2018-11-06 15:39:35 +01:00
Alexis Lopez Zubieta
9d25fee1dc
Make "Deploying custom AppRun" a regular message
2018-11-06 08:26:15 -06:00
Alexis Lopez Zubieta
9d78e0786b
Ensure that custom AppRun are deployed even if no desktop files are found
2018-11-06 07:48:12 -06:00
Alexis Lopez Zubieta
9f20e5829d
Restructure the code in order to make it more clear
2018-11-05 21:26:48 -06:00
Alexis Lopez Zubieta
5055efdc05
Rename linuxdeploy.cpp and linuxdeploy.h to core.cpp and core.h
2018-11-05 18:33:14 -06:00
Alexis Lopez Zubieta
19ecbb2d70
remove empty line
2018-11-05 16:24:09 -06:00
Alexis Lopez Zubieta
0e92331a12
Document linuxdeploy::deployAppDirRootFiles
2018-11-05 16:23:04 -06:00
Alexis Lopez Zubieta
4bf1948774
Document linuxdeploy::getMainDesktopFile
2018-11-05 16:07:01 -06:00
Alexis Lopez Zubieta
f201c57177
Optimize imports
2018-11-05 15:57:37 -06:00
Alexis Lopez Zubieta
d7c0e94f11
Reformat
2018-11-05 15:55:13 -06:00
Alexis Lopez Zubieta
700f6fe15f
Remove declaration of getMainDesktopFile
2018-11-05 15:54:59 -06:00
Alexis Lopez Zubieta
012e621ec5
Throw an exception when no deskotp files are found
2018-11-05 15:47:11 -06:00
Alexis Lopez Zubieta
6c674aa184
Making getMainDesktopFile parameters constant references
2018-11-05 15:43:35 -06:00
Alexis Lopez Zubieta
553bb9fcb0
No need to override constructor
2018-11-05 15:41:06 -06:00
Alexis Lopez Zubieta
906dcab283
Fix code style
2018-11-05 15:40:15 -06:00
Alexis Lopez Zubieta
fc3d80c281
remove duplicated 'public'
2018-11-05 15:39:47 -06:00
Alexis Lopez Zubieta
f0bb1fb472
bring empty line back
2018-11-05 15:39:00 -06:00
Alexis Lopez Zubieta
f3f30166f2
Importing boost::filesystem as bf to keep consistency its usage across the project
2018-11-05 15:38:12 -06:00
Alexis Lopez Zubieta
2210b7e65d
Remove integration test 'build_minimal_appimage_with_custom_apprun'
2018-11-05 15:33:15 -06:00
Alexis Lopez Zubieta
cc800588d2
Optimize imports
2018-11-05 15:28:11 -06:00
Alexis Lopez Zubieta
29cda3b1ac
Change return type to bool
2018-11-05 15:27:58 -06:00
Alexis Lopez Zubieta
16b0a5948a
createLinksInAppDirRoot is capable of dealing with an empty customAppRunPath so there is no need to check it
2018-11-05 15:27:58 -06:00
Alexis Lopez Zubieta
41569a4f53
The ".DirIcon" creation seems not to be responsibility of deployAppDirRootFiles
2018-11-05 15:27:58 -06:00
Alexis Lopez Zubieta
7ff05ca98e
Removing AppRun file existence check as createLinksInAppDirRoot also perform this check
2018-11-05 15:27:58 -06:00
Alexis Lopez Zubieta
cab57f86d6
Put main desktop file lookup into a separated function
2018-11-05 15:27:58 -06:00
Alexis Lopez Zubieta
93fea697e5
Move desktop file deployment away from desktop file lookup
2018-11-05 15:27:58 -06:00
Alexis Lopez Zubieta
bd12fefc35
Complete deployAppDirRootFilesWithExistentAppRun definition
2018-11-05 15:12:27 -06:00
Alexis Lopez Zubieta
2cdedc252c
Replace args::ValueFlagList by vector<string> in deployAppDirRootFiles function signature
2018-11-05 15:12:27 -06:00
Alexis Lopez Zubieta
1fa90fbd5c
Add namespace and prepare unittest
2018-11-05 15:12:27 -06:00
Alexis Lopez Zubieta
7318d68c96
Move deployAppDirRootFiles function into a separated file to allow unit testing
2018-11-05 15:12:27 -06:00
Alexis Lopez Zubieta
e5f4755da7
Move deploy AppDir root files into a separated function
2018-11-05 15:12:27 -06:00
Alexis Lopez Zubieta
31f20a398f
Add integration test to build a minimal appimage with custom AppRun
2018-11-05 15:12:27 -06:00
Alexis LĂłpez Zubieta
d9ca907da8
Add symlinkFile to the public AppDir interface ( #42 )
...
* Add symlinkFile to the public AppDir interface
* Rename AppDir::symlinkFile to AppDir::createSymlink
* change return value to bool
* Remove duplicated header
* Remove blank lines
* Add comment
* Fix test name
* Change createSymlink signature. Name changed to createRelativeSymlink and remove the useRelativePath argument
* Remove commented tests.
2018-11-05 22:10:18 +01:00
TheAssassin
542edaf410
Allow disabling copyright files deployment for debugging
2018-11-04 17:21:36 +01:00
TheAssassin
e683561430
Merge pull request #38 from linuxdeploy/refactor-subprocessing
...
Refactor subprocessing
2018-10-25 15:36:57 +02:00
TheAssassin
0de7caa8ee
Document complex if query
...
[ci skip]
2018-10-25 15:33:22 +02:00
TheAssassin
f1690cc2a3
Use new subprocessing function to create symlinks
2018-10-25 15:18:55 +02:00
TheAssassin
53e0850a2b
Use new subprocessing function to handle calls to strip
2018-10-25 15:17:43 +02:00
TheAssassin
3949a5fc57
Use new subprocessing function to set rpath in ELF files
2018-10-25 15:12:27 +02:00
TheAssassin
001b8f974c
Use new subprocessing function to read rpath in ELF files
2018-10-25 14:58:47 +02:00
TheAssassin
2f5e04ec24
Increase stream buffer size again
2018-10-25 14:38:03 +02:00
TheAssassin
8d01c448d3
Increase subprocess stream reading reliability
2018-10-25 14:37:17 +02:00
TheAssassin
10df75f877
Extract subprocessing into separate library
2018-10-25 14:34:54 +02:00
TheAssassin
0c5b198e2f
Merge pull request #33 from linuxdeploy/tests
...
Add Unit Tests
2018-10-25 01:26:46 +02:00
TheAssassin
5d2984ae02
Merge branch 'master' into tests
2018-10-25 01:21:46 +02:00
TheAssassin
33829c07d0
Remove redundant variables and fix paths
2018-10-25 01:16:05 +02:00
TheAssassin
90f8ed26b8
Fix path in unit test
2018-10-25 01:12:47 +02:00
TheAssassin
cbaa343a82
Add missing trailing newline character
...
[ci skip]
2018-10-25 01:08:52 +02:00
TheAssassin
9cf0663baa
Hardcode all paths to recognize sudden changes of destination paths
2018-10-25 01:06:12 +02:00
TheAssassin
e94494ea31
Move declaration of variables to top
2018-10-25 00:48:13 +02:00
TheAssassin
2dce34daf9
Use ASSERT_* instead of if()s and FAIL()
2018-10-25 00:46:46 +02:00
TheAssassin
7260078b6c
Move test into subdirectory named like internal library
2018-10-25 00:39:45 +02:00
TheAssassin
4bdceec7d8
Use standard lower-case file extension
2018-10-25 00:30:41 +02:00
TheAssassin
ca6c710c38
Remove deprecated code
2018-10-25 00:27:32 +02:00
TheAssassin
8a31d3d677
Fix cross-compiling toolchain
2018-10-25 00:27:32 +02:00
TheAssassin
5e94977f78
Fix cpp-feather-ini-parser test execution
2018-10-25 00:27:32 +02:00
TheAssassin
2f96dec588
Fix tests' structure, code style and use of GTest
2018-10-25 00:27:32 +02:00
TheAssassin
a1308955e7
Use CMake's BUILD_TESTING instead of proprietary custom variable
2018-10-25 00:27:32 +02:00
Alexis Lopez Zubieta
7e4a320f61
Make ctest run un verbose mode.
2018-10-25 00:27:32 +02:00
Alexis Lopez Zubieta
172db51186
Add unit test for AppDir::depoloyLibrary but with an invalid path.
2018-10-25 00:27:32 +02:00
Alexis Lopez Zubieta
d09186f69f
Run unit tests on the build.sh script
2018-10-25 00:27:32 +02:00
Alexis Lopez Zubieta
376eddb14d
Add unit test for AppDir::deployFile
2018-10-25 00:27:32 +02:00
Alexis Lopez Zubieta
47ff6c8e9d
Add AppDir::deployIcon test.
2018-10-25 00:27:03 +02:00
TheAssassin
41371c9d90
Improve Travis uploading
2018-10-25 00:20:05 +02:00
Alexis Lopez Zubieta
eacc907c85
Add unit test for AppDir::deployDesktopFile
2018-10-24 13:09:59 +02:00
Alexis Lopez Zubieta
4c9943f0d1
Add unit test for AppDir::deployExecutable
2018-10-24 13:09:59 +02:00
Alexis Lopez Zubieta
a0503a7102
Add test for AppDir::depoloyLibrary
2018-10-24 13:09:59 +02:00
Alexis Lopez Zubieta
f1e752d452
Add unit test for AppDir::createBasicStructure
2018-10-24 13:09:59 +02:00
Alexis Lopez Zubieta
55b6ee19e1
Add tests infrastructure
2018-10-24 13:09:50 +02:00
TheAssassin
4c0d5ea891
Remove erroneous null termination
...
The std::string is created using char pointer _and_ buffer size, so
null termination wasn't necessary in there (might even be problematic
with other tools which aren't strictly text based).
CC #35 .
2018-10-24 12:46:24 +02:00
TheAssassin
83a8f52f98
Replace communicate() to prevent buffer overflow
2018-10-14 17:11:05 +02:00
TheAssassin
b1bf306510
Fix compatibility with newer versions of ldd
2018-10-14 17:11:05 +02:00
TheAssassin
d2a021d57b
Update README.md
2018-10-07 22:17:20 +02:00
TheAssassin
2f7ad201f1
Don't overwrite existing AppRun
...
... unless custom AppRun was specified
2018-10-07 00:10:57 +02:00
TheAssassin
485507a2d1
Buffer subprocess communication
2018-10-07 00:05:59 +02:00
TheAssassin
cdee469e60
Fix uploading of .zsync file
2018-10-05 02:03:38 +02:00
TheAssassin
a892d066cc
Improve update information
2018-10-04 15:21:38 +02:00
TheAssassin
57175e0c75
Embed update information
2018-10-04 15:16:22 +02:00
TheAssassin
88695de067
Fix desktop file filename handling
2018-09-30 21:20:36 +02:00
TheAssassin
0f19458792
Improve error message
2018-09-30 21:11:05 +02:00
TheAssassin
c8d78eb602
Remove --app-name parameter completely
...
Fixes #19 .
2018-09-30 17:12:28 +02:00
TheAssassin
6b8b59ee77
Search for plugins in current working directory
2018-09-29 21:56:58 +02:00
TheAssassin
3674af54b2
Fix syntax
2018-09-26 00:39:21 +02:00
TheAssassin
73ecd9d318
Actually copy files before running plugins
...
Some plugins like the Qt one expect libraries etc. to be deployed
already, like the plugin spec defines. We should try to adhere to the
spec.
2018-09-26 00:36:57 +02:00
TheAssassin
1ad4e5e6a9
Make sure to run ldd with LC_ALL=C
2018-09-22 23:21:00 +02:00
TheAssassin
f3b54236a6
Update build.sh
2018-09-16 04:23:17 +02:00
TheAssassin
e885b47208
Merge pull request #30 from asashnov/fix-examples-link
...
fix examples link (ancor on the target HTML page is lowercased)
2018-09-06 13:08:36 +02:00
Alexander Sashnov
89788f5e26
fix examples link (ancor on the target HTML page is lowercased)
2018-09-06 17:55:24 +07:00
TheAssassin
83a9690da1
Fix appending of trailing slash
2018-09-04 14:33:25 +02:00
TheAssassin
5fc87e1c1c
Fix brackets
2018-09-03 23:33:26 +02:00
TheAssassin
3375de8fc4
Fix path calculation
2018-09-03 23:32:07 +02:00
TheAssassin
906c948304
Move redundant code into separate function
2018-09-03 23:30:53 +02:00
TheAssassin
371343baed
Properly set rpath in existing files
2018-09-03 21:07:43 +02:00
TheAssassin
63764e2e18
Show proper version statement
2018-09-03 20:20:16 +02:00
TheAssassin
8441dbb589
Merge pull request #28 from linuxdeploy/issue-18
...
Deploy 32-bit and 64-bit libraries into separate directories
2018-08-31 20:05:13 +02:00
TheAssassin
d13814d784
Fix syntax on 32-bit platforms
2018-08-31 19:59:15 +02:00
TheAssassin
cd83c28196
Fix linker issues
2018-08-31 19:53:15 +02:00
TheAssassin
f99cac25b5
Deploy 32-bit and 64-bit libraries into separate directories
2018-08-31 19:45:21 +02:00
TheAssassin
11a923b672
Properly handle parsing error
2018-08-31 19:42:40 +02:00
TheAssassin
a8aaa09a55
Make sure to populate member variable
2018-08-31 19:41:12 +02:00
TheAssassin
0ced1390ce
Improve ELF library, mk. 2
2018-08-31 17:35:45 +02:00
TheAssassin
af310722df
Make constructor more efficient
2018-08-31 16:49:17 +02:00
TheAssassin
dcf1726889
Improve ELF library, mk. 1
2018-08-31 16:48:36 +02:00
TheAssassin
ea12263be2
Silence warnings for cpp-subprocess
2018-08-31 15:50:19 +02:00
TheAssassin
9a44a10173
Refactor copyright files deployment
2018-08-30 22:13:01 +02:00
TheAssassin
b550e4da21
Run input plugins before deploying icons and desktop files
...
The input plugins might even fetch these resources somewhere into the
AppDir, and this way, the user can make use of that.
2018-08-28 23:05:45 +02:00
TheAssassin
c4167165ad
Add note about plugin requests to README
2018-08-28 22:45:11 +02:00
TheAssassin
276c6f2d18
Improve multiplexing of subprocess output
...
Setting pipes to be non-blocking now, and reading using fgets() instead
of getline(), using std::getline() to read lines after non-blocking read
from pipes.
Fixes #14
2018-08-28 22:35:05 +02:00
TheAssassin
5b54db31cc
Fix error message
2018-08-28 15:46:35 +02:00
TheAssassin
4a098896a9
Improve plugin related logging
2018-08-28 15:44:17 +02:00
TheAssassin
ec051c3e0c
Inform user about wrong usage of plugin parameters
2018-08-28 15:42:26 +02:00
TheAssassin
0741d9441b
Offset error message from previous block
2018-08-28 15:41:53 +02:00
TheAssassin
9b1b214142
Install missing dependency
2018-08-27 20:00:05 +02:00
TheAssassin
db77174f24
Don't deploy dependencies for existing symlinks
...
This might lead to unintended side effects, e.g., when bundling
additional resources in a separate prefix for which linuxdeploy is not
needed.
2018-08-27 19:52:36 +02:00
TheAssassin
a0b0378d36
Improve handling of strip tool
2018-08-27 19:49:50 +02:00
TheAssassin
388e7d5acb
Remove deprecated parameter from build script
2018-08-26 09:38:12 +02:00
TheAssassin
cc30bb6bd1
Update README
2018-08-26 09:37:47 +02:00
TheAssassin
0d60f67da3
Always create basic AppDir structure
...
Fixes #20 .
2018-08-25 23:51:06 +02:00
TheAssassin
e8dee64447
Deprecate --app-name
...
It's been a useful parameter, but only in some rare edge cases. Instead,
we'll focus more on desktop files, e.g., using the Icon entry contents
for (re)naming icons, etc.
2018-08-25 23:46:13 +02:00
TheAssassin
36c6be95d6
Remove redundant parameters
...
CC #22
2018-08-25 23:32:14 +02:00
TheAssassin
2c4fed2fad
Add links to docs.appimage.org
2018-08-25 19:08:47 +02:00
TheAssassin
21849f8fbf
Fix README
2018-08-25 19:05:16 +02:00
TheAssassin
4de8b6589f
Remove unused dependency libmagic
...
Our use of libmagic isn't very portable, and the checks aren't used
anyway. Therefore removing dependency on libmagic.
Fixes #17 .
2018-08-20 23:54:35 +02:00
TheAssassin
7184bcb61d
Abort if library is missing
2018-08-11 15:30:06 +02:00
TheAssassin
55d524b136
Fix argument order
2018-08-11 14:56:00 +02:00
TheAssassin
9743988c80
No longer bundle Qt plugin
...
It's almost always outdated, users will be better off downloading the
upstream AppImage.
2018-08-03 23:34:50 +02:00
TheAssassin
84b614c1ea
Fix plugin finding
2018-08-03 23:31:25 +02:00
TheAssassin
1035ef726d
Fix include path
2018-08-03 01:22:59 +02:00
TheAssassin
1c7e768b86
Provide interface to linuxdeploy_util
2018-08-03 00:56:16 +02:00
TheAssassin
a28181d98c
Fix CMake minimum required version
2018-07-31 21:35:06 +02:00
TheAssassin
fcd3ad49db
Link against shared libmagic library
...
This allows distro maintainers to build linuxdeploy more easily
CC @adrianschroeter
2018-07-31 16:21:46 +02:00
TheAssassin
cc6310cbbd
Allow icons with extension
2018-07-31 15:21:38 +02:00
TheAssassin
c58d9716b0
Quick fix patchelf build
2018-07-31 15:06:19 +02:00
TheAssassin
3e84f424e7
Debug patchelf build, mk. 5
2018-07-31 14:51:22 +02:00
TheAssassin
a386ab19fd
Debug patchelf build, mk. 4
2018-07-31 14:35:25 +02:00
TheAssassin
4f84082155
Debug patchelf build, mk. 3
2018-07-31 14:32:01 +02:00
TheAssassin
8aa1bc9d89
Debug patchelf build, mk. 2
2018-07-31 14:25:08 +02:00
TheAssassin
56d9d6b540
Debug patchelf build
2018-07-31 14:20:42 +02:00
TheAssassin
5165301a44
Merge pull request #6 from linuxdeploy/fix_deploy_library_destinationPath
...
Fix deployLibrary destinationPath construction.
2018-07-18 21:52:05 +02:00
TheAssassin
c1452fa870
Merge branch 'master' into fix_deploy_library_destinationPath
2018-07-18 21:46:25 +02:00
Alexis Lopez Zubieta
03cae41d55
Fix deployLibrary destinationPath construction.
2018-07-18 13:34:20 -05:00
TheAssassin
c10eafe823
Bundle Qt plugin
2018-07-17 14:19:07 +02:00
TheAssassin
4a7301eba5
Use patchelf v0.8
...
Seems like 0.10 breaks Qt libraries which expect a symbol called
qt_version_tag in a specific section in the symbols. Patchelf breaks
this by apparently moving the symbols to another section
(section 15 vs. 13).
We found out by looking into the readelf outputs of libQt5Core.so.5.
@azubieta spotted the different numbers, and looked up their meaning.
linuxdeployqt uses the patchelf binaries Debian jessie provides, which
is 0.8. Therefore we try to build that version from source instead,
hoping that this version won't break libraries.
If that doesn't work either, we'll try with the pre-built binaries.
2018-07-13 01:01:53 +02:00
TheAssassin
a3cc38d406
Show error message if dependency library cannot be found
2018-07-12 23:39:17 +02:00
TheAssassin
144fd2deb0
Deactivate strip calls if $NO_STRIP is set
2018-07-12 21:08:50 +02:00
TheAssassin
b96389a064
Use -n parameter to enhance search for suitable desktop file
...
In case there's more than a desktop file, the user can specify the
app name using -n <app name>, and linuxdeploy will try to find a
suitable desktop file whose filename starts with the specified app
name.
2018-07-12 18:22:43 +02:00
TheAssassin
b156ffc0cb
Add stringEndsWith helper
2018-07-12 18:19:37 +02:00
TheAssassin
bd052a5b1f
Add prefix to every line in plugin output
2018-07-10 15:08:17 +02:00
TheAssassin
f06d5e5832
Store plugin name in plugin class
2018-07-10 15:06:39 +02:00
TheAssassin
a0ace9f75c
Actually build 32-bit patchelf for 32-bit AppImage
2018-07-07 05:29:21 +02:00
TheAssassin
2b7a5928a5
Fix forceDeployLibrary, mk. 2
2018-07-01 02:28:44 +02:00
TheAssassin
ec862d0af9
Fix forceDeployLibrary
2018-07-01 01:06:31 +02:00
TheAssassin
df61b059d3
Force deploy libraries specified on the CLI
2018-06-30 23:27:02 +02:00
TheAssassin
5baac459b3
Don't upload AppImage plugin
2018-06-30 16:40:15 +02:00
TheAssassin
c783be934b
Fix build failure
2018-06-30 16:15:37 +02:00
TheAssassin
ae6dfcfe21
Bundle AppImage plugin in Docker friendly way
2018-06-30 16:10:35 +02:00
TheAssassin
c07025ab8a
Fix missing dependency
2018-06-30 00:52:55 +02:00
TheAssassin
c438d5ee2b
Change build type
2018-06-30 00:52:10 +02:00
TheAssassin
ee15c88978
Fix path to CImg
2018-06-30 00:22:59 +02:00
TheAssassin
80fc055373
Use bundled CImg for i386 build
2018-06-30 00:18:59 +02:00
TheAssassin
5d81258547
Bundle CImg for multiarch builds
2018-06-30 00:18:29 +02:00
TheAssassin
d57e4750c2
Re-enable parallel builds
2018-06-30 00:18:02 +02:00
TheAssassin
ddbca26b1b
Try to resolve apt package conflict
2018-06-30 00:03:14 +02:00
TheAssassin
2e503362a0
Remove unused code
2018-06-29 23:51:02 +02:00
TheAssassin
7a2390ea95
Show held packages
2018-06-29 23:47:21 +02:00
TheAssassin
312287d937
Try to fix apt issues, mk. 8
2018-06-29 23:26:33 +02:00
TheAssassin
a641ae7fac
Try to fix apt issues, mk. 7
2018-06-29 23:20:06 +02:00
TheAssassin
b332dc7e7d
Try to fix missing header
2018-06-29 22:09:36 +02:00
TheAssassin
b16329f8ba
Debug missing header
2018-06-29 21:59:52 +02:00
TheAssassin
ee6fd2e594
Try to fix apt issues, mk. 6
2018-06-29 21:38:59 +02:00
TheAssassin
4ee5a903ce
Try to fix apt issues, mk. 5
2018-06-29 21:34:00 +02:00
TheAssassin
852ac4d038
Try to get rid of duplicate i386 builds on Travis, mk. 2
2018-06-29 21:27:35 +02:00
TheAssassin
eea9a5a9f9
Try to get rid of duplicate i386 builds on Travis
2018-06-29 21:24:32 +02:00
TheAssassin
b046bef4c9
Try to fix apt issues, mk. 4
2018-06-29 21:22:16 +02:00
TheAssassin
e311bc9217
Try to fix apt issues, mk. 3
2018-06-29 21:19:26 +02:00
TheAssassin
0cb0223560
Try to fix apt issues, mk. 2
2018-06-29 21:16:30 +02:00
TheAssassin
e7b3a0987a
Try to fix apt issues
2018-06-29 21:14:22 +02:00
TheAssassin
efb59d6ea7
Install cross compilers
2018-06-29 21:09:08 +02:00
TheAssassin
39ddfc5c79
Install libpng-dev
2018-06-29 21:06:27 +02:00
TheAssassin
d5aa361eb4
Fix .travis.yml
2018-06-29 21:03:38 +02:00
TheAssassin
08a1bf9b69
Multiarch builds, mk. 1
2018-06-29 21:00:23 +02:00
TheAssassin
eba0d70576
Improve ignores
2018-06-29 20:59:56 +02:00
TheAssassin
1a4d9e8130
Add i386 toolchain
2018-06-29 20:50:14 +02:00
TheAssassin
2b94a4b408
Improve FindLibMagic
2018-06-29 12:31:20 +02:00
TheAssassin
dcf4f79059
Fix boost library types
2018-06-29 11:17:27 +02:00
TheAssassin
345fc638b6
Improve README
2018-06-29 11:08:37 +02:00
TheAssassin
8d3284c447
Merge branch 'experimental/standalone-boost'
...
Fixes #4 .
2018-06-29 02:46:35 +02:00