From 7451890fd71bd8e5a0abe4c22e3d7d6e1b0b2fce Mon Sep 17 00:00:00 2001 From: Mihai Fufezan Date: Thu, 2 Jun 2022 00:42:05 +0300 Subject: [PATCH] nix: replace paths dynamically --- .github/workflows/nix-update.yaml | 5 +- nix/default.nix | 6 +- nix/update-inputs.sh | 6 +- nix/wlroots.patch | 139 ------------------------------ 4 files changed, 8 insertions(+), 148 deletions(-) delete mode 100644 nix/wlroots.patch diff --git a/.github/workflows/nix-update.yaml b/.github/workflows/nix-update.yaml index aa23d220..91a5c686 100644 --- a/.github/workflows/nix-update.yaml +++ b/.github/workflows/nix-update.yaml @@ -1,9 +1,6 @@ name: "Nix: update lockfile" -on: - schedule: - - cron: '0 0 */14 * *' - workflow_dispatch: +on: [push, workflow_dispatch] jobs: update: diff --git a/nix/default.nix b/nix/default.nix index 21f571bf..20586b9f 100644 --- a/nix/default.nix +++ b/nix/default.nix @@ -53,9 +53,11 @@ stdenv.mkDerivation { ++ lib.optional (!enableXWayland) "-DNO_XWAYLAND=true"; # enables building with nix-supplied wlroots instead of submodule - patches = [ ./wlroots.patch ]; + prePatch = '' + sed -Ei 's/"\.\.\/wlroots\/include\/([a-zA-Z0-9./_-]+)"/<\1>/g' src/includes.hpp + ''; postPatch = '' - make config + make protocols ''; postBuild = '' diff --git a/nix/update-inputs.sh b/nix/update-inputs.sh index d0418d65..8c238222 100755 --- a/nix/update-inputs.sh +++ b/nix/update-inputs.sh @@ -1,14 +1,14 @@ #!/usr/bin/env -S nix shell nixpkgs#gawk nixpkgs#git nixpkgs#moreutils nixpkgs#jq -c bash -# update nixpkgs to latest version -nix flake lock --update-input nixpkgs - # get wlroots revision from submodule SUB_REV=$(git submodule status | awk '{ print substr($1,2)}') # and from lockfile CRT_REV=$(jq < flake.lock '.nodes.wlroots.locked.rev' -r) if [ $SUB_REV != $CRT_REV ]; then + # update nixpkgs to latest version + nix flake lock --update-input nixpkgs + # update wlroots to submodule revision nix flake lock --override-input wlroots "gitlab:wlroots/wlroots/$SUB_REV?host=gitlab.freedesktop.org" diff --git a/nix/wlroots.patch b/nix/wlroots.patch deleted file mode 100644 index f29a8422..00000000 --- a/nix/wlroots.patch +++ /dev/null @@ -1,139 +0,0 @@ -diff --git a/Makefile b/Makefile -index 55088a7..b185eb9 100644 ---- a/Makefile -+++ b/Makefile -@@ -89,7 +89,6 @@ clear: - rm -rf build - rm -f *.o *-protocol.h *-protocol.c - rm -f ./hyprctl/hyprctl -- rm -rf ./wlroots/build - - all: - make config -@@ -114,16 +113,4 @@ uninstall: - rm -f ${PREFIX}/bin/hyprctl - rm -rf ${PREFIX}/share/hyprland - --protocols: xdg-shell-protocol.o wlr-layer-shell-unstable-v1-protocol.o wlr-screencopy-unstable-v1-protocol.o idle-protocol.o ext-workspace-unstable-v1-protocol.o pointer-constraints-unstable-v1-protocol.o -- --config: -- make protocols -- -- sed -i -E 's/(soversion = 11)([^032]|$$)/soversion = 11032/g' ./wlroots/meson.build -- -- rm -rf ./wlroots/build -- -- cd wlroots && meson ./build --prefix=/usr --buildtype=release -- cd wlroots && ninja -C build/ -- -- cd wlroots && sudo ninja -C build/ install -+config: xdg-shell-protocol.o wlr-layer-shell-unstable-v1-protocol.o wlr-screencopy-unstable-v1-protocol.o idle-protocol.o ext-workspace-unstable-v1-protocol.o pointer-constraints-unstable-v1-protocol.o -diff --git a/src/includes.hpp b/src/includes.hpp -index 5c216b7..65f2d0f 100644 ---- a/src/includes.hpp -+++ b/src/includes.hpp -@@ -34,56 +34,56 @@ - #define static - - extern "C" { --#include "../wlroots/include/wlr/backend.h" --#include "../wlroots/include/wlr/backend/libinput.h" --#include "../wlroots/include/wlr/render/allocator.h" --#include "../wlroots/include/wlr/render/wlr_renderer.h" --#include "../wlroots/include/wlr/types/wlr_compositor.h" --#include "../wlroots/include/wlr/types/wlr_cursor.h" --#include "../wlroots/include/wlr/types/wlr_data_control_v1.h" --#include "../wlroots/include/wlr/types/wlr_data_device.h" --#include "../wlroots/include/wlr/types/wlr_export_dmabuf_v1.h" --#include "../wlroots/include/wlr/types/wlr_linux_dmabuf_v1.h" --#include "../wlroots/include/wlr/types/wlr_gamma_control_v1.h" --#include "../wlroots/include/wlr/types/wlr_idle.h" --#include "../wlroots/include/wlr/types/wlr_input_device.h" --#include "../wlroots/include/wlr/types/wlr_keyboard.h" --#include "../wlroots/include/wlr/types/wlr_layer_shell_v1.h" --#include "../wlroots/include/wlr/types/wlr_matrix.h" --#include "../wlroots/include/wlr/types/wlr_output.h" --#include "../wlroots/include/wlr/types/wlr_output_layout.h" --#include "../wlroots/include/wlr/types/wlr_output_management_v1.h" --#include "../wlroots/include/wlr/types/wlr_pointer.h" --#include "../wlroots/include/wlr/types/wlr_presentation_time.h" --#include "../wlroots/include/wlr/types/wlr_primary_selection.h" --#include "../wlroots/include/wlr/types/wlr_primary_selection_v1.h" --#include "../wlroots/include/wlr/types/wlr_screencopy_v1.h" --#include "../wlroots/include/wlr/types/wlr_seat.h" --#include "../wlroots/include/wlr/types/wlr_server_decoration.h" --#include "../wlroots/include/wlr/types/wlr_viewporter.h" --#include "../wlroots/include/wlr/types/wlr_virtual_keyboard_v1.h" --#include "../wlroots/include/wlr/types/wlr_xcursor_manager.h" --#include "../wlroots/include/wlr/types/wlr_xdg_activation_v1.h" --#include "../wlroots/include/wlr/types/wlr_xdg_decoration_v1.h" --#include "../wlroots/include/wlr/types/wlr_xdg_output_v1.h" --#include "../wlroots/include/wlr/types/wlr_xdg_shell.h" --#include "../wlroots/include/wlr/types/wlr_subcompositor.h" --#include "../wlroots/include/wlr/types/wlr_scene.h" --#include "../wlroots/include/wlr/types/wlr_output_damage.h" --#include "../wlroots/include/wlr/types/wlr_input_inhibitor.h" --#include "../wlroots/include/wlr/types/wlr_keyboard_shortcuts_inhibit_v1.h" --#include "../wlroots/include/wlr/types/wlr_virtual_pointer_v1.h" --#include "../wlroots/include/wlr/types/wlr_foreign_toplevel_management_v1.h" --#include "../wlroots/include/wlr/util/log.h" --#include "../wlroots/include/wlr/xwayland.h" --#include "../wlroots/include/wlr/util/region.h" -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include - #include - #include --#include "../wlroots/include/wlr/render/egl.h" --#include "../wlroots/include/wlr/render/gles2.h" --#include "../wlroots/include/wlr/render/wlr_texture.h" --#include "../wlroots/include/wlr/types/wlr_pointer_constraints_v1.h" --#include "../wlroots/include/wlr/types/wlr_relative_pointer_v1.h" -+#include -+#include -+#include -+#include -+#include - } - - #undef class