Hi,
My guess is that atleast 50 gems from my gemlist.lock file would need
packaging or update.
However, GlitterGalley is not an app app but it is a web app. What I am trying to say is
that main
purpose of of GG is that it is hosted on cloud somewhere and people will use to from
web-browsers.
How important it is that gems I am using have rpm available? A good amount of development
time will
be wasted in packaging if this is a requirement.
Unfortunately this is truly difficult with Fedora, because every six months we update Ruby
on Rails
and many other gems. That means all packaged applications have to be updated as well. And
that's why we
have only one Rails app in Fedora. It's just too much effort.
The reason why GlitterGalley would benefit from packaging is the distribution of the
application.
People could easily install it and run it (by starting SystemD unit for instance). The
other one is
that those people would get security updates for their application automatically with
system updates
(yum update) which they have to run anyway... so its a lot of work for the maintainer and
least effort
for people running it. With packages you can also easily ship SELinux policies, properly
state all
system dependencies etc. I would say the the biggest benefit is visible where you offer
your application
to your customers and you have to handle updates. For some just getting signed and
security-tracked
software is enough.
For admins that means using the tooling they know, which means they don't even have to
know Ruby and
can deploy a Rails app by adding a repository, running yum install, search for config
files using rpm,
and start services as they know it.
So yes, given there is just one instance of an application, you deploy several times a
day, you track
security issues yourself, you don't care about your software being signed by trusted
authority,
it's too much effort for little gain. For distributing secure and trusted applications
this might
be critical.
But again, yes, shipping Rails applications on Fedora is time consuming (CentOS or RHEL
would make it
easier), but at the very least you learn how to write software with less dependencies
:)).
I actually wrote a thesis[0] about porting OBS application to Fedora (which has a Rails
API) that might be
helpful to you at this very moment. In the text part you can learn about Fedora RPM
tooling (what tools
we have and how they fit together) and also how to write a SELinux module for your
application. Then you
can look at the spec file itself[1]. I hope it will be help you.
[0]
http://is.muni.cz/th/325243/fi_m/thesis.pdf
[1]
https://github.com/strzibny/obs-for-fedora/blob/master/obs-server.spec
Best Regards
Josef