mirror of
https://github.com/hyprwm/Hyprland
synced 2024-11-22 15:25:58 +01:00
nix: build improvements (#5952)
* scripts: allow using existing variable values in generateVersion.sh * nix: populate versioning variables * nix: remove unused meson input * nix: remove unnecessary hyprland-protocols dependency * Nix: remove nixConfig from flake It's more annoying than helpful. * CI/Nix: fix PR build failure --------- Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
This commit is contained in:
parent
6e594e4416
commit
a8ab1b1679
4 changed files with 12 additions and 32 deletions
1
.github/workflows/nix-ci.yml
vendored
1
.github/workflows/nix-ci.yml
vendored
|
@ -4,6 +4,7 @@ on: [push, pull_request, workflow_dispatch]
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
update-inputs:
|
update-inputs:
|
||||||
|
if: github.event_name == 'push' || github.event_name == 'workflow_dispatch'
|
||||||
uses: ./.github/workflows/nix-update-inputs.yml
|
uses: ./.github/workflows/nix-update-inputs.yml
|
||||||
secrets: inherit
|
secrets: inherit
|
||||||
|
|
||||||
|
|
|
@ -74,9 +74,6 @@
|
||||||
# hyprland-extras
|
# hyprland-extras
|
||||||
|
|
||||||
xdg-desktop-portal-hyprland
|
xdg-desktop-portal-hyprland
|
||||||
# dependencies
|
|
||||||
|
|
||||||
hyprland-protocols
|
|
||||||
;
|
;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -97,9 +94,4 @@
|
||||||
nixosModules.default = import ./nix/module.nix inputs;
|
nixosModules.default = import ./nix/module.nix inputs;
|
||||||
homeManagerModules.default = import ./nix/hm-module.nix self;
|
homeManagerModules.default = import ./nix/hm-module.nix self;
|
||||||
};
|
};
|
||||||
|
|
||||||
nixConfig = {
|
|
||||||
extra-substituters = ["https://hyprland.cachix.org"];
|
|
||||||
extra-trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="];
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,7 +5,6 @@
|
||||||
pkgconf,
|
pkgconf,
|
||||||
makeWrapper,
|
makeWrapper,
|
||||||
cmake,
|
cmake,
|
||||||
meson,
|
|
||||||
ninja,
|
ninja,
|
||||||
binutils,
|
binutils,
|
||||||
cairo,
|
cairo,
|
||||||
|
@ -13,7 +12,6 @@
|
||||||
fribidi,
|
fribidi,
|
||||||
git,
|
git,
|
||||||
hyprcursor,
|
hyprcursor,
|
||||||
hyprland-protocols,
|
|
||||||
hyprlang,
|
hyprlang,
|
||||||
hyprwayland-scanner,
|
hyprwayland-scanner,
|
||||||
jq,
|
jq,
|
||||||
|
@ -72,22 +70,12 @@ assert lib.assertMsg (!hidpiXWayland) "The option `hidpiXWayland` has been remov
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
# Fix hardcoded paths to /usr installation
|
# Fix hardcoded paths to /usr installation
|
||||||
sed -i "s#/usr#$out#" src/render/OpenGL.cpp
|
sed -i "s#/usr#$out#" src/render/OpenGL.cpp
|
||||||
|
|
||||||
# Generate version.h
|
|
||||||
cp src/version.h.in src/version.h
|
|
||||||
substituteInPlace src/version.h \
|
|
||||||
--replace-warn "@HASH@" '${commit}' \
|
|
||||||
--replace-warn "@BRANCH@" "" \
|
|
||||||
--replace-warn "@MESSAGE@" "" \
|
|
||||||
--replace-warn "@DATE@" "${date}" \
|
|
||||||
--replace-warn "@TAG@" "" \
|
|
||||||
--replace-warn "@DIRTY@" '${
|
|
||||||
if commit == ""
|
|
||||||
then "dirty"
|
|
||||||
else ""
|
|
||||||
}'
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
DATE = date;
|
||||||
|
HASH = commit;
|
||||||
|
DIRTY = if commit == "" then "dirty" else "";
|
||||||
|
|
||||||
nativeBuildInputs = lib.concatLists [
|
nativeBuildInputs = lib.concatLists [
|
||||||
[
|
[
|
||||||
hyprwayland-scanner
|
hyprwayland-scanner
|
||||||
|
@ -118,7 +106,6 @@ assert lib.assertMsg (!hidpiXWayland) "The option `hidpiXWayland` has been remov
|
||||||
fribidi
|
fribidi
|
||||||
git
|
git
|
||||||
hyprcursor.dev
|
hyprcursor.dev
|
||||||
hyprland-protocols
|
|
||||||
hyprlang
|
hyprlang
|
||||||
libGL
|
libGL
|
||||||
libdrm
|
libdrm
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
cp -fr ./src/version.h.in ./src/version.h
|
cp -fr ./src/version.h.in ./src/version.h
|
||||||
|
|
||||||
HASH=$(git rev-parse HEAD)
|
HASH=${HASH-$(git rev-parse HEAD)}
|
||||||
BRANCH=$(git branch --show-current)
|
BRANCH=${BRANCH-$(git branch --show-current)}
|
||||||
MESSAGE=$(git show ${GIT_COMMIT_HASH} | head -n 5 | tail -n 1 | sed -e 's/#//g' -e 's/\"//g')
|
MESSAGE=${MESSAGE-$(git show | head -n 5 | tail -n 1 | sed -e 's/#//g' -e 's/\"//g')}
|
||||||
DATE=$(git show ${GIT_COMMIT_HASH} --no-patch --format=%cd --date=local)
|
DATE=${DATE-$(git show --no-patch --format=%cd --date=local)}
|
||||||
DIRTY=$(git diff-index --quiet HEAD -- || echo dirty)
|
DIRTY=${DIRTY-$(git diff-index --quiet HEAD -- || echo dirty)}
|
||||||
TAG=$(git describe --tags)
|
TAG=${TAG-$(git describe --tags)}
|
||||||
COMMITS=$(git rev-list --count HEAD)
|
COMMITS=${COMMITS-$(git rev-list --count HEAD)}
|
||||||
|
|
||||||
sed -i -e "s#@HASH@#${HASH}#" ./src/version.h
|
sed -i -e "s#@HASH@#${HASH}#" ./src/version.h
|
||||||
sed -i -e "s#@BRANCH@#${BRANCH}#" ./src/version.h
|
sed -i -e "s#@BRANCH@#${BRANCH}#" ./src/version.h
|
||||||
|
|
Loading…
Reference in a new issue