Commit Graph

57 Commits

Author SHA1 Message Date
Tom Englund 8b37e81374
cursormgr: add a new setting to sync gsettings (#7253)
cursor:sync_gsettings_theme is set to default true and if enabled it
will now sync xcursor theme loading with gsettings if it can, meaning
CSD clients will now also change to the appropiate theme upon start and
hyprctl setcursor THEME SIZE .
2024-08-09 19:33:20 +02:00
Vaxry 83a334f97d
core: Move to C++26 and use native_handle to CLOEXEC the debug fd (#7219)
Requires GCC >= 14 / Clang >= 18

---------

Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
2024-08-08 11:54:41 +02:00
Mihai Fufezan 5dd2c27b63
CMake, Meson: install config and wallpapers to DATADIR/hypr
OpenGL: get wallpapers dir from DATAROOTDIR
2024-08-04 15:19:37 +03:00
Mihai Fufezan 928d1dd38a
CMake, Meson, Nix: replace props.json with VERSION 2024-07-21 19:24:17 +03:00
Vaxry 016da234d0
Core: Move to aquamarine (#6608)
Moves Hyprland from wlroots to aquamarine for the backend.

---------

Signed-off-by: Vaxry <vaxry@vaxry.net>
Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
Co-authored-by: Jan Beich <jbeich@FreeBSD.org>
Co-authored-by: vaxerski <vaxerski@users.noreply.github.com>
Co-authored-by: UjinT34 <41110182+UjinT34@users.noreply.github.com>
Co-authored-by: Tom Englund <tomenglund26@gmail.com>
Co-authored-by: Ikalco <73481042+ikalco@users.noreply.github.com>
Co-authored-by: diniamo <diniamo53@gmail.com>
2024-07-21 13:09:54 +02:00
Jan Beich db5d39a66f meson: add more xcb-* dependencies after addd3e7f1a
ld: error: undefined symbol: xcb_icccm_get_wm_hints_from_reply
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::readProp(CSharedPointer<CXWaylandSurface>, unsigned int, xcb_get_property_reply_t*))

ld: error: undefined symbol: xcb_icccm_get_wm_size_hints_from_reply
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::readProp(CSharedPointer<CXWaylandSurface>, unsigned int, xcb_get_property_reply_t*))

ld: error: undefined symbol: xcb_errors_get_name_for_major_code
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::handleError(xcb_value_error_t*))

ld: error: undefined symbol: xcb_errors_get_name_for_minor_code
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::handleError(xcb_value_error_t*))

ld: error: undefined symbol: xcb_errors_get_name_for_error
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::handleError(xcb_value_error_t*))

ld: error: undefined symbol: xcb_xfixes_id
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::gatherResources())
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::gatherResources())

ld: error: undefined symbol: xcb_composite_id
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::gatherResources())

ld: error: undefined symbol: xcb_res_id
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::gatherResources())
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::gatherResources())

ld: error: undefined symbol: xcb_xfixes_query_version
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::gatherResources())

ld: error: undefined symbol: xcb_xfixes_query_version_reply
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::gatherResources())

ld: error: undefined symbol: xcb_res_query_version
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::gatherResources())

ld: error: undefined symbol: xcb_res_query_version_reply
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::gatherResources())

ld: error: undefined symbol: xcb_render_query_pict_formats
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::getRenderFormat())

ld: error: undefined symbol: xcb_render_query_pict_formats_reply
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::getRenderFormat())

ld: error: undefined symbol: xcb_render_query_pict_formats_formats_iterator
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::getRenderFormat())

ld: error: undefined symbol: xcb_render_pictforminfo_next
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::getRenderFormat())

ld: error: undefined symbol: xcb_errors_context_new
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::CXWM())

ld: error: undefined symbol: xcb_composite_redirect_subwindows
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::CXWM())

ld: error: undefined symbol: xcb_xfixes_select_selection_input
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::initSelection())

ld: error: undefined symbol: xcb_render_create_picture
>>> referenced by XWM.cpp
>>>               src/Hyprland.p/xwayland_XWM.cpp.o:(CXWM::setCursor(unsigned char*, unsigned int, Vector2D const&, Vector2D const&))

ld: error: too many errors emitted, stopping now (use --error-limit=0 to see all errors)
2024-05-27 12:24:37 +03:00
giskard 3c907f7830 build: update meson, cmake setup
- meson
. fix run_command() check warning
. drop lines for compatability, as it's already using c++23

- cmake
. generate `compile_commands.json` by default
. position independent build: __FILE__
2024-05-21 20:36:07 +03:00
Mihai Fufezan c8ae9a2e83 Meson: fix Cflags 2024-05-12 17:49:50 +03:00
Yaroslav a945346064
core: remove libsystemd dependency (#5660)
* remove libsystemd dependency

as per Lennart Poettering's advice:
https://github.com/systemd/systemd/issues/32028#issuecomment-2031366922

* fix naming for systemd helper functions

* rename vars according to code style

* Nix: update meson patch

---------

Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
2024-04-20 18:50:07 +01:00
Jan Beich 2ea367839b
build: Unbreak build on FreeBSD by adjusting dependencies (#5595)
* deps: add epoll-shim for some BSDs after 863c7b6072

ld: error: undefined symbol: timerfd_create
>>> referenced by EventLoopManager.cpp
>>>               src/Hyprland.p/managers_eventLoop_EventLoopManager.cpp.o:(CEventLoopManager::CEventLoopManager())

ld: error: undefined symbol: timerfd_settime
>>> referenced by EventLoopManager.cpp
>>>               src/Hyprland.p/managers_eventLoop_EventLoopManager.cpp.o:(CEventLoopManager::nudgeTimers())

See also
https://github.com/freebsd/freebsd-src/commit/af93fea71038
https://github.com/netbsd/src/commit/75f1bc6655cf

* deps: drop unused xcb-image after 45945a3e7d

$ pkg install <hyprland dependencies>
$ pkg install meson jq `pkg rquery %dn wlroots` hwdata
$ gmake all
[...]
-- Checking for modules 'xcb;xwayland;xcb-util;xcb-render;xcb-image;xcb-xfixes;xcb-icccm;xcb-composite;xcb-res;xcb-ewmh'
--   Package 'xcb-image' not found
CMake Error at /usr/local/share/cmake/Modules/FindPkgConfig.cmake:619 (message):
  The following required packages were not found:

   - xcb-image

Call Stack (most recent call first):
  /usr/local/share/cmake/Modules/FindPkgConfig.cmake:841 (_pkg_check_modules_internal)
  CMakeLists.txt:177 (pkg_check_modules)

See also
https://github.com/swaywm/wlroots/commit/ae7c3f3d1c56
2024-04-15 14:42:17 +01:00
Mihai Fufezan d8d0d3b20b
Nix & Meson: switch to wlroots-hyprland 2024-04-12 20:39:00 +03:00
Vaxry d360550546
hyprpm: Add hyprpm, a Hyprland Plugin Manager (#4072) 2023-12-07 10:41:09 +00:00
memchr d70cc88dab
meson: generate version.h before install_headers (#3612)
Otherwise, meson install would not install version.h as a header in a
clean build.
2023-10-19 00:09:06 +01:00
Vaxry 06cc42441c
build: guard execinfo.h via build systems (#3547)
* guard execinfo via cmake

* libexecinfo -> execinfo macro name

* meson: add execinfo check

* move check in cmake up

---------

Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-10-11 22:27:53 +01:00
Vaxry 914851b91a
internal: better versioning (#3543)
* better versioning

* meson: better versioning

* nix: better versioning

---------

Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-10-10 20:21:57 +01:00
vaxerski c0082519ae wlroots: disable wlr vulkan support
Hyprland will never use vulkan so this is completely redundant
2023-09-17 00:02:11 +01:00
Mihai Fufezan 78826c6d18
meson & nix: install wlroots headers (#2287) 2023-05-16 20:50:18 +03:00
Mihai Fufezan 72d2f33b34
Meson: add subdirs to pkg-config file 2023-04-27 01:34:40 +03:00
Ching Pei Yang 38bdbdb0f5
Plugin header overhaul (#2087)
* meson: install headers

* Meson/CMake: add pkg-config file for headers

* makefile: install headers and pkgconfig

* CMake: move protocols to cmake

Co-authored-by: Ching Pei Yang <badnam3o.0@gmail.com>

---------

Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
Co-authored-by: vaxerski <43317083+vaxerski@users.noreply.github.com>
2023-04-27 00:59:16 +03:00
Oliver Ni e994b0c8b8 Fix nix build options 2023-03-27 11:00:37 +03:00
Mihai Fufezan 1c67849bf1
Nix: fix meson patch again 2023-03-15 20:45:44 +02:00
Vaxry 8b81f41e52
Plugin System (#1590)
---------

Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-02-27 12:32:38 +00:00
Jan Beich 474ada9267
Unbreak CrashReporter on FreeBSD (#1589) 2023-02-20 14:15:15 +00:00
Mihai Fufezan bd2245d642
meson: build in release by default 2023-02-04 01:13:15 +02:00
Mihai Fufezan a54247125f
Build: use props file for versioning 2023-01-06 16:22:00 +02:00
Mihai Fufezan e9a6c3b498
Nix & meson: 0.19.2 -> 0.20.0 2023-01-06 01:24:47 +02:00
jrun 0d14fd9136
add systemd support (#1253)
* add systemd support
motivation for this is is proper ordering of related/bound/required
services to Hyprland (e.g. swaybg) that would need to have a compositor
ready.

this could possibly be a build-time option of course.

see also:
example/ files for example of services

Signed-off-by: Paymon MARANDI <darwinskernel@gmail.com>

* nix: add withSystemd flag

Signed-off-by: Paymon MARANDI <darwinskernel@gmail.com>
Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
Co-authored-by: Vaxerski <vaxry@vaxry.net>
2023-01-05 20:17:55 +01:00
Rens Porre de5e784e07 Nix & meson: 0.18.0 -> 0.19.2 2022-12-22 00:05:56 +02:00
Mihai Fufezan 141456dd89
Nix & meson: 0.17.0 -> 0.18.0 2022-11-25 08:34:23 +02:00
Mihai Fufezan b6e33830af
Nix & meson: 0.16.0 -> 0.17.0
Nix: make xwayland dependencies optional
2022-10-31 12:41:31 +02:00
wael c775153e01
meson.build: use sh instead of bash 2022-10-22 09:23:26 +03:00
Mihai Fufezan 48634d7e4a
Nix & meson: 0.15.3 -> 0.16.0 2022-10-18 01:16:44 +03:00
Mihai Fufezan f30e572e00
Nix & meson: 0.15.0beta -> 0.15.3beta
Nix: remove merged libdrm update
2022-10-15 01:40:25 +03:00
Mihai Fufezan ec0c6fa22a
Nix & meson: 0.14.0 -> 0.15.0 2022-10-04 00:51:49 +03:00
Mihai Fufezan db551b8970
Nix & meson: bump to 0.14.0 2022-09-22 19:59:38 +03:00
Mihai Fufezan 7610c20761
Nix & meson: 0.11.1 -> 0.12.1
flake: add commit to wlroots version
2022-08-31 12:22:32 +03:00
Mihai Fufezan 80d522cb26
nix & meson: update version to 0.11.1 2022-08-26 19:48:22 +03:00
Vaxry 4c6d9b7d5a
Merge pull request #555 from viperML/update-man
docs: build man pages to repo
2022-08-22 15:16:32 +02:00
Florian sp1rit​ e9551731f0
improve compatability with older meson versions
- changed <compiler>.get_version() to <compiler>.version()

Signed-off-by: Florian "sp1rit"​ <sp1ritCS@protonmail.com>
2022-08-22 14:35:49 +02:00
Fernando Ayats fea6d7deb0 docs: install manpages with meson 2022-08-21 18:00:04 +02:00
Ash Walker 38056c0102 fix: support clang in meson build 2022-08-12 11:21:19 -04:00
Mihai Fufezan 2d33d4aebc
nix & meson: update version to 0.10.0 2022-08-09 01:35:05 +03:00
Mihai Fufezan 0eebf3ab16
meson: add -DGIT arguments (#321) 2022-07-29 13:21:19 +03:00
Mihai Fufezan b2627c05c4
flake & meson: 0.7.0 -> 0.8.1
nix: add legacyRenderer option
2022-07-27 14:57:59 +03:00
Mihai Fufezan f9985a36b3
nix & meson: 0.6.2 -> 0.7.0 2022-07-12 20:12:59 +03:00
vaxerski 141f9810bb fix meson C++23 2022-07-06 17:02:12 +02:00
vaxerski 1599dc47d1 set proper C++23 std to meson as well 2022-07-06 16:55:49 +02:00
Mihai Fufezan 9ee14eb445
meson: build with -O3 (#291) 2022-07-02 02:48:21 +03:00
Mihai Fufezan dc83110c05
nix & meson: 0.6.0 -> 0.6.2 2022-06-29 20:50:33 +03:00
Mihai Fufezan e95e01416e
flake, meson: manually update version
version update workflow: temporarily disable running on push
2022-06-24 19:48:11 +03:00