-
Notifications
You must be signed in to change notification settings - Fork 158
Building Budgie Desktop
Barry Deeney edited this page Sep 1, 2018
·
20 revisions
budgie-desktop has a number of build dependencies that must be present before attempting configuration. The names are different depending on distribution. The following is a list of pkg-config
dependencies currently required to build Budgie from source.
- accountsservice >= 0.6.40
- gio-2.0 >= 2.46.0
- gio-unix-2.0 >= 2.46.0
- gnome-bluetooth-1.0 >= 3.22.0
- gnome-desktop-3.0 >= 3.22.0
- gnome-settings-daemon >= 3.22.0
- gobject-2.0 >= 2.44.0
- gobject-introspection-1.0 >= 1.44.0
- gtk+-3.0 >= 3.22.0
- ibus-1.0 >= 1.5.10
- libgnome-menu-3.0 >= 3.10.3
- libpeas-gtk-1.0 >= 1.8.0
- libpulse >= 2
- libwnck >= 3.14.0
- meson
- mutter >= 3.22.0
- polkit-agent-1 >= 0.110
- polkit-gobject-1 >= 0.110
- upower-glib >= 0.99.0
- uuid
And:
- vala >= 0.40.0
- gtk-doc (For documentation building from git only)
- sassc (to build theming)
sudo eopkg it glib2-devel libgtk-3-devel gtk-doc gnome-settings-daemon-devel libpeas-devel gobject-introspection-devel util-linux-devel pulseaudio-devel libgnome-menus-devel libgnome-desktop-devel gnome-bluetooth-devel mutter-devel polkit-devel libwnck-devel upower-devel accountsservice-devel ibus-devel vala meson sassc -c system.devel
sudo apt install gnome-settings-daemon-dev gtk-doc-tools intltool libaccountsservice-dev libgnome-bluetooth-dev libgnome-desktop-3-dev libgnome-menu-3-dev libgtk-3-dev libibus-1.0-dev libmutter-2-dev libpeas-dev libpolkit-agent-1-dev libpulse-dev libupower-glib-dev libwnck-3-dev meson ninja-build sassc uuid-dev valac
git clone https://github.com/budgie-desktop/budgie-desktop.git
cd budgie-desktop
git submodule init
git submodule update
Solus has special requirements and mandates the use of stateless XDG paths, as well as using the OS default CFLAGS:
cd budgie-desktop
meson --prefix /usr --libdir /usr/lib64 --sysconfdir /etc -Dwith-stateless=true build --buildtype plain
cd budgie-desktop
meson build --prefix=/usr --sysconfdir=/etc
cd build
ninja -j$(($(getconf _NPROCESSORS_ONLN)+1))
sudo ninja install
Note: When building a distro package, please ensure you use:
meson build --prefix=/usr --sysconfdir=/etc --buildtype plain
This ensures your distro flags are respected.