fix vscode
This commit is contained in:
parent
0db4f9bef8
commit
79c9f90e53
13 changed files with 711 additions and 42 deletions
170
flakes/qtile/flake.lock
generated
170
flakes/qtile/flake.lock
generated
|
@ -36,13 +36,47 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts_3": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": "nixpkgs-lib_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1693611461,
|
||||
"narHash": "sha256-aPODl8vAgGQ0ZYFIRisxYG5MOGSkIczvu2Cd8Gb9+1Y=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "7f53fdb7bdc5bb237da7fefef12d099e4fd611ca",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"id": "flake-parts",
|
||||
"type": "indirect"
|
||||
}
|
||||
},
|
||||
"flake-parts_4": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": "nixpkgs-lib_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1693611461,
|
||||
"narHash": "sha256-aPODl8vAgGQ0ZYFIRisxYG5MOGSkIczvu2Cd8Gb9+1Y=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "7f53fdb7bdc5bb237da7fefef12d099e4fd611ca",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"id": "flake-parts",
|
||||
"type": "indirect"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1695644571,
|
||||
"narHash": "sha256-asS9dCCdlt1lPq0DLwkVBbVoEKuEuz+Zi3DG7pR/RxA=",
|
||||
"lastModified": 1695830400,
|
||||
"narHash": "sha256-gToZXQVr0G/1WriO83olnqrLSHF2Jb8BPcmCt497ro0=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "6500b4580c2a1f3d0f980d32d285739d8e156d92",
|
||||
"rev": "8a86b98f0ba1c405358f1b71ff8b5e1d317f5db2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -88,13 +122,49 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"nixpkgs-lib_3": {
|
||||
"locked": {
|
||||
"lastModified": 1695644571,
|
||||
"narHash": "sha256-asS9dCCdlt1lPq0DLwkVBbVoEKuEuz+Zi3DG7pR/RxA=",
|
||||
"dir": "lib",
|
||||
"lastModified": 1693471703,
|
||||
"narHash": "sha256-0l03ZBL8P1P6z8MaSDS/MvuU8E75rVxe5eE1N6gxeTo=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "6500b4580c2a1f3d0f980d32d285739d8e156d92",
|
||||
"rev": "3e52e76b70d5508f3cec70b882a29199f4d1ee85",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"dir": "lib",
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-lib_4": {
|
||||
"locked": {
|
||||
"dir": "lib",
|
||||
"lastModified": 1693471703,
|
||||
"narHash": "sha256-0l03ZBL8P1P6z8MaSDS/MvuU8E75rVxe5eE1N6gxeTo=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "3e52e76b70d5508f3cec70b882a29199f4d1ee85",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"dir": "lib",
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1695830400,
|
||||
"narHash": "sha256-gToZXQVr0G/1WriO83olnqrLSHF2Jb8BPcmCt497ro0=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "8a86b98f0ba1c405358f1b71ff8b5e1d317f5db2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -107,12 +177,15 @@
|
|||
"pywlroots": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts_2",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"pywlroots-src": "pywlroots-src"
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"pywlroots-src": "pywlroots-src",
|
||||
"scenefx": "scenefx"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1,
|
||||
"narHash": "sha256-W8zExI9+M6/4XcyncAFpnLvr+lNgDXMTZ1Nfb6JtkIU=",
|
||||
"narHash": "sha256-UWrgMhmt1I9du1arlBji6l0ijm/33L1B7J3mi68n4oc=",
|
||||
"path": "pywlroots",
|
||||
"type": "path"
|
||||
},
|
||||
|
@ -140,11 +213,11 @@
|
|||
"qtile-src": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1695682843,
|
||||
"narHash": "sha256-8Dqe2OoFND6n9d++uxgEcUffVT8V5/g9fXqszJ/IpEU=",
|
||||
"lastModified": 1695927044,
|
||||
"narHash": "sha256-Z0EpAYJu01lH1BOJXONynGZmSk7nEqmPj15JXflkGaE=",
|
||||
"owner": "qtile",
|
||||
"repo": "qtile",
|
||||
"rev": "ad5d0538c51c7ba57ef8520b45b2728fe6caa3a3",
|
||||
"rev": "17f20d65920502d9e4920eae50c036984fd49a25",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -158,7 +231,76 @@
|
|||
"flake-parts": "flake-parts",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"pywlroots": "pywlroots",
|
||||
"qtile-src": "qtile-src"
|
||||
"qtile-src": "qtile-src",
|
||||
"scenefx": "scenefx_2"
|
||||
}
|
||||
},
|
||||
"scenefx": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts_3",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"scenefx-src": "scenefx-src"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1,
|
||||
"narHash": "sha256-MjNre2IVsdGHgumTqojSngsCKSZQPcri01ZikXbyTqQ=",
|
||||
"path": "../scenefx",
|
||||
"type": "path"
|
||||
},
|
||||
"original": {
|
||||
"path": "../scenefx",
|
||||
"type": "path"
|
||||
}
|
||||
},
|
||||
"scenefx-src": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1691347738,
|
||||
"narHash": "sha256-c/zRWz6njC3RsHzIcWpd5m7CXGprrIhKENpaQVH7Owk=",
|
||||
"owner": "wlrfx",
|
||||
"repo": "scenefx",
|
||||
"rev": "b929a2bbadf467864796ad4ec90882ce86cfebff",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "wlrfx",
|
||||
"repo": "scenefx",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"scenefx-src_2": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1691347738,
|
||||
"narHash": "sha256-c/zRWz6njC3RsHzIcWpd5m7CXGprrIhKENpaQVH7Owk=",
|
||||
"owner": "wlrfx",
|
||||
"repo": "scenefx",
|
||||
"rev": "b929a2bbadf467864796ad4ec90882ce86cfebff",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "wlrfx",
|
||||
"repo": "scenefx",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"scenefx_2": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts_4",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"scenefx-src": "scenefx-src_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1,
|
||||
"narHash": "sha256-MjNre2IVsdGHgumTqojSngsCKSZQPcri01ZikXbyTqQ=",
|
||||
"path": "scenefx",
|
||||
"type": "path"
|
||||
},
|
||||
"original": {
|
||||
"path": "scenefx",
|
||||
"type": "path"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
|
@ -11,6 +11,12 @@
|
|||
|
||||
pywlroots = {
|
||||
url = "path:pywlroots";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
scenefx = {
|
||||
url = "path:scenefx";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -38,14 +44,14 @@
|
|||
src = inputs.qtile-src;
|
||||
SETUPTOOLS_SCM_PRETEND_VERSION = "0.23.0";
|
||||
postPatch = ''
|
||||
substituteInPlace libqtile/pangocffi.py \
|
||||
--replace libgobject-2.0.so.0 ${pkgs.glib.out}/lib/libgobject-2.0.so.0 \
|
||||
--replace libpangocairo-1.0.so.0 ${pkgs.pango.out}/lib/libpangocairo-1.0.so.0 \
|
||||
--replace libpango-1.0.so.0 ${pkgs.pango.out}/lib/libpango-1.0.so.0
|
||||
substituteInPlace libqtile/backend/x11/xcursors.py \
|
||||
--replace libxcb-cursor.so.0 ${pkgs.xcb-util-cursor.out}/lib/libxcb-cursor.so.0
|
||||
substituteInPlace libqtile/backend/wayland/cffi/cairo_buffer.py \
|
||||
--replace drm_fourcc.h libdrm/drm_fourcc.h
|
||||
substituteInPlace libqtile/pangocffi.py \
|
||||
--replace libgobject-2.0.so.0 ${pkgs.glib.out}/lib/libgobject-2.0.so.0 \
|
||||
--replace libpangocairo-1.0.so.0 ${pkgs.pango.out}/lib/libpangocairo-1.0.so.0 \
|
||||
--replace libpango-1.0.so.0 ${pkgs.pango.out}/lib/libpango-1.0.so.0
|
||||
substituteInPlace libqtile/backend/x11/xcursors.py \
|
||||
--replace libxcb-cursor.so.0 ${pkgs.xcb-util-cursor.out}/lib/libxcb-cursor.so.0
|
||||
substituteInPlace libqtile/backend/wayland/cffi/cairo_buffer.py \
|
||||
--replace drm_fourcc.h libdrm/drm_fourcc.h
|
||||
substituteInPlace libqtile/backend/wayland/cffi/build.py \
|
||||
--replace /usr/include/pixman-1 ${lib.getDev pkgs.pixman}/include \
|
||||
--replace /usr/include/libdrm ${lib.getDev pkgs.libdrm}/include/libdrm
|
||||
|
@ -76,6 +82,7 @@
|
|||
libdrm
|
||||
wayland
|
||||
xorg.xcbutilwm
|
||||
inputs'.scenefx.packages.default
|
||||
(wlroots.overrideAttrs (wf: wp: {
|
||||
postPatch =
|
||||
wp.postPatch
|
||||
|
@ -84,6 +91,7 @@
|
|||
'';
|
||||
}))
|
||||
];
|
||||
# patches = [./scenefx.patch];
|
||||
makeWrapperArgs = [
|
||||
"--suffix PATH : ${lib.makeBinPath [mypy]}"
|
||||
];
|
||||
|
|
93
flakes/qtile/pywlroots/flake.lock
generated
93
flakes/qtile/pywlroots/flake.lock
generated
|
@ -18,13 +18,30 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts_2": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": "nixpkgs-lib_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1693611461,
|
||||
"narHash": "sha256-aPODl8vAgGQ0ZYFIRisxYG5MOGSkIczvu2Cd8Gb9+1Y=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "7f53fdb7bdc5bb237da7fefef12d099e4fd611ca",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"id": "flake-parts",
|
||||
"type": "indirect"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1695644571,
|
||||
"narHash": "sha256-asS9dCCdlt1lPq0DLwkVBbVoEKuEuz+Zi3DG7pR/RxA=",
|
||||
"lastModified": 1695830400,
|
||||
"narHash": "sha256-gToZXQVr0G/1WriO83olnqrLSHF2Jb8BPcmCt497ro0=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "6500b4580c2a1f3d0f980d32d285739d8e156d92",
|
||||
"rev": "8a86b98f0ba1c405358f1b71ff8b5e1d317f5db2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -52,6 +69,40 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-lib_2": {
|
||||
"locked": {
|
||||
"dir": "lib",
|
||||
"lastModified": 1693471703,
|
||||
"narHash": "sha256-0l03ZBL8P1P6z8MaSDS/MvuU8E75rVxe5eE1N6gxeTo=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "3e52e76b70d5508f3cec70b882a29199f4d1ee85",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"dir": "lib",
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1695830400,
|
||||
"narHash": "sha256-gToZXQVr0G/1WriO83olnqrLSHF2Jb8BPcmCt497ro0=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "8a86b98f0ba1c405358f1b71ff8b5e1d317f5db2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pywlroots-src": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
|
@ -72,7 +123,41 @@
|
|||
"inputs": {
|
||||
"flake-parts": "flake-parts",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"pywlroots-src": "pywlroots-src"
|
||||
"pywlroots-src": "pywlroots-src",
|
||||
"scenefx": "scenefx"
|
||||
}
|
||||
},
|
||||
"scenefx": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts_2",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"scenefx-src": "scenefx-src"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1,
|
||||
"narHash": "sha256-MjNre2IVsdGHgumTqojSngsCKSZQPcri01ZikXbyTqQ=",
|
||||
"path": "../scenefx",
|
||||
"type": "path"
|
||||
},
|
||||
"original": {
|
||||
"path": "../scenefx",
|
||||
"type": "path"
|
||||
}
|
||||
},
|
||||
"scenefx-src": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1691347738,
|
||||
"narHash": "sha256-c/zRWz6njC3RsHzIcWpd5m7CXGprrIhKENpaQVH7Owk=",
|
||||
"owner": "wlrfx",
|
||||
"repo": "scenefx",
|
||||
"rev": "b929a2bbadf467864796ad4ec90882ce86cfebff",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "wlrfx",
|
||||
"repo": "scenefx",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
|
@ -4,6 +4,8 @@
|
|||
|
||||
flake-parts.url = "github:hercules-ci/flake-parts";
|
||||
|
||||
scenefx.url = "path:../scenefx";
|
||||
|
||||
pywlroots-src = {
|
||||
url = "github:flacjacket/pywlroots";
|
||||
flake = false;
|
||||
|
@ -44,6 +46,7 @@
|
|||
xorg.xcbutilwm
|
||||
udev
|
||||
wayland
|
||||
inputs'.scenefx.packages.default
|
||||
((wlroots_0_16.override {
|
||||
xwayland = xwayland;
|
||||
enableXWayland = true;
|
||||
|
@ -65,6 +68,11 @@
|
|||
postBuild = ''
|
||||
${python3.pythonForBuild.interpreter} wlroots/ffi_build.py
|
||||
'';
|
||||
# patches = [./scenefx.patch];
|
||||
# postPatch = ''
|
||||
# substituteInPlace wlroots/ffi_build.py \
|
||||
# --replace 'libraries=["wlroots"],' 'libraries=["wlroots","scenefx"],'
|
||||
# '';
|
||||
|
||||
pythonImportsCheck = ["wlroots"];
|
||||
passthru.test = {inherit qtile;};
|
||||
|
|
34
flakes/qtile/pywlroots/scenefx.patch
Normal file
34
flakes/qtile/pywlroots/scenefx.patch
Normal file
|
@ -0,0 +1,34 @@
|
|||
diff --git a/wlroots/ffi_build.py b/wlroots/ffi_build.py
|
||||
index ec01f8b..cac6dd8 100755
|
||||
--- a/wlroots/ffi_build.py
|
||||
+++ b/wlroots/ffi_build.py
|
||||
@@ -1891,6 +1891,12 @@ void wlr_scene_buffer_set_dest_size(struct wlr_scene_buffer *scene_buffer,
|
||||
void wlr_scene_buffer_set_transform(struct wlr_scene_buffer *scene_buffer,
|
||||
enum wl_output_transform transform);
|
||||
|
||||
+void wlr_scene_buffer_set_opacity(struct wlr_scene_buffer *scene_buffer,
|
||||
+ float opacity);
|
||||
+
|
||||
+void wlr_scene_buffer_set_corner_radius(struct wlr_scene_buffer *scene_buffer,
|
||||
+ int radii);
|
||||
+
|
||||
void wlr_scene_buffer_send_frame_done(struct wlr_scene_buffer *scene_buffer,
|
||||
struct timespec *now);
|
||||
|
||||
diff --git a/wlroots/wlr_types/scene.py b/wlroots/wlr_types/scene.py
|
||||
index 3a99d2f..2f3d5ba 100755
|
||||
--- a/wlroots/wlr_types/scene.py
|
||||
+++ b/wlroots/wlr_types/scene.py
|
||||
@@ -170,6 +170,12 @@ class SceneBuffer(Ptr):
|
||||
region_ptr = region._ptr if region else ffi.NULL
|
||||
lib.wlr_scene_buffer_set_buffer_with_damage(self._ptr, buffer_ptr, region_ptr)
|
||||
|
||||
+ def set_opacity(self, opacity: float) -> None:
|
||||
+ lib.wlr_scene_buffer_set_opacity(self._ptr, opacity)
|
||||
+
|
||||
+ def set_corner_radius(self, radii: int) -> None:
|
||||
+ lib.wlr_scene_buffer_set_corner_radius(self._ptr, radii)
|
||||
+
|
||||
|
||||
T = TypeVar("T")
|
||||
BufferCallback = Callable[[SceneBuffer, int, int, T], None]
|
67
flakes/qtile/scenefx.patch
Normal file
67
flakes/qtile/scenefx.patch
Normal file
|
@ -0,0 +1,67 @@
|
|||
diff --git a/libqtile/backend/wayland/window.py b/libqtile/backend/wayland/window.py
|
||||
index 8f2c12a..563cc83 100644
|
||||
--- a/libqtile/backend/wayland/window.py
|
||||
+++ b/libqtile/backend/wayland/window.py
|
||||
@@ -114,6 +114,7 @@ class Window(typing.Generic[S], _Base, base.Window, HasListeners):
|
||||
self.x = 0
|
||||
self.y = 0
|
||||
self._opacity: float = 1.0
|
||||
+ self._rounding: int = 0
|
||||
self._wm_class: str | None = None
|
||||
self._idle_inhibitors_count: int = 0
|
||||
self._urgent = False
|
||||
@@ -389,16 +390,43 @@ class Window(typing.Generic[S], _Base, base.Window, HasListeners):
|
||||
|
||||
@opacity.setter
|
||||
def opacity(self, opacity: float) -> None:
|
||||
- if opacity < 1.0:
|
||||
+ if self.container.node:
|
||||
+ buf = SceneBuffer.from_node(self.container.node)
|
||||
+ if buf:
|
||||
+ buf.set_opacity(opacity)
|
||||
+ else:
|
||||
+ logger.warning(
|
||||
+ f"Failed to turn node {self.container.node} into a buffer!"
|
||||
+ )
|
||||
+ else:
|
||||
logger.warning(
|
||||
- "Sorry, transparency is not yet supported by the wlroots API used by "
|
||||
- "Qtile. Transparency can only be achieved if the client sets it."
|
||||
+ "Sorry, opacity is not implemented for this window type."
|
||||
)
|
||||
# wlroots' scene graph doesn't support setting the opacity of trees/nodes by
|
||||
# the compositor. See: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3393
|
||||
# If/when that becomes supported, this warning can be removed.
|
||||
self._opacity = opacity
|
||||
|
||||
+ @property
|
||||
+ def rounding(self) -> int:
|
||||
+ return self._rounding
|
||||
+
|
||||
+ @rounding.setter
|
||||
+ def rounding(self, radii: int) -> None:
|
||||
+ if self.container.node:
|
||||
+ buf = SceneBuffer.from_node(self.container.node)
|
||||
+ if buf:
|
||||
+ buf.set_corner_radius(radii)
|
||||
+ else:
|
||||
+ logger.warning(
|
||||
+ f"Failed to turn node {self.container.node} into a buffer!"
|
||||
+ )
|
||||
+ else:
|
||||
+ logger.warning(
|
||||
+ "Sorry, rounding is not implemented for this window type."
|
||||
+ )
|
||||
+
|
||||
+
|
||||
@property
|
||||
def floating(self) -> bool:
|
||||
return self._float_state != FloatStates.NOT_FLOATING
|
||||
@@ -921,6 +949,7 @@ class Internal(_Base, base.Internal):
|
||||
self._width: int = width
|
||||
self._height: int = height
|
||||
self._opacity: float = 1.0
|
||||
+ self._rounding: int = 0
|
||||
|
||||
# Store this object on the scene node for finding the window under the pointer.
|
||||
self.wlr_buffer, self.surface = self._new_buffer(init=True)
|
80
flakes/qtile/scenefx/flake.lock
generated
Normal file
80
flakes/qtile/scenefx/flake.lock
generated
Normal file
|
@ -0,0 +1,80 @@
|
|||
{
|
||||
"nodes": {
|
||||
"flake-parts": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": "nixpkgs-lib"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1693611461,
|
||||
"narHash": "sha256-aPODl8vAgGQ0ZYFIRisxYG5MOGSkIczvu2Cd8Gb9+1Y=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "7f53fdb7bdc5bb237da7fefef12d099e4fd611ca",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"id": "flake-parts",
|
||||
"type": "indirect"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1695830400,
|
||||
"narHash": "sha256-gToZXQVr0G/1WriO83olnqrLSHF2Jb8BPcmCt497ro0=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "8a86b98f0ba1c405358f1b71ff8b5e1d317f5db2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-lib": {
|
||||
"locked": {
|
||||
"dir": "lib",
|
||||
"lastModified": 1693471703,
|
||||
"narHash": "sha256-0l03ZBL8P1P6z8MaSDS/MvuU8E75rVxe5eE1N6gxeTo=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "3e52e76b70d5508f3cec70b882a29199f4d1ee85",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"dir": "lib",
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"scenefx-src": "scenefx-src"
|
||||
}
|
||||
},
|
||||
"scenefx-src": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1691347738,
|
||||
"narHash": "sha256-c/zRWz6njC3RsHzIcWpd5m7CXGprrIhKENpaQVH7Owk=",
|
||||
"owner": "wlrfx",
|
||||
"repo": "scenefx",
|
||||
"rev": "b929a2bbadf467864796ad4ec90882ce86cfebff",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "wlrfx",
|
||||
"repo": "scenefx",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
"version": 7
|
||||
}
|
75
flakes/qtile/scenefx/flake.nix
Normal file
75
flakes/qtile/scenefx/flake.nix
Normal file
|
@ -0,0 +1,75 @@
|
|||
{
|
||||
description = "scenefx";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
|
||||
scenefx-src = {
|
||||
url = "github:wlrfx/scenefx";
|
||||
flake = false;
|
||||
};
|
||||
};
|
||||
|
||||
outputs = inputs @ {flake-parts, ...}:
|
||||
flake-parts.lib.mkFlake {inherit inputs;} {
|
||||
imports = [
|
||||
# To import a flake module
|
||||
# 1. Add foo to inputs
|
||||
# 2. Add foo as a parameter to the outputs function
|
||||
# 3. Add here: foo.flakeModule
|
||||
];
|
||||
systems = ["x86_64-linux" "aarch64-linux" "aarch64-darwin" "x86_64-darwin"];
|
||||
perSystem = {
|
||||
config,
|
||||
self',
|
||||
inputs',
|
||||
pkgs,
|
||||
system,
|
||||
...
|
||||
}: {
|
||||
# Per-system attributes can be defined here. The self' and inputs'
|
||||
# module parameters provide easy access to attributes of the same
|
||||
# system.
|
||||
|
||||
# Equivalent to inputs'.nixpkgs.legacyPackages.hello;
|
||||
packages.default = with pkgs;
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "scenefx";
|
||||
version = "unstable-${inputs.scenefx-src.lastModifiedDate}";
|
||||
src = inputs.scenefx-src;
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
cmake
|
||||
pkg-config
|
||||
];
|
||||
buildInputs = [
|
||||
((wlroots_0_16.override {
|
||||
xwayland = xwayland;
|
||||
enableXWayland = true;
|
||||
})
|
||||
.overrideAttrs (wf: wp: {
|
||||
postPatch =
|
||||
wp.postPatch
|
||||
+ ''
|
||||
substituteInPlace render/gles2/renderer.c --replace "glFlush();" "glFinish();"
|
||||
'';
|
||||
}))
|
||||
wayland
|
||||
libdrm
|
||||
libxkbcommon
|
||||
udev
|
||||
pixman
|
||||
wayland-protocols
|
||||
libGL
|
||||
mesa
|
||||
];
|
||||
};
|
||||
};
|
||||
flake = {
|
||||
# The usual flake attributes can be defined here, including system-
|
||||
# agnostic ones like nixosModule and system-enumerating ones, although
|
||||
# those are more easily expressed in perSystem.
|
||||
};
|
||||
};
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue