Skip to content

Commit 5b2b4f4

Browse files
committed
services/oss: add freebsd sound module
1 parent 7511545 commit 5b2b4f4

9 files changed

Lines changed: 1271 additions & 0 deletions

File tree

BUILD.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -174,6 +174,11 @@ To disable: `-DSERVICE_PIPEWIRE=OFF`
174174

175175
Dependencies: `libpipewire`
176176

177+
### OSS
178+
This feature enables sound system support on FreeBSD.
179+
180+
To disable: `-DSERVICE_OSS=OFF`
181+
177182
### StatusNotifier / System Tray
178183
This feature enables system tray support using the status notifier dbus protocol.
179184

CMakeLists.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ boption(ASAN "ASAN (dev)" OFF) # note: better output with gcc than clang
4949
boption(FRAME_POINTERS "Keep Frame Pointers (dev)" ${ASAN})
5050

5151
if (CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
52+
boption(SERVICE_OSS "Open Sound System" ON)
5253
boption(USE_JEMALLOC "Use jemalloc" OFF)
5354
else()
5455
boption(USE_JEMALLOC "Use jemalloc" ON)
@@ -81,6 +82,7 @@ boption(SERVICE_UPOWER "UPower" ON)
8182
boption(SERVICE_NOTIFICATIONS "Notifications" ON)
8283
boption(BLUETOOTH "Bluetooth" ON)
8384
boption(NETWORK "Network" ON)
85+
boption(SERVICE_OSS "Open Sound System" OFF)
8486

8587
include(cmake/install-qml-module.cmake)
8688
include(cmake/util.cmake)

default.nix

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@
4646
withWayland ? true,
4747
withX11 ? true,
4848
withPipewire ? true,
49+
withOSS ? false,
4950
withPam ? true,
5051
withHyprland ? true,
5152
withI3 ? true,
@@ -107,6 +108,7 @@
107108
(lib.cmakeBool "WAYLAND" withWayland)
108109
(lib.cmakeBool "SCREENCOPY" (libgbm != null))
109110
(lib.cmakeBool "SERVICE_PIPEWIRE" withPipewire)
111+
(lib.cmakeBool "SERVICE_OSS" withOSS)
110112
(lib.cmakeBool "SERVICE_PAM" withPam)
111113
(lib.cmakeBool "SERVICE_NETWORKMANAGER" withNetworkManager)
112114
(lib.cmakeBool "SERVICE_POLKIT" withPolkit)

src/services/CMakeLists.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,3 +29,7 @@ endif()
2929
if (SERVICE_NOTIFICATIONS)
3030
add_subdirectory(notifications)
3131
endif()
32+
33+
if (SERVICE_OSS)
34+
add_subdirectory(oss)
35+
endif()

src/services/oss/CMakeLists.txt

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
qt_add_library(quickshell-service-oss STATIC
2+
oss.cpp
3+
)
4+
5+
qt_add_qml_module(quickshell-service-oss
6+
URI Quickshell.Services.OSS
7+
VERSION 0.1
8+
DEPENDENCIES QtQml
9+
)
10+
11+
install_qml_module(quickshell-service-oss)
12+
13+
target_link_libraries(quickshell PRIVATE quickshell-service-ossplugin Qt6::Core)

src/services/oss/module.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
name = "Quickshell.Services.OSS"
2+
description = "Open Sound System (FreeBSD)"
3+
headers = [
4+
"oss.hpp",
5+
]
6+
-----

0 commit comments

Comments
 (0)