diff --git a/.github/workflows/Linux-pack.yml b/.github/workflows/Linux-pack.yml index a7bbf09abc..7f308c0e94 100644 --- a/.github/workflows/Linux-pack.yml +++ b/.github/workflows/Linux-pack.yml @@ -108,9 +108,7 @@ jobs: env: OS: ${{ matrix.dist.os }} DIST: ${{ matrix.dist.symbol }} - #DOCKER_ARCH: ${{ matrix.dist.arch }} - ## I cannot see if ARCH is used anywhere. Should we remove it? - #ARCH: ${{ matrix.dist.arch }} + PRESERVE_ENVVARS: "GIT_HASH" run: | cp -r $GITHUB_WORKSPACE/packaging/debian $GITHUB_WORKSPACE bash $GITHUB_WORKSPACE/tools/packpack @@ -204,6 +202,7 @@ jobs: env: OS: ${{ matrix.dist.os }} DIST: ${{ matrix.dist.symbol }} + PRESERVE_ENVVARS: "GIT_HASH" - name: Packaging on ${{ matrix.dist.name }} ${{ matrix.dist.arch }} if: matrix.dist.os == 'opensuse-leap' diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 2c80b84c61..5e045f619c 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -286,23 +286,23 @@ endif() message("Flameshot predefined color palette large: " ${FLAMESHOT_PREDEFINED_COLOR_PALETTE_LARGE}) target_compile_definitions(flameshot PRIVATE PREDEFINED_COLOR_PALETTE_LARGE=${FLAMESHOT_PREDEFINED_COLOR_PALETTE_LARGE}) + +find_package (Git) if( DEFINED ENV{GIT_HASH}) message("Using provided git_commit_hash: $ENV{GIT_HASH}") set(FLAMESHOT_GIT_HASH $ENV{GIT_HASH}) target_compile_definitions(flameshot PRIVATE FLAMESHOT_GIT_HASH="${FLAMESHOT_GIT_HASH}") +elseif (GIT_FOUND) + message("git found: ${GIT_EXECUTABLE} in version ${GIT_VERSION_STRING}") + execute_process(COMMAND ${GIT_EXECUTABLE} rev-parse --short HEAD OUTPUT_VARIABLE FLAMESHOT_GIT_HASH) + string(REGEX REPLACE "\r*\n$" "" FLAMESHOT_GIT_HASH "${FLAMESHOT_GIT_HASH}") + target_compile_definitions(flameshot PRIVATE FLAMESHOT_GIT_HASH="${FLAMESHOT_GIT_HASH}") + message("FLAMESHOT_GIT_HASH: ${FLAMESHOT_GIT_HASH}") else() - find_package (Git) - if (GIT_FOUND) - message("git found: ${GIT_EXECUTABLE} in version ${GIT_VERSION_STRING}") - execute_process(COMMAND ${GIT_EXECUTABLE} rev-parse --short HEAD OUTPUT_VARIABLE FLAMESHOT_GIT_HASH) - string(REGEX REPLACE "\r*\n$" "" FLAMESHOT_GIT_HASH "${FLAMESHOT_GIT_HASH}") - target_compile_definitions(flameshot PRIVATE FLAMESHOT_GIT_HASH="${FLAMESHOT_GIT_HASH}") - message("FLAMESHOT_GIT_HASH: ${FLAMESHOT_GIT_HASH}") - else() - target_compile_definitions(flameshot PRIVATE FLAMESHOT_GIT_HASH="-") - message("git command is not found") - endif () + target_compile_definitions(flameshot PRIVATE FLAMESHOT_GIT_HASH="-") + message(WARNING "Compiling without git commit hash") endif () + target_compile_definitions(flameshot PRIVATE APP_PREFIX="${CMAKE_INSTALL_PREFIX}") target_compile_definitions(flameshot PRIVATE APP_VERSION="v${PROJECT_VERSION}") #target_compile_definitions(flameshot PRIVATE QAPPLICATION_CLASS=QApplication)