Skip to content

Commit d0a759c

Browse files
committed
docs: Move Pulse install instructions into separate markdown file
1 parent 0a7baec commit d0a759c

File tree

2 files changed

+124
-87
lines changed

2 files changed

+124
-87
lines changed

INSTALL_PULSE.md

Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
## Installation for PulseAudio
2+
3+
This section is dedicated to systems using PulseAudio as the audio server. If you are using PipeWire, please go [here](https://github.com/Audio4Linux/JDSP4Linux#installation).
4+
5+
* [Flatpak](#flatpak)
6+
* [Arch Linux (AUR)](#arch)
7+
* [Build from sources](#build-from-sources)
8+
9+
### Flatpak
10+
11+
Universal binary packages for all distros.
12+
13+
The legacy PulseAudio build is not available on FlatHub.. You need to retrieve it from my personal repository:
14+
```
15+
sudo flatpak remote-add --if-not-exists thepbones-repo https://raw.githubusercontent.com/ThePBone/flatpak-repo/main/thepbone.flatpakrepo
16+
flatpak install me.timschneeberger.jdsp4linux.pulse
17+
```
18+
19+
> **Note**: Flatpaks are sandboxed. This application can only access `~/.var/app/me.timschneeberger.jdsp4linux.pulse/` by default.
20+
21+
### Arch
22+
[AUR packages](https://aur.archlinux.org/packages/?O=0&K=jamesdsp) are available:
23+
24+
* Stable version
25+
26+
![AUR version](https://img.shields.io/aur/version/jamesdsp-pulse) ![AUR version](https://img.shields.io/aur/votes/jamesdsp-pulse) ![AUR version](https://img.shields.io/aur/maintainer/jamesdsp-pulse) ![AUR version](https://img.shields.io/aur/last-modified/jamesdsp-pulse)
27+
```
28+
yay -S jamesdsp-pulse
29+
```
30+
31+
* Development version
32+
33+
![AUR version](https://img.shields.io/aur/version/jamesdsp-pulse-git) ![AUR version](https://img.shields.io/aur/votes/jamesdsp-pulse-git) ![AUR version](https://img.shields.io/aur/maintainer/jamesdsp-pulse-git) ![AUR version](https://img.shields.io/aur/last-modified/jamesdsp-pulse-git)
34+
```
35+
yay -S jamesdsp-pulse-git
36+
```
37+
38+
### Build from sources
39+
40+
#### Install dependencies
41+
42+
**Debian/Ubuntu-based distros**
43+
44+
```bash
45+
sudo apt install build-essential libarchive-dev qtbase5-private-dev qtbase5-dev libqt5svg5-dev libglibmm-2.4-dev libglib2.0-dev libpulse-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
46+
```
47+
**Fedora**
48+
49+
```bash
50+
sudo dnf install libarchive-devel qt5-qtbase-devel qt5-qtbase-private-devel qt5-qtsvg-devel glibmm24-devel glib2-devel pulseaudio-libs-devel gstreamer1-devel gstreamer1-plugins-base-devel
51+
```
52+
**Arch Linux**
53+
54+
```
55+
sudo pacman -S gcc make pkgconfig libarchive qt5-base qt5-svg glib2 glibmm libpulse gst-plugins-good gstreamer
56+
```
57+
58+
#### Build application
59+
60+
Clone git repositories and submodules:
61+
62+
```bash
63+
git clone --recursive https://github.com/Audio4Linux/JDSP4Linux
64+
```
65+
66+
Prepare build environment
67+
68+
```bash
69+
cd JDSP4Linux
70+
mkdir build
71+
cd build
72+
# Compile app
73+
qmake ../JDSP4Linux.pro "CONFIG += USE_PULSEAUDIO"
74+
make -j4
75+
```
76+
77+
Execute compiled binary
78+
79+
```bash
80+
./src/jamesdsp
81+
```
82+
83+
#### Optional: Manual installation + menu entry
84+
85+
Copy binary to /usr/local/bin and set permissions
86+
87+
```bash
88+
sudo cp src/jamesdsp /usr/local/bin
89+
sudo chmod 755 /usr/local/bin/jamesdsp
90+
```
91+
92+
Create a menu entry
93+
94+
```bash
95+
sudo sh -c 'sudo cat <<EOT >> /usr/share/applications/jamesdsp.desktop
96+
[Desktop Entry]
97+
Name=JamesDSP
98+
GenericName=Audio effect processor
99+
Comment=JamesDSP for Linux (Legacy PulseAudio version)
100+
Keywords=equalizer;audio;effect
101+
Categories=AudioVideo;Audio;
102+
Exec=jamesdsp
103+
Icon=/usr/share/pixmaps/jamesdsp.png
104+
StartupNotify=false
105+
Terminal=false
106+
Type=Application
107+
EOT'
108+
```
109+
110+
Download icon
111+
112+
```bash
113+
sudo wget -O /usr/share/pixmaps/jamesdsp.png https://raw.githubusercontent.com/Audio4Linux/JDSP4Linux/master/resources/icons/icon.png -q --show-progress
114+
```

README.md

Lines changed: 10 additions & 87 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ ____________
8383

8484
**Designed for use with PipeWire. PulseAudio is only supported for backward compatibility.**
8585

86-
PipeWire has a much lower latency compared to PulseAudio when injecting audio effects processors into the audio graph.
86+
PipeWire has a much lower latency compared to PulseAudio when injecting audio effects processors into the audio pipeline.
8787
I'm currently not planning to add more advanced support for Pulseaudio clients. Features such as selective app exclusion, changing the target audio device, and similar features will only be available to PipeWire clients.
8888

8989
### Which one am I using?
@@ -108,6 +108,13 @@ Server Name: pulseaudio
108108

109109
If you don't know which version fits your Linux setup, go to the [PipeWire vs PulseAudio section](#which-one-am-i-using) above.
110110

111+
It is recommended to switch to PipeWire, if possible. JamesDSP's audio backend for PulseAudio is in maintance-mode; however, it will continue to receive UI-related feature updates.
112+
113+
The installation instructions for the PulseAudio version have been moved to a separate file: [INSTALL_PULSE.md](INSTALL_PULSE.md).
114+
115+
## Installation for PipeWire
116+
This section is dedicated to systems using PipeWire as the audio server. If you are still using PulseAudio, please go [here](INSTALL_PULSE.md).
117+
111118
* [Flatpak](#flatpak)
112119
* [Arch Linux (AUR)](#arch)
113120
* [Fedora/openSUSE](#fedoraopensuse)
@@ -136,7 +143,6 @@ flatpak install me.timschneeberger.jdsp4linux.pulse
136143
### Arch
137144
[AUR packages](https://aur.archlinux.org/packages/?O=0&K=jamesdsp) are available:
138145

139-
For **PipeWire clients** only:
140146
* Stable version
141147

142148
![AUR version](https://img.shields.io/aur/version/jamesdsp) ![AUR version](https://img.shields.io/aur/votes/jamesdsp) ![AUR version](https://img.shields.io/aur/maintainer/jamesdsp) ![AUR version](https://img.shields.io/aur/last-modified/jamesdsp)
@@ -151,112 +157,39 @@ For **PipeWire clients** only:
151157
yay -S jamesdsp-git
152158
```
153159

154-
For **PulseAudio clients** only:
155-
* Stable version
156-
157-
![AUR version](https://img.shields.io/aur/version/jamesdsp-pulse) ![AUR version](https://img.shields.io/aur/votes/jamesdsp-pulse) ![AUR version](https://img.shields.io/aur/maintainer/jamesdsp-pulse) ![AUR version](https://img.shields.io/aur/last-modified/jamesdsp-pulse)
158-
```
159-
yay -S jamesdsp-pulse
160-
```
161-
162-
* Development version
163-
164-
![AUR version](https://img.shields.io/aur/version/jamesdsp-pulse-git) ![AUR version](https://img.shields.io/aur/votes/jamesdsp-pulse-git) ![AUR version](https://img.shields.io/aur/maintainer/jamesdsp-pulse-git) ![AUR version](https://img.shields.io/aur/last-modified/jamesdsp-pulse-git)
165-
```
166-
yay -S jamesdsp-pulse-git
167-
```
168-
169160
### Fedora/openSUSE
170161

171162
Package maintained by [@theAeon](https://github.com/theAeon) on [Fedora COPR](https://copr.fedorainfracloud.org/coprs/arrobbins/JDSP4Linux/).
172163
Built for Fedora 34/35/Rawhide and OpenSUSE Tumbleweed.
173164

174-
For **PipeWire clients** only:
175165
```
176166
yum copr enable arrobbins/JDSP4Linux && yum update && yum install jamesdsp
177167
```
178168

179169
If you are still using PulseAudio with your Fedora/openSUSE installation, refer to the '[Build from sources](#build-from-sources)' section below instead.
180170

181-
### Debian/Ubuntu
182-
183-
> **Warning**: The PPA repo is unmaintained and deprecated. At th moment, it is still being auto-updated by an automated GitHub CI workflow. I'm working on setting up flatpak packages as a more stable and universal alternative.
184-
185-
##### Minimum system requirements:
186-
187-
* Distro based on Debian 11 or later **OR**
188-
* Distro based on Ubuntu 21.10 or later
189-
190-
If you need to install this app on an older distro, you need to compile it manually with GCC 11.0 or later.
191-
192-
Add PPA Repo
193-
```bash
194-
sudo apt install -y curl
195-
# thepbone’s PPA Repository key
196-
curl -s --compressed "https://thepbone.github.io/PPA-Repository/KEY.gpg" -o thepbone_ppa.gpg
197-
198-
cat thepbone_ppa.gpg | sudo gpg --dearmour -o /etc/apt/trusted.gpg.d/thepbone_ppa.gpg
199-
sudo sh -c ' echo "deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/thepbone_ppa.gpg] https://thepbone.github.io/PPA-Repository ./" > /etc/apt/sources.list.d/thepbone_ppa.list '
200-
sudo apt update
201-
```
202-
Install from PPA
203-
204-
For **PipeWire clients** only:
205-
```bash
206-
sudo apt install jamesdsp-pipewire
207-
```
208-
For **PulseAudio clients** only:
209-
```bash
210-
sudo apt install jamesdsp-pulse
211-
```
212-
[View PPA on GitHub](https://github.com/ThePBone/PPA-Repository)
213-
214-
215171
### Build from sources
216172

217173
#### Install dependencies
218174

219-
*NOTE:* Only execute the line that applies to your system configuration. If your distro is not included here, you need to research which packages to install by yourself.
220-
221175
**Debian/Ubuntu-based distros**
222176

223-
Debian/Ubuntu + **PipeWire** clients only:
224-
225177
```bash
226178
sudo apt install build-essential libarchive-dev qtbase5-private-dev qtbase5-dev libqt5svg5-dev libglibmm-2.4-dev libglib2.0-dev libpipewire-0.3-dev
227179
```
228180

229-
Debian/Ubuntu + **PulseAudio** clients only:
230-
231-
```bash
232-
sudo apt install build-essential libarchive-dev qtbase5-private-dev qtbase5-dev libqt5svg5-dev libglibmm-2.4-dev libglib2.0-dev libpulse-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
233-
```
234-
**Fedora**
235-
236-
Fedora 34 + **PipeWire** clients only:
181+
**Fedora 34**
237182

238183
```bash
239184
sudo dnf install libarchive-devel qt5-qtbase-devel qt5-qtbase-private-devel qt5-qtsvg-devel glibmm24-devel glib2-devel pipewire-devel
240185
```
241-
Fedora 34 + **PulseAudio** clients only:
242186

243-
```bash
244-
sudo dnf install libarchive-devel qt5-qtbase-devel qt5-qtbase-private-devel qt5-qtsvg-devel glibmm24-devel glib2-devel pulseaudio-libs-devel gstreamer1-devel gstreamer1-plugins-base-devel
245-
```
246187
**Arch Linux**
247188

248-
Arch Linux + **PipeWire** clients only:
249-
250189
```bash
251190
sudo pacman -S gcc make pkgconfig libarchive qt5-base qt5-svg glib2 glibmm pipewire
252191
```
253192

254-
Arch Linux + **PulseAudio** clients only:
255-
256-
```
257-
sudo pacman -S gcc make pkgconfig libarchive qt5-base qt5-svg glib2 glibmm libpulse gst-plugins-good gstreamer
258-
```
259-
260193
#### Build application
261194

262195
Clone git repositories and submodules:
@@ -271,20 +204,10 @@ Prepare build environment
271204
cd JDSP4Linux
272205
mkdir build
273206
cd build
274-
```
275-
276-
Compile application - **PipeWire** clients only:
277-
278-
```bash
207+
# Compile app
279208
qmake ../JDSP4Linux.pro
280209
make -j4
281210
```
282-
Compile application - **PulseAudio** clients only:
283-
284-
```bash
285-
qmake ../JDSP4Linux.pro "CONFIG += USE_PULSEAUDIO"
286-
make -j4
287-
```
288211

289212
Execute compiled binary
290213

0 commit comments

Comments
 (0)