diff options
Diffstat (limited to 'content')
-rw-r--r-- | content/posts/bitwig-studio-on-fedora-32/bitwig-studio-fedora.png | bin | 0 -> 284183 bytes | |||
-rw-r--r-- | content/posts/bitwig-studio-on-fedora-32/index.org | 130 |
2 files changed, 130 insertions, 0 deletions
diff --git a/content/posts/bitwig-studio-on-fedora-32/bitwig-studio-fedora.png b/content/posts/bitwig-studio-on-fedora-32/bitwig-studio-fedora.png Binary files differnew file mode 100644 index 0000000..7f9da08 --- /dev/null +++ b/content/posts/bitwig-studio-on-fedora-32/bitwig-studio-fedora.png diff --git a/content/posts/bitwig-studio-on-fedora-32/index.org b/content/posts/bitwig-studio-on-fedora-32/index.org new file mode 100644 index 0000000..7337b12 --- /dev/null +++ b/content/posts/bitwig-studio-on-fedora-32/index.org @@ -0,0 +1,130 @@ +#+TITLE: Installing Bitwig Studio on Fedora 32 +#+DATE: 2020-06-30T23:02:26-04:00 +#+DRAFT: false +#+DESCRIPTION: How to install Bitwig Studio on Fedora 32 +#+TAGS[]: linux music +#+KEYWORDS[]: fedora linux bitwig-studio +#+SLUG: +#+SUMMARY: + +#+ATTR_HTML: :alt Bitwig studio on Fedora 32 +#+ATTR_HTML: :title Bitwig studio on Fedora 32 +[[file:bitwig-studio-fedora.png]] + +[[https://www.bitwig.com/en/home.html][Bitwig Studio]] is an amazing cross platform digital audio workstation +(DAW). One of its best features, at least for me, is that it works on +Linux, which is pretty rare in the professional audio world. + +While they say on their website that they support "Linux", what they +mean is that they support Debian-based distributions like Ubuntu, as +they only provide =.deb= packages. Fortunately for Fedora users, +there's a way to get around that using =alien=, an application that +lets us convert =.deb= packages into =.rpm= format. + +Unfortunately =alien= isn't able to convert the package +automatically. The theory is that you should be able install =alien= +and run =sudo alien -r bitwig-studio-3.2.3.deb=, and it will output a +working =.rpm= package. The package it produces looks viable, but when +you go to install it =dnf= produces an error that looks something like +this + +#+BEGIN_SRC +$ sudo dnf install bitwig-studio-3.2.3-2.x86_64.rpm +Dependencies resolved. +===================================================================================================================== + Package Architecture Version Repository Size +===================================================================================================================== +Upgrading: + bitwig-studio x86_64 3.2.3-2 @commandline 183 M + +Transaction Summary +===================================================================================================================== +Upgrade 1 Package + +Total size: 183 M +Is this ok [y/N]: y +Downloading Packages: +Running transaction check +Transaction check succeeded. +Running transaction test +Error: Transaction test error: + file / from install of bitwig-studio-3.2.3-2.x86_64 conflicts with file from package filesystem-3.14-2.fc32.x86_64 + file /usr/bin from install of bitwig-studio-3.2.3-2.x86_64 conflicts with file from package filesystem-3.14-2.fc32.x86_64 + +#+END_SRC + +This seems to be the case with every package I've tried converting +with =alien=, it seems to be a bug that's cropped up since its last +release in 2016. + +It's caused by =alien= leaving the paths =/= and =/usr/bin= in the +package's manifest, which are both owned by the =filesystem= +package. As luck would have it, we can work around this too. + +In addition to the =alien= package, we're also going to have to +install the =rpm-build= package. + +#+BEGIN_SRC shell +sudo dnf install alien rpm-build +#+END_SRC + +Then we convert the package to the =rpm= format, but instead of saving +it as a package, we create a directory with the necessary build files. + +#+BEGIN_SRC shell +sudo alien -r -g bitwig-studio-3.2.3.deb +#+END_SRC + +Then we enter the directory, which should be named the same as the +debian package minus the =.deb= file extension. In there we edit the +=.spec= file and remove the offending lines. + +#+BEGIN_SRC diff +--- bitwig-studio-3.2.3-2.spec ++++ bitwig-studio-3.2.3-2.spec.new +@@ -18,7 +18,6 @@ + (Converted from a deb package by alien version 8.95.) + + %files +-%dir "/" + %dir "/usr/" + %dir "/usr/share/" + %dir "/usr/share/applications/" +@@ -40,7 +39,6 @@ + "/usr/share/icons/hicolor/scalable/mimetypes/application-bitwig-project-folder.svg" + "/usr/share/icons/hicolor/scalable/mimetypes/application-bitwig-clip.svg" + "/usr/share/icons/hicolor/scalable/mimetypes/application-bitwig-project.svg" +-%dir "/usr/bin/" + %dir "/opt/" + %dir "/opt/bitwig-studio/" + "/opt/bitwig-studio/EULA.txt" +#+END_SRC + +After this we build a binary package using =rpmbuild=. + +#+BEGIN_SRC shell +sudo rpmbuild --buildroot=/path/to/bitwig-studio-3.2.3/ -bb bitwig-studio-3.2.3-2.spec +#+END_SRC + +You must specify the full path for the =--buildroot== argument. + +The created =.rpm= package should now be up a directory, next to the initial +=.deb= file. To install it we run + +#+BEGIN_SRC shell +cd .. +sudo dnf install bitwig-studio-3.2.3-2.x86_64.rpm +#+END_SRC + +In previous version of the Bitwig, there was an issue where it would +fail to start, complaining that =libbz2.so.1.0= was missing. This +could be solved by creating a symbolic link to the system's version. + +#+BEGIN_SRC shell +sudo ln -s /usr/lib64/libbz2.so.1 /opt/bitwig-studio/lib/bitwig-studio/ +#+END_SRC + +It doesn't seem to be an issue with the latest release, but I'll leave +it here in case it happens again. + +That's it, Bitwig Studio should be installed and ready to go! |