Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Helm rpm builds? #291

Open
Pinjontall94 opened this issue Mar 26, 2021 · 7 comments
Open

Helm rpm builds? #291

Pinjontall94 opened this issue Mar 26, 2021 · 7 comments

Comments

@Pinjontall94
Copy link

I, and it looks like a couple others, have taken the time to package Helm as an rpm--is there anywhere I can help out to make that an officially supported version downloadable from the site?

I saw in #212 that @metal3d actually hosted their package in a COPR. But unless someone already knew about that issue, one could easily make the mistake of assuming Helm doesn't run on their RPM-based distro and give up before they ever make it to github!

Is there someway I can help with the build process, maybe? I don't know how @metal3d's process went, but it was fairly easy to generate a working rpm from the official deb package.

Thank you for the great synth by the way! :)

@metal3d
Copy link

metal3d commented Mar 28, 2021

I don't maintain the package anymore (no time :( ) But I can share the spec file if needed :)

@Pinjontall94
Copy link
Author

Sure, that would be great! Thanks :)

@metal3d
Copy link

metal3d commented Mar 31, 2021

I'm trying to find it, it's been a while...

@metal3d
Copy link

metal3d commented Mar 31, 2021

OK, this is the spec file:

Name:           helm
Version:        0.9.0 
Release:        1%{?dist}
Summary:        Helm is a free polyphonic synth with lots of modulation

License:        GPL-3.0
URL:            http://tytel.org/helm
Source0:        https://github.com/mtytel/%{name}/archive/v%{version}.tar.gz
Source1:        %{name}.appdata.xml

BuildRequires:  lv2-devel libX11-devel alsa-lib-devel libXext-devel libXinerama-devel freetype-devel libcurl-devel mesa-libGL-devel jack-audio-connection-kit-devel libXcursor-devel gcc-c++ libappstream-glib
Requires:       freetype libXext mesa-libGL

%package -n lv2-%{name}
Summary:        Helm LV2 plugin is a free polyphonic synth with lots of modulation
Requires:       lv2 freetype libXext mesa-libGL

%description
Helm is a free, cross-platform, polyphonic synthesizer that runs on GNU/Linux,
Mac, and Windows as a standalone program and as a LV2/VST/AU/AAX plugin.
You can install helm (standalone), or lv2-helm that is LV2 plugin.


%description -n lv2-%{name}
Helm is a free, cross-platform, polyphonic synthesizer that runs on GNU/Linux,
Mac, and Windows as a standalone program and as a LV2/VST/AU/AAX plugin.
This package installs the LV2 plugin.

%prep
%autosetup

%build
%configure
%make_build standalone
%make_build lv2

%install
rm -rf $RPM_BUILD_ROOT
%make_install standalone
%make_install lv2
mkdir -p $RPM_BUILD_ROOT/%{_libdir}

# doesn't need that at this time, maybe later ?
rm -rf $RPM_BUILD_ROOT/usr/lib/debug
rm -rf $RPM_BUILD_ROOT/usr/lib/lxvst

# helm badly installs lv2 in /usr/lib, we prefer /usr/lib64 on x86_64
%ifarch x86_64
cp -ra $RPM_BUILD_ROOT/usr/lib/* $RPM_BUILD_ROOT/%{_libdir}
rm -rf $RPM_BUILD_ROOT/usr/lib
%endif

# install appdata file
install -D -m 0644 %{SOURCE1} %{buildroot}%{_metainfodir}/%{name}.appdata.xml
appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/*.appdata.xml


%files -n lv2-%{name}
%doc %{_mandir}
%{_libdir}/lv2
%{_datadir}/doc
%{_datadir}/helm
%{_datadir}/applications
%{_metainfodir}/%{name}.appdata.xml

%files
%doc %{_mandir}
%{_datadir}/doc
%{_datadir}/helm
%{_datadir}/applications
%{_datadir}/icons
%{_bindir}/helm
%{_metainfodir}/%{name}.appdata.xml



%changelog
* Thu Oct 25 2018 Patrice Ferlet <metal3d_at_gmail.com>
- initial release
- appdata file created

This builds 2 packages:

  • helm
  • lv2-helm

You probably need the helm.appdata.xml:

<?xml version="1.0" encoding="UTF-8"?>
 <!-- Copyright 2018 Patrice Ferlet --> 
<component type="desktop-application">
  <id>helm.desktop</id>
  <metadata_license>CC0-1.0</metadata_license>
  <project_license>GPL-3</project_license>
  <name>Helm</name>
  <summary>Helm - a free polyphonic synth with lots of modulation</summary>
  <summary xml:lang="fr">Helm - synthétiseur polyphonique avec plusieurs modulations</summary>
  <description>
    <p>
        Helm is a free, cross-platform, polyphonic synthesizer that runs on GNU/Linux, 
        Mac, and Windows as a standalone program and as a LV2/VST/AU/AAX plugin.
    </p>
    <p xml:lang="fr">
        Helm est un synthétiseur polyphonique, libre et fonctionnant sur GNU/Linux, Mac et
        Windows mais aussi comme plugin LV2/VSR/AU/AAX.
    </p>
  </description>
  <categories>
      <category>Audio</category>
      <category>Music</category>
      <category>Midi</category>
  </categories>
  <screenshots>
    <screenshot type="default">
      <image>https://tytel.org/static/images/helm_screenshot.png</image>
    </screenshot>
  </screenshots>
  <url type="homepage">https://tytel.org/helm/</url>
  <update_contact>metal3d_at_gmail.com</update_contact>
</component>

This allow to have some screenshots, translations, and so on...

@metal3d
Copy link

metal3d commented Mar 31, 2021

just one note, it could be problematic when someone will package https://helm.sh that is made for Kubernetes, so be careful about name conflicts. Maybe it's preferable to name the package "helm-synth" (and "lv2-helm-synth)

@foursixnine
Copy link

foursixnine commented May 21, 2021

After bashing my own head to try to compile this for openSUSE (I started 9 months ago surprisingly, but never picked up for more than an hour)... I got to this point thanks to #274 but to not bash my head more with this... I found that for my distro (openSUSE Tumbleweed), this is already built https://build.opensuse.org/package/show/home:geekositalia:daw/helm-synth it's already there :) and also the specfile

@teervo
Copy link

teervo commented May 27, 2021

For anyone else on Fedora, I've updated metal3d's spec file and repackaged Helm for F33/F34. The Copr repo is teervo/helm-synth

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants