Commit Graph

389 Commits

Author SHA1 Message Date
iTrooz bd085dd495
git: Remove Fedora 38 and add Fedora 40 (#1755)
Fedora 38 is EOL
2024-06-12 09:21:35 +02:00
iTrooz 283fe46230
git: Replace Ubuntu 23.04 with 24.04 LTS (#1731) 2024-06-03 17:25:50 +02:00
iTrooz 2c00aa5def
fix: Do not use custom repo gcc 13 for Ubuntu because it doesn't run on vanilla Ubuntu (#1730) 2024-06-03 08:06:49 +00:00
iTrooz 89eee104ab
chore: disable codecov PR comments (#1724) 2024-05-28 13:51:09 +02:00
iTrooz 92b1234ddb
build: Reduce debug info produced (#1720) 2024-05-27 16:33:15 +02:00
iTrooz 974c4ba040
git: remove unused name matrix parameter from Ubuntu builds (#1701) 2024-05-23 15:57:44 +02:00
iTrooz 4e2c1d20b4
git: change key used for web cache 2024-05-23 14:44:01 +02:00
iTrooz ecb9537c4e
git: remove mock cache for Fedora because it seems to be duplicated with ccache 2024-05-20 01:35:12 +02:00
iTrooz 22f1713739
fix: actually generate coverage data when compiling/running program (#1686) 2024-05-18 20:35:49 +02:00
iTrooz 44331506b2
test: Add code coverage support with CodeCov (#1681) 2024-05-17 19:08:22 +00:00
iTrooz ff569417fc
test: Add plcli integration tests (#1671) 2024-05-12 00:19:20 +00:00
iTrooz e2dd12416c
git: run CI on tests/** branches 2024-05-11 21:42:27 +02:00
WerWolv 5d0b474a7e build: Move renaming of the macOS bundle to the CI 2024-03-23 00:33:46 +01:00
WerWolv dd20a16d3a git: Fix macOS bundle upload path 2024-03-22 22:35:44 +01:00
WerWolv 7d22b71e86 git: Fix bundle path for signing 2024-03-22 22:24:25 +01:00
WerWolv ca40775678 git: Make sure CI bundles correct macOS bundle into dmg 2024-03-22 21:57:33 +01:00
iTrooz f5987fde5a
git: Fix MacOS packaging workflow in PRs (#1601)
Fix GeekyEggo/delete-artifact failing in PRs

https://github.com/GeekyEggo/delete-artifact/issues/25
2024-03-21 13:33:46 +01:00
WerWolv 2988561f01 build: Try fix building issues with web build and Fedora 2024-03-12 19:09:01 +01:00
WerWolv c31a2551f1 git: Update release actions 2024-03-02 17:42:19 +01:00
WerWolv 735d896260 git: Run workflows on release branches 2024-02-29 22:28:29 +01:00
iTrooz 47362559ef
tests: Add infrastructure for testing plugins (#1538)
This PR adds a test architecture to be able to test plugins

Main infrastructure done by @WerWolv

---------

Co-authored-by: WerWolv <werwolv98@gmail.com>
2024-02-26 20:51:08 +01:00
Nik e475e763db
build: Hopefully fix macOS x86 build issues (#1556)
#1109
2024-02-17 21:01:57 +01:00
WerWolv cc8a1ccc8b git: Try signing x86 macOS build _again_ before packaging
#1500
2024-02-15 15:40:58 +01:00
iTrooz f332963c75
build: remove IMHEX_COMMIT_HASH_SHORT cmake flag (#1539) 2024-02-10 01:40:33 +00:00
iTrooz 09dd25dc0a
fix: Remove debug package created by makepkg (#1537) 2024-02-08 15:49:28 +00:00
WerWolv d0bdfcd20b git: Update more github actions 2024-01-30 22:31:04 +01:00
WerWolv d5365fbf0c git: Update more actions due to NodeJS 16 deprecation 2024-01-30 21:19:25 +01:00
WerWolv 66d4034a4e build: Fix issues with large Windows builds 2024-01-30 21:19:04 +01:00
WerWolv 6709087760 git: Update actions to latest versions 2024-01-28 22:10:37 +01:00
iTrooz 17f769c40d
feat: separate cmake configure steps + remove CMakeCache cache (#1519) 2024-01-28 11:40:12 +00:00
iTrooz b7349e42c7
feat: Allow users to open multiple files with the same name in the web version + make web Dockerfile able to run web server by itself (#1518) 2024-01-26 18:52:05 +00:00
iTrooz d86bf44e39
git: Add script to check localized texts occurrences in code (#1511)
This script will be executed on every CI run as part of tests, and will
ensure no unlocalised strings are present in the code

Note that texts without the `_lang` suffix will not be checked, e.g.
96fe608d60/plugins/builtin/source/content/views/view_provider_settings.cpp (L10)
2024-01-25 21:23:03 +01:00
WerWolv 31b900a71c git: Make a imhex-download-sdk release when a new ImHex version is released 2024-01-05 21:35:02 +01:00
WerWolv dbdc900e94 build: Don't update pacman packages on msys2 2024-01-05 14:52:07 +01:00
WerWolv e3ec4ebd21 build: Make msys2 deps install script use pacboy 2024-01-05 14:47:30 +01:00
Nik 950eaea8af
impr: Make decompression support actually useful (#1481) 2023-12-31 11:39:24 +01:00
WerWolv 3d9de1aaa6 git: Fix Ubuntu builds missing commit information 2023-12-30 19:12:04 +01:00
Nik 5a0a5ad445
build: Fix macOS M1 build entirely (#1480) 2023-12-30 19:11:33 +01:00
WerWolv 7ed06ae515 git: Fixed `set -x` wrongfully added to windows CI
Closes  #1473
2023-12-28 11:48:13 +01:00
WerWolv 144d8d8ed4 web: Prevent canvas flickering when resizing browser window 2023-12-27 22:00:09 +01:00
WerWolv 258481b0ba git: Fix errors and warnings thrown by CI 2023-12-27 21:11:27 +01:00
Nik 61bfe10bc2
refactor: Rework features that use external libraries into optional plugins (#1470) 2023-12-23 21:09:41 +01:00
Jonathan Wright d5a40d46bc
git: Add f39 builds, remove f37 (#1451)
Fedora 37 goes EOL in less than a week.
2023-12-04 23:36:48 +01:00
iTrooz 55c0170791
git: add -x to CI steps where multiple commands are run (#1447) 2023-11-25 14:42:51 +00:00
iTrooz f79fd0edbc
git: on MacOS CI, force reinstall python and ignore its exit code/patch it manually if failed (#1446) 2023-11-25 14:20:23 +00:00
WerWolv 951d74e24b git: brew reinstall doesn't support --overwrite 2023-11-23 14:03:27 +01:00
WerWolv d50533bbaf git: Try fix macOS dependency installation in CI again 2023-11-23 13:55:57 +01:00
WerWolv af18501726 git: Always overwrite existing files when installing macOS dependencies 2023-11-22 13:36:15 +01:00
iTrooz bf53ee8246
git: Use regular artifact upload action instead of pages upload action for macOS arm64 job (#1431) 2023-11-16 23:55:10 +00:00
iTrooz f75d5dba84
git: Add MacOS M1 GitHub Action (#1425)
I said I'll do it in #1414

Warning: the output zip does not pass SIP (System Integrity Protection),
and I have no plan to do it for now. So if someone here has a Mac, feel
free to to try to fix the problem (which is probably our build system)

Link #1109

---------

Co-authored-by: Nik <werwolv98@gmail.com>
2023-11-16 21:31:46 +00:00
WerWolv 164e52207e git: Fix .NET version not being found 2023-11-16 21:46:38 +01:00
WerWolv 13b72c8f93 git: Update .NET runtime to 8.0.0 and pin it 2023-11-14 22:54:33 +01:00
iTrooz 759351cec0
git: set fail-fast to false (#1403) 2023-11-07 15:09:13 +00:00
iTrooz 988a674617
git: Make job fail if no artifacts could be found to be uploaded (#1401) 2023-11-05 19:57:58 +01:00
iTrooz 44a1efffa0
git: Make MacOS builds use MacOS 12 instead of 11 (#1399)
Context: MacOS 11 (Big Sur) is EOL + llvm@17 has been released, and it
has no binaries for Big Sur, making the CI hang
2023-11-04 13:51:13 +01:00
iTrooz c839ee7d13
build: Improve names of packaging cmake options (#1398)
This PR is simply a refactor, to clarify these flags that shouldn't
impact anything
2023-11-04 00:11:50 +00:00
iTrooz 6c3c2849fa
build: build appimage using docker instead of github CI (#1358) 2023-10-11 16:17:52 +02:00
iTrooz e14efc6ca2
git: Remove CACHE_VERSION secret from cache keys (#1343)
Rationale: secrets (and vars) are not shared with pull requests, so they
can't use the cache

This PR fix that
2023-10-04 22:23:41 +02:00
iTrooz c72853596f
fix: disable web deployment on forks (#1342) 2023-10-04 20:16:44 +02:00
iTrooz d15bd4771d
feat: Support for building ImHex for the web (#1328)
Co-authored-by: WerWolv <werwolv98@gmail.com>
Co-authored-by: AnnsAnn <git@annsann.eu>
2023-10-04 12:00:32 +02:00
WerWolv fb48eb91d6 git: Fixed Ubuntu release commit hash and branch variable setting again 2023-09-25 21:46:37 +02:00
Nik 865d7e9b20
git: Fixed Ubuntu release commit hash and branch variable setting 2023-09-24 22:41:32 +02:00
iTrooz fbdcd22117
git: Make CI faster (#1257) 2023-08-21 16:20:36 +02:00
Nik e77f138514
feat: Added Achievements (#1230)
This PR adds Achievements to ImHex that serve as both a guide and a fun
way to learn more about ImHex and reverse engineering
2023-08-06 21:33:15 +02:00
iTrooz 26e7e12f09
git: Update custom macOS GLFW build settings (#1214)
<!--
Please provide as much information as possible about what your PR aims
to do.
PRs with no description will most likely be closed until more
information is provided.
If you're planing on changing fundamental behaviour or add big new
features, please open a GitHub Issue first before starting to work on
it.
If it's not something big and you still want to contact us about it,
feel free to do so !
-->

### Problem description
<!-- Describe the bug that you fixed/feature request that you
implemented, or link to an existing issue describing it -->

There are unused ImHex-specific flags in the custom GLFW build on MacOS.
Also, it isn't built in release mode
2023-07-30 21:36:27 +02:00
WerWolv b55c6fa3e1 git: Remove updating of the plugin templates from release CI 2023-07-27 11:09:20 +02:00
WerWolv ffd3efe5fa git: Disable .NET scripts in AppImage since it hangs on startup 2023-07-20 20:59:06 +02:00
WerWolv ed33dd0bb0 git: Make rpm builds a bit less verbose 2023-07-17 11:50:22 +02:00
WerWolv 1588365d4a build: Use the libcurl WinSSL version on Windows to make SSL work again 2023-07-16 21:38:54 +02:00
WerWolv 76e932ecc0 build: Switch to using the system capstone version on Windows 2023-07-16 21:38:29 +02:00
WerWolv 0a6815da8f fix: Always use default CA Cert 2023-07-16 19:56:07 +02:00
Nik 5171bea0bf
feat: Added cross-platform .NET scripts support (#1185)
This PR intends to add support for .NET scripts that can extend ImHex's
functionality in a portable and cross-platform way.

---------

Co-authored-by: Justus Garbe <55301990+Nowilltolife@users.noreply.github.com>
2023-07-15 14:29:14 +02:00
WerWolv 8500e4cba2 build: Switch to GTK file picker on non-sandboxed Linux builds 2023-07-15 10:01:50 +02:00
Nik aae3004f1f
build: Various build improvements (#1193) 2023-07-15 00:10:01 +02:00
WerWolv 1aed960a38 build: Switch build system to Ninja 2023-07-14 22:03:44 +02:00
WerWolv 6c4fdd146f build: Use llvm-ar and llvm-ranlib on Windows 2023-07-14 21:51:18 +02:00
WerWolv 65d9509c38 build: Add checked option to enable LTO 2023-07-09 20:34:49 +02:00
WerWolv f00b9f05ac build: Fixed Ubuntu build issues 2023-07-05 20:25:40 +02:00
Nik 730e67881b
build: Added Ubuntu 23.04 builds (#1173) 2023-06-30 23:58:20 +02:00
WerWolv b13494a192 build: Try fixing Fedora build 2023-06-26 14:37:35 +02:00
WerWolv d527675bda build: Make sure changing commit hash doesn't trigger a full rebuild
Closes #1137
2023-06-26 14:01:45 +02:00
iTrooz f2509cda1d
git: Added pull request template and renamed contributing guide (#1133) 2023-06-11 13:10:30 +02:00
Jonathan Wright 28778eaf8c
build: Remove fedora 36 builds (#1097)
Fedora 36 is EOL.

Build roots for it were taken offline this morning so builds against it
will fail now.
2023-05-22 17:49:49 +02:00
WerWolv 047c39e2c7 build: Checkout repo properly in release CI 2023-05-21 11:12:53 +02:00
WerWolv 143fe36d35 build: Fixed various build warnings 2023-04-13 16:11:39 +02:00
WerWolv 6c047f01f9 git: Fixed release CI not reading version correctly 2023-04-04 21:59:43 +02:00
Jonathan Wright 245c56ba8a
build: Added Fedora 38 build (#928)
Co-authored-by: Thomas <hey@itrooz.fr>
2023-03-26 11:37:46 +02:00
WerWolv 0aaeeffff7 build: Fixed capitalization of ImHex in MSI installer 2023-03-26 11:22:50 +02:00
WerWolv a36b4d65e3 build: Make sure commit hash and branch end up in nightly builds 2023-03-21 10:14:09 +01:00
WerWolv 07fd86fc9d git: Split release workflows into multiple steps 2023-02-15 10:21:56 +01:00
Thomas 75adcc0a96
build: Fix Arch package name in release CI (#929)
* Fix Arch package name in release CI

* update email address
2023-02-13 09:05:52 +01:00
WerWolv 45558027a6 git: Fixed release workflow 2023-02-12 21:55:22 +01:00
Jonathan Wright d02507ae4b
build: Re-enable Fedora rawhide builds (#920)
* re-enable rawhide builds

* Update build.yml

* Update imhex.spec

---------

Co-authored-by: Nik <werwolv98@gmail.com>
2023-02-02 21:42:13 +01:00
WerWolv c76b4bc9e9 impr: Removed a bunch of trailing white spaces 2023-01-30 11:11:30 +01:00
WerWolv 55d7d7c026 impr: Improve code quality 2023-01-30 10:42:07 +01:00
Nik 48a57cd981
feat: Added stacktrace printing on crashes (#892)
* feat: Added simple stack trace output

* feat: Added backtrace wrapper

* build: Added libbacktrace include dirs to build

* build: Fixed libbacktrace variables

* build: More backtrace variable fixes

* build: Try to find backtrace include

* build: Get backtrace header from cmake script

* feat: Added backtrace support for execinfo

* feat: Added support for StackWalk on Windows
2023-01-17 21:38:56 +01:00
WerWolv b497e9d867 git: Switch to different repo dispatch action 2023-01-13 08:58:03 +01:00
Thomas 69c0e6ee6e
git: Do not run `make install` for tests (#879)
Co-authored-by: Nik <werwolv98@gmail.com>
2023-01-13 00:32:17 +01:00
Thomas 78b07e0a46
git: Make runner cache keys unique (#878) 2023-01-13 00:10:28 +01:00
Thomas 5a865774d1
git: Cleanup build CI + separate Ubuntu and AppImage builds (#873)
* remove flatpak

rationale: if we need it again we can always get it back from old commits

* remove double spaces

* remove Fedora rawhide

* remove Windows installer signing

* separate Ubuntu and AppImage builds
2023-01-12 23:50:59 +01:00
Thomas b070092a64
git: Add architecture to build artifacts (#869)
* rename win64 artifact to Windows

* add architecture to all artifact names
2023-01-12 08:25:28 +01:00
Jonathan Wright 04d0458ae7
build: Improve Fedora builds and add EL9 build. (#861) 2023-01-10 23:10:34 +01:00
WerWolv e0c1fc81e3 build: Download Mesa3D from werwolv.net instead 2022-12-21 07:13:31 +01:00
Thomas ed97757dde
build: Fix AppImage building issues (#847)
From https://github.com/AppImageCrafters/appimage-builder/pull/281
2022-12-18 16:05:14 +01:00
iTrooz_ 8e696e3fc4
git: Enable LTO on Linux (#819)
* Enable LTO on Fedora .spec

* CI: Enable LTO for Ubuntu and ArchLinux

* CI: remove lld to allow LTO
2022-11-25 10:40:07 +01:00
WerWolv b2c970c3bd git: Removed macOS portable build again 2022-11-09 20:52:23 +01:00
WerWolv a6742de405 sys: Literally, fuck Valve 2022-11-02 08:24:00 +01:00
iTrooz_ 6cb9714f06
git: Automatically label created issues (#811) 2022-11-01 09:31:46 +01:00
iTrooz_ 2826e6f325
git: Updated issue templates (#807)
* add "Additional context" option for feature request

* use placeholder instead of value

* Ask for installation type in bug reports
2022-10-29 20:38:22 +02:00
WerWolv 582858c0d4 git: Download all artifacts to their own folders 2022-10-28 10:55:06 +02:00
WerWolv 7d56c64a9c git: Download only necessary artifacts in steam deploy job 2022-10-28 10:29:40 +02:00
WerWolv 902b35e189 git: Fix downloading artifacts in steam deploy job 2022-10-28 10:02:38 +02:00
WerWolv 5f6050aaec git: Fixed more build issues 2022-10-28 09:38:03 +02:00
WerWolv cb94213a04 git: Fix some more steam deploy issues 2022-10-28 09:17:04 +02:00
WerWolv fa6580f622 git: Move steam deploy to its own workflow 2022-10-28 09:14:01 +02:00
WerWolv e15bcb51aa git: Fix setting of version env var on Windows 2022-10-27 14:12:46 +02:00
WerWolv 6aad609a48 git: Fix more issues with the Steam Deployment 2022-10-27 14:05:06 +02:00
Nik e567061e3c
git: Added automatic pushing of nightlies to Steam (#801)
* build: Upload nightly releases to steam

* git: Fixed build CI syntax

* git: Try fixing steam login

* git: Try steam TOTP login

* git: Fix steam-deploy branch

* git: Don't upload MacOS No-GPU version to Steam

* git: Added commit hash to steam nightlies, only upload on our repo

* git: Use full commit hash in steam nightly description

* git: Fixed workflow

* git: Make sure macOS doesn't upload steam releases when it shouldn't

* git: Fix macos CI again

* git: Use steam-deploy fork to fix Linux deployment
2022-10-27 13:19:06 +02:00
WerWolv 33a0ee37fa build: Update ImHex-Rust-Plugin-Template on release 2022-10-21 14:59:43 +02:00
iTrooz_ 4d17265e90
git: Use action to manage ccache + minor fixes (#775)
* use action for ccache + limit cache size

* remove 'prepare cache' step for Windows

* remove libpython from CI

* fix the restore key for MacOS

* remove Rust from CI

* do not pin appimage-builder version since issue with it has been resolved

* use ccache action for CodeQL

* Rebased onto latest master

Co-authored-by: WerWolv <werwolv98@gmail.com>
2022-10-10 20:37:00 +02:00
WerWolv b734fb5511 build: Delete system capstone in macOS CI 2022-10-06 15:22:38 +02:00
Nik e865883611
git: Remove msi signing again since Microsoft doesn't care at all (#765) 2022-10-02 17:31:40 +02:00
WerWolv 55bd2c6da6 git: Add code signing for Windows installer 2022-09-21 21:24:47 +02:00
WerWolv 73ca45ad3d git: Updated winget-create to the latest release 2022-09-16 08:30:42 +02:00
iTrooz_ f219395b25
build: Added AppImage zsync and updated metadata (#733)
* added update information

* upload zsync

* set version of appimage

* release: do not execute steps which needs a token when not provided

* set the appimage output name directly in the recipe file

* add metainfo file in every Linux package

* update metainfo file

* set categories in the metainfo file

* add both .metainfo.xml and .appdata.xml files because it is the old standard still wanted by some things

* actually use WerWolv's repository for AppImage updates

* rename metainfo files

* Typo : appdata and not appinfo

* split screenshots
2022-09-08 09:31:49 +02:00
iTrooz_ ae6a7ad8e5
build: Change Ubuntu package name, updated README (#734)
* rename Ubuntu 22.04 deb

* fix typo in readme

* says explicitely that AppImage is available for all distributions
2022-09-08 09:30:56 +02:00
iTrooz_ b10ba8fea0
build: Add NoGPU (Software Rendering) version for Windows (#716)
* add NoGPU (Software Rendering) version for Windows

* rename the NoGPU artifact

* add emoji to a step
2022-09-02 16:12:02 +02:00
iTrooz_ 3eb2cca286
build: Add text to the PORTABLE file (#718) 2022-09-02 16:11:19 +02:00
iTrooz_ 0569770239
git: Added NoGPU dmg for MacOS (#708) 2022-08-30 09:47:39 +02:00
iTrooz_ 38162c0129
build: Use the bundled CA cert in AppImage (#694)
* Added option to bundle CA

* use bundled CA for AppImage

* Fix bundled CA not working on Linux

* revert change to add null terminated string

* set IMHEX_USE_BUNDLED_CA to ON on Windows
2022-08-26 00:21:17 +02:00
WerWolv f8a089a61f
build: Added appdata metainfo file to AppImage 2022-08-19 12:05:47 +02:00
iTrooz_ 6a88c7cbaa
git: Make sure Linux CI doesn't build ImHex twice (#689)
* install deb package in a different folder than AppImage

* added comment for Ubuntu cmake build

* fixed typos

* separate cmake build for deb and appimage
2022-08-18 23:03:31 +02:00
WerWolv 9c4e314bb6
git: Fixed release CI 2022-08-17 23:25:52 +02:00
WerWolv 5aee359700
git: Send workflow dispatch request to Plugin template repo on release 2022-08-17 22:32:55 +02:00
WerWolv cf6ae52889 git: Automatically update winget package on release 2022-08-17 15:50:29 +02:00
WerWolv 07dc77f13d
git: Build Unit tests with debug symbols 2022-08-15 23:49:42 +02:00
WerWolv 9b2ee998de git: Enabled address, leak and UB sanitizers in unit tests CI 2022-08-15 23:33:04 +02:00
iTrooz_ b917bfca07
git: Fix Fedora spec name and removed caching from Fedora CI (#672)
* changed name to 'imhex' in imhex.spec

* removed CMakeCache for Fedora
2022-08-14 10:08:58 +02:00
WerWolv 4c331341e5 git: Output unit test errors on failure 2022-08-09 16:31:10 +02:00
WerWolv 49cc85dd3b
git: Fix deb compression argument 2022-08-05 19:45:01 +02:00
WerWolv 974b9c77e0
git: Use gzip to compress .deb files 2022-08-05 19:33:32 +02:00
iTrooz_ ddf4eb3e2b git: Cleanup CI scripts (#650)
* RUST_PATH doesn't seem to be used on ArchLinux

* renamed jobs

* no objc code on Windows (need confirmation)

* fakeroot strace patchelf for Ubuntu : not needed ?

* try to use some system libraries on Arch

* added comments to scroll to cmake instruction easily

* No ojbC code on Ubuntu
2022-08-04 21:52:56 +02:00
WerWolv 65ed949e1b
build: Try setting osx deployment target in cmake directly 2022-08-04 20:39:07 +02:00
iTrooz_ e816b67472
build: Fix various issues for upstream Fedora compatibility (#642)
* cmake: use GNUInstallDirs to find install dirs on Linux

* install plugins to lib/imhex/plugins

* fix included files in imhex.spec

* fix the release CI + do not upload x86_64 folder for Fedora

* change rpm names

* added IMHEX_STRIP_RELEASE option to optionally strip releases files (was done all the time before)

* Customize our imhex.spec file (use online building for our Fedora package)

* added IMHEX_PLUGINS_IN_SHARE option for AppImage

* test
2022-08-04 20:37:57 +02:00
Ryan Russell 55d046fa36
refactor(imgui-rs): Rust code readability improvements (#620)
* chore: bug report template readability fix

Signed-off-by: Ryan Russell <git@ryanrussell.org>

* refactor(imgui-rs): Doc aliases readability fixes

Signed-off-by: Ryan Russell <git@ryanrussell.org>

* refactor(imgui-rs): Code comment readability

Signed-off-by: Ryan Russell <git@ryanrussell.org>
2022-08-02 12:11:04 +02:00
WerWolv b8c034f8c5 sys: Prevent portable Windows version from writing to AppData
Fixes #627
2022-08-01 14:51:40 +02:00
WerWolv 899f2b3fbd build: macOS 10.4 is apparently deprecated 2022-08-01 14:50:27 +02:00
WerWolv be0fe4c0d0 build: Lower the macOS deployment target to 10.4 2022-08-01 14:19:56 +02:00
iTrooz_ df94370598
build: Fix CI for Fedora, added caching, various other fixes (#613)
* Ci: use matrix for Fedora

* Ci: use ccache in Fedora build

* Ci: cache CMakeCache for Fedora

* build type release fedora

* Rawhide with lowercase

* strip binaries on Linux

* strip files for CPack (didn't test)

* add soversion to libimhex on Linux and MacOS

* fixed that typo
2022-07-31 17:29:57 +02:00
iTrooz_ f23ee951d9
build: Use system curl on ArchLinux builds (#617) 2022-07-31 15:28:05 +02:00
Jonathan Wright f12f10bc9e
git: Added Fedora .rpm packaging to CI (#608)
* Update build.yml

* Update build.yml

* Update build.yml

* Update build.yml

* Update build.yml

* Update build.yml

* Update build.yml

* Update build.yml

* Update build.yml

* Update build.yml

* Update build.yml

* Update get_deps_fedora.sh

* Update build.yml

* Update get_deps_fedora.sh

* Update build.yml

* Update build.yml

* Update get_deps_fedora.sh

* Update build.yml

* Update build.yml

* Update build.yml

* Update build.yml

* Update build.yml

* Create imhex.spec

* Update build.yml

* Update build.yml

* Update build.yml

* Update build.yml

* Update imhex.spec

* Update build.yml

* Update README.md

* remove duplicate fedora build deps

* Fix license

* Use release tag 0

fedora official packaging starts at 1 so this will prevent conflicts and allow someone who manually installs the RPM to then later get updates from fedora repositories

* add RPMs to releases

* include rpms in releases

* fixed order of ops for fedora builds

* can't checkout without git...
2022-07-31 00:43:42 +02:00
WerWolv 71a7ae70d0 git: Fixed Arch Linux CI build issue 2022-07-23 20:42:59 +02:00
WerWolv b6d7fd6984 git: Make analysis workflow also pull latest patterns 2022-07-18 20:18:41 +02:00
WerWolv d8eb027c94 git: Make tests also pull latest patterns 2022-07-18 20:15:14 +02:00
WerWolv 80d47b658e git: Fixed CI, updated all env var names 2022-07-18 20:13:01 +02:00
WerWolv 51f2b24daa git: Create new ImHex-Patterns release on new ImHex release 2022-07-18 20:02:12 +02:00
iTrooz_ 9837473810
git: Automatically create PatternLanguage release on new ImHex releases (#570) 2022-07-07 16:10:21 +02:00
iTrooz_ a30f49c75e
git: Improve size of Full Sources tar (#569)
* remove .git directories from Full sources

* actually compress Full sources
2022-07-05 10:12:16 +02:00
iTrooz_ ceb07b7425
build: Added AUR/ArchLinux support (#566)
* store version in file

* use version file in release workflow

* use new version file in build workflow

* ArchLinux build

* setup cache for ArchLinux

* add version check in release CI

* edit step description

* update pkgbuild to install correctly

* AUR deploy

* rename version file to VERSION

* install all default plugins in PKGBUILD

* Added emojis to build workflow

* Added emojis to release workflow

* separate update packages and install dependencies in two steps

* fix Release CI

* add md5Sums to PKGBUILD

* make PKGBUILD point to the official repo + set v in tag
2022-07-04 21:40:22 +02:00
WerWolv 4885175ac6
build: Go back to macOS 11 to hopefully still support Catalina 2022-07-04 00:11:47 +02:00
iTrooz_ 11c2f240a1
git: Add version to artifact names (#559)
* Version file test

* change artifacts names

* Release updated

* Set release job name

* set branch to the branch used to release

* Set version for Windows Portable

* git: New cache update (#558)

* add CMakeCache.txt to cache

* added workflow_dispatch to workflows

* remove restore-keys from workflows

* Separated cache

* re-added restore-keys

* put the version file for all OS

* fix: In/Out parameters not working correctly when using the preprocessor

* update submodules

Co-authored-by: WerWolv <werwolv98@gmail.com>
2022-06-29 15:01:08 +02:00
iTrooz_ 7242eb8f4c
git: New cache update (#558)
* add CMakeCache.txt to cache

* added workflow_dispatch to workflows

* remove restore-keys from workflows

* Separated cache

* re-added restore-keys
2022-06-29 00:24:53 +02:00
iTrooz_ 01adc8a2cd
build: Fix various CI caching issues (#553)
* removed restore-keys

* updated cache for Ubuntu 22

* using ccache on OBJC and OBJCXX

* Bonus: fix release workflow
2022-06-27 00:20:32 +02:00
WerWolv 3471b314dd
build: Switch to GCC on MacOS (#552)
* build: Experimentally switch to gcc on macOS

* build: Corrected gcc paths

* build: Enable objective c support on macOS

* build: Enable ObjC and ObjC++ on macOS

* build: Add ObjC and ObjC++ flags

* build: Try compiling objc with clang

* build: Remove invalid flags again

* fix: Let's not include objc headers in C++ code

* sys: Move macos utils code to its own file

* fix: Missing unistd include on mac

* sys: Removed loader script stuff since it's currently unused and broken

* fix: Missing include

* fix: Another missing include

* fix: CFURLCreateWithBytes wants a pointer to mutable data

* fix: Try disabling name mangling of ObjC functions

* sys: Move macos utils declarations to its own header file

* fix: C Linkage

* fix: Move objc function prototypes to C++ headers

* fix: More missing includes

* fix: Warning error

* sys: Call ObjC with C ABI instead of trying to use C++

* build: Update libraries

* sys: Fixed build errors

* sys: No const correctness I guess

* sys: Fixed prototypes

* sys: This is C now

* sys: More nullptr -> NULL

* sys: Fix crash on exit

* sys: Try using proper std concepts instead of custom ones

* sys: Replaced another hex::is_signed

* build: Upgrade to gcc 12 and MacOS Monterey

* build: Fixed MacOS runner name

* build: Cache correct ccache folder on macOS
2022-06-25 12:19:59 +02:00
iTrooz_ c6989c2ef7
build: Fixed various issues with the CI and Linux packages (#548)
* Ci: added workflow_dispatch trigger

* Ci: removed fetch depth

* Ci: Add information to generated artifacts

* Ci: Updated Linux runner to Ubuntu 22.04

* Packaging: Updated .deb dependencies

* Ci: Removed ELF artifact

* Ci: Upgraded actions versions

* Ci: Switch to gcc-11 for unit tests and analysis
2022-06-23 23:48:02 +02:00
iTrooz_ e33726f526
git: Added automatic release and source tar upload on release (#537)
* added release.yml

* Build CI now only triggers on branch push
2022-06-19 15:16:03 +02:00
iTrooz_ 5b74739c51
git: Fixed CI failing with AppImages (#509) 2022-05-22 23:23:54 +02:00
WerWolv 0462cc3d0c
sys: Enable -Wall, -Wextra, -Werror and fix all warnings on all Platforms (#483)
* sys: Make ImHex compile with -Wall -Wextra -Werror

* sys: Fixed various build errors on Linux

* sys: Explicitly ignore return value of `system` function

* sys: More fixes for the warnings GitHub Actions enables somehow

* sys: More fixes

* sys: Remove -Werror again to see all GitHub Actions warnings

* sys: Hopefully fixed all remaining warnings

* sys: Added back -Werror

* git: Change windows icon in GitHub Actions
2022-03-27 00:01:28 +01:00
WerWolv 854c99bafa
build: Replace manual AppImage bundling with appimage-builder script (#477)
* build: Tried to streamline and fix AppImage building

* build: Tried fixing build

* build: Added back version key

* build: Fixed AppImage name

* build: Fixed python bundling, fixed ELF uploading

* build: Don't upload a bunch of AppImage garbage files in the portable ELF version

* build: Fixed another wrong library path

* build: Removed old manual AppImage building scripts
2022-03-20 23:43:55 +01:00
WerWolv 545ff9de56 git: Disable Flatpak bundling as it's broken on GitHub Actions 2022-02-06 00:19:39 +01:00
WerWolv 6806f8e5ba git: Explicitly move to Windows Server 2022 for building 2022-01-22 22:15:15 +01:00
Mark Nokalt 3e9493f3e7
build: Fix usage of CMAKE_INSTALL_PREFIX on Linux (#401)
* build: Fix usage of CMAKE_INSTALL_PREFIX

* build: Use /usr prefix in Linux CI builds

* ci: Delete DEBIAN folder after .deb packaging step
2022-01-22 22:10:49 +01:00
WerWolv d8219ad971
build: Cleaned up cmake build structure (#399)
* build: Cleanup build process, move main application to /main folder

* build: Try fixing MacOS bundling

* build: Fixed swapped parameters

* build: One imhex -> main too much

* build: Move resources to a better location

* build: Try to fix macos bundle creation

* build: More bundle fixes

* build: Fixed syntax

* build: Another try

* build: Added macos debugging stuff

* build: Fix bundle path

* build: Removed duplicated adding of Frameworks folder to rpath

* build: Removed debugging
2022-01-15 00:14:12 +01:00
WerWolv b34b4c2362 git: Tried to fix cache issue with Linux runner 2022-01-14 18:09:55 +01:00
WerWolv 0986527495 build: Use ld.lld as linker 2022-01-13 21:31:01 +01:00
WerWolv 3d32261f16 git: Fixed issue templates 2021-12-21 11:39:10 +01:00
WerWolv b17808c6c7 build: Completely get rid of system capstone 2021-12-16 12:37:22 +01:00
WerWolv 79ace0a106 build: Allow invalidating caches easily 2021-12-15 23:57:00 +01:00
WerWolv c61e807f13
build: Clear up some unnecessary files on Linux 2021-12-15 21:44:57 +01:00
WerWolv df26127f88
build: Force flatpak-builder to use 4 cores 2021-12-15 20:41:10 +01:00
WerWolv a05d09ffea build: Build unit tests again when needed 2021-12-14 21:27:02 +01:00
WerWolv 821eb4568e Revert "git: No need to upload flatpak-builder files into cache on Linux"
This reverts commit 5759f163e3.
2021-12-12 01:16:26 +01:00
WerWolv 5759f163e3 git: No need to upload flatpak-builder files into cache on Linux 2021-12-10 16:42:46 +01:00
WerWolv 44b121e8b0 build: Added AppImage building to CI 2021-12-03 14:38:38 +01:00
WerWolv 6a7c086514 build: Fixed .deb path 2021-12-03 13:49:39 +01:00
WerWolv 3b59868f62 build: Fixed flatpaks, added .deb support 2021-12-03 04:42:15 -08:00
Unai Martinez-Corral 278d46ccd7
ci/win: use option 'pacboy' of setup-msys2 to install dependencies (#354) 2021-12-01 20:31:17 +01:00
WerWolv 3c4d57f63b git: Added nightly checkbox to bug report template, fixed typo 2021-10-31 17:24:24 +01:00
WerWolv 46ba46ce9d
build/plugins: Added initial support for Rust plugins (#327)
* build: Added initial support for Rust plugins

* github: Install correct rust version

* github: Fixed rustup command

* github: Fix swapped win/linux commands

* github: Install linux rust toolchain on Linux

* github: Add rustup parameters to correct command

* build: libimhex-rust -> hex

* rust-plugins: Disable optimization to export functions correctly

* build: Use cdylib instead of dylib

* build: Fixed rust building and artifact copying

* build: Fixed installing plugins

* build: Fix copying and installing on Windows

* github: Added windows debugging

* github: Use curl instead of wget

* github: Added debug on failure

* github: Update path variable with rust toolchain path

* build/github: Set rust location so cmake can find it

* build: Remove leftovers

* api: Added rust wrappers for the ImHexAPI

* rust: Fixed compile flags with older gcc/clang

* build: Enable concepts for cxx.rs

* build: Explicitly set compiler for cxx.rs

* rust: Added imgui-rs to libimhex-rust

* rust: Export functions with double underscore prefix on mac

* rust: Export functions adjusted for ABI

* Add Rust target folder to gitignore

* Add vendored imgui-rs copy

* Add Context::current() to vendored imgui-rs

* Fix libimhex not exporting cimgui symbols

* Simplify plugin export mangling

* build: Fixed cimgui linking

* build: Only specify --export-all-symbols on Windows

* Add context setting to Rust plugins

* rust: Cleanup

* deps: Update curl

Co-authored-by: jam1garner <8260240+jam1garner@users.noreply.github.com>
2021-10-16 11:37:29 +02:00
WerWolv 76391edad6 git: Renamed codeql and unit tests workflow 2021-10-09 23:30:35 +02:00
WerWolv 9b3822a8bd git: CodeQL doesn't need to run every commit. And also not only at 00:21 every thursday... 2021-10-09 23:15:08 +02:00
Kuruyia 72ec6baf79
sys: Fix macOS compilation (as of 2dc1886) (#317)
* sys: Updated curl to latest version

* sys: Fix macOS compilation

* ui: Fix splash screen OpenGL init for macOS

* sys: Fix std::min compile errors

* git: Re-enabled macos workflow

* sys: Remove includes of the range library

* build: Find OpenGL using CMake

* sys/build: Fix bundled plugins on macOS

* build: Copy plugins to bundle when creating a bundle

* build: Fixup bundled plugins

* sys: Search for plugins in the bundle instead of in Application Support

* sys: Allow resources to be placed in multiple directories on macOS

* build: Output built plugins to the plugins/ directory when not creating a bundle on macOS

* sys: Fix Application Support paths on macOS

* sys: Define ftruncate64 on macOS

* sys: Fix absolute value computation for std::string::at on macOS

Co-authored-by: WerWolv <werwolv98@gmail.com>
2021-10-09 23:07:58 +02:00
WerWolv 59c01feaea github: Use ccache for CI runners 2021-09-19 21:49:09 +02:00
WerWolv 254b204d6c github: Don't use build matrix for analysis 2021-09-11 19:37:20 +02:00
WerWolv ac645c63d3 github: Just run ctest manually. Added some emojis 2021-09-11 18:58:53 +02:00
WerWolv 0b9f1cc3b9 github: Run unit tests 2021-09-11 18:15:27 +02:00
WerWolv b96fee95f3 github: Missed one 2021-09-11 18:11:59 +02:00
WerWolv 8cb7fb71d1 github: Don't look for magic dbs anymore in CI 2021-09-11 18:11:17 +02:00
WerWolv a8ed57bd65 github: Use input instead of textarea for version in issue template 2021-09-10 12:46:26 +02:00
WerWolv bfcd01afb9 github: Added issue forms 2021-09-10 12:44:57 +02:00