-
-
Notifications
You must be signed in to change notification settings - Fork 293
Installation from Source
All commands on this page, unless otherwise specified, are expected to be run as an unprivileged user (not root). Whenever root privileges are necessary, sudo
will be used. If sudo
is unavailable you may become root using su -
, at which point you may execute any command as the root user. Use exit
to become a normal user again.
Arch Linux includes a package and PKGBUILD in Community Repository.
Run sudo pacman -S easyeffects
to install binary package.
The instructions for Debian based distributions are outdated. Help is needed to update it
Clone the git repository and checkout the latest supported release. Unless you are testing the master
branch of PulseEffects, you also want to checkout the latest supported release.
If you don't already have git
installed, simply install it with sudo apt install git
.
git clone https://github.com/wwmm/pulseeffects.git
cd pulseeffects
git checkout v4.7.2
Substitute v4.7.2
with the latest release.
Before building the package, check the version in debian/changelog and add a new changelog entry with the new version it if necessary.
Sidenote, v6.0.0 and up requires you to set changelog entries as easyeffects
or else you will get a source package conflict error. Example:
easyeffects (6.0.0) unstable; urgency=low
* Changelog details
...
If you've made any changes, including debian/changelog
, run git add
to stage them in git, otherwise build deb will fail. You may rungit reset
after building the deb to unstage those changes in git.
Note that newest versions may not be buildable because debian specs are updated a bit later than other code.
Install some Debian tools, needed for building the package.
sudo apt install devscripts equivs
Boost >= 1.72 is needed to build PulseEffects >= 4.7.2. If you are building on Ubuntu < 20.10, you will not find boost 1.72 in official repositories. You may add an additional repository where all build dependencies are available:
sudo add-apt-repository ppa:mikhailnov/pulseeffects
Now let's build and install a dummy package pulseeffects-build-deps
, which will depend on all packages required to build the package.
sudo mk-build-deps --install debian/control
To build your own package, simply run debuild
from inside the source tree. dpkg-buildpackage
options may be given on the command line.
Explanation of the options:
- The
-us -uc
flags builds the package without signing it. Since the package maintainer's private key is unavailable the package cannot be signed. Signing is unnecessary, unless a user plans to redistribute their package in their own repository. - The
-i
flag will exclude the.git
directory from the generated source tarball.
debuild -i.* -us -uc
If debuild
returns dpkg-shlibdeps: error: no dependency information found for XXX
and you've built these dependencies from source, add this to the debian/rules file
override_dh_shlibdeps:
dh_shlibdeps --dpkg-shlibdeps-params=--ignore-missing-info
See the full debuild
and dpkg-buildpackage
manpage for more options.
At this point, you may remove the build dependencies if you wish to save some space. Although if you plan to build every release from source you might as well keep it.
sudo apt autoremove --purge pulseeffects-build-deps
Build makes 3 deb packages located one directory bellow. Install all of them:
sudo apt install ../*pulseeffects*.deb
Old Debians and Ubuntus have old libraries, and PulseEffects cannot be compiled. Try using Flatpak or upgrading your distribution.
sudo dnf builddep pulseeffects
It is possible to build your own Flatpak package, using flatpak-builder
and a file, called a manifest. We will be building the same package that is built and published on Flathub.
Ensure this is installed and available on your system. If it is not installed, you can find detailed installation instructions at https://flatpak.org/setup/.
You can find the EasyEffects manifest, patches and other Flatpak specific files on Flathub. To get them run:
git clone https://github.com/flathub/com.github.wwmm.easyeffects.git
Then
cd com.github.wwmm.pulseeffects
and now you can run flatpak-builder
from this directory.
The official Flatpak documentation best describes the build process. It is recommended that you read this in order to understand the build process. The Flatpak Builder section is the most important one. It covers the use of flatpak-builder
and how to use it with a manifest.
Consult the Flathub repository, README, and issue tracker if you have any questions or issues.
Clone the git repository.
git clone https://github.com/wwmm/pulseeffects.git
cd pulseeffects
Optional: Select a release
Substitute v3.0.0
with the latest release.
git checkout v3.0.0
meson _build --prefix=/usr
sudo ninja -C _build install
Note: *If you get the error: wrong parameters to Project(), minimum project name and one language is required
you need a newer version of Meson. If one is not provided by your distribution you may install a newer one with pip3
.
sudo pip3 install meson
See the official instructions for getting meson for more information.
This is useful if you are creating a package for a distribution. Substitute $pkgdir
with a directory into which you wish to install the files.
meson _build --prefix=/usr
env DESTDIR="$pkgdir" ninja -C _build install
If your distribution of choice provides a package you will have to remember to remove all the files you just added or it could cause conflicts with the package manager. To avoid this headache you can run PulseEffects without installing it on the system or build in the temp folder:
meson _build --prefix=/tmp/pe
cd _build
ninja install