I just downloaded and installed the openfire-5.0.4-1.rpm . I’m running Fedora42 on the server. There is no systemctl service created anywhere that I can find. I did notice:
/etc/init.d/openfire (this looks like a script to start openfire - but it requires being run as root..?)
/opt/openfire/bin/openfire.sh ( it’s a script that appears to be able to start an openfire instance also)
/opt/openfire/bin/openfirectl ( appears to be a script to start/stop/restart/etc… an openfire instance, too)
I’m cool w/ creating my own systemctl service file.. but… which one(s ) do I use as the “correct” way to start/stop/restart OpenFire?
I’m new to openfire, so .. uhh.. being my first time, please be gentle
Hi! Yep, unfortunately the RPMs do not provide native systemd unit files yet. There’s an open issue tracking that work here: OF-3070
So what you’re seeing is currently expected behavior. The Openfire RPM still ships with the older legacy startup scripts.
We could actually use your help to get this sorted, correctly. Do you care to help out with fixing proper systemd support? I’m cc’ing @stokito in this conversation, who’s the resident expert
Sure, I don’t mind at all. Especially if I can get a little tutelage on how RPMs are built and how they work ( do they just lay down a bunch of files in places, or do they actually compile stuff or ..etc.. ) I’ve found some info that say they can do both - which doesn’t necessarily help me ‘nail down’ what they usually do..
I’m also a bit green when it comes to systemd vs the older init.d stuff. I never really bothered learning either, ‘til I got more accustomed to linux - by which time, both were being used and there were a number of proponents on either side of the debate, so I didn’t muddle through as much as I would have, given a ‘cleaner’ topic.
I’d appreciate help with this one, and would naturally love to help out here, as well.
Over the last decade or so, I’ve really come to love linux ( as compared to winblows or mac ) and having been just a user of OSS stuff for so long, I think it’d be great to contribute back in some small way.
Basically the SystemD makes a bridge to the old sysinit scripts, so use the sudo systemctl restart openfire. See Openfire: Installation Guide and ask AI, it helped me a lot last time.
The migration to SystemD native unit files currently made only for Debian and when it will be tested the same unit files will be used for RPM package.
Nowadays people usually run services in containers (e.g. Docker) but this has a downside that upgrades will be missing. But same when you installing manually from rpm or deb.
I wanted to improve the Debian packaging in order to propose the Openfire to be included to the Debian repo, and then users might install it with a simple sudo apt install openfire. But I have to become a maintainer myself and my life situation is very unstable to take such a responsibility.
Also friendly reminder that other XMPP servers Prosody and Ejabberd are available in the RedHat based distros.
Are you saying that the Debian SysD files just call the old init.d script?
Yes, I know that the redhat/fedora repos contain those two xmpp daemons, but thus far I’m rather impressed w/ openfire. The only thing I’m wanting to do now that I currently can’t is to use pidgin to do voice and video calls - which might be an issue w/ pidgin as opposed to openfire.. I just don’t know enough yet to determine either way.
Do you think Prosody and/or Ejabberd would be ‘better’ for text/voice/video ? ( since you know openfire much better than I do ) Also, I would need to be able to send files - which I’m able to do already, via openfire.
Assuming I stay with openfire, I think it might be just as well to re-do the startup script to “conform” to sysD norms. I have been looking it over and I think it’s something I could probably do.
I look forward to any thoughts you have on the above points.
Debian SysD files just call the old init.d script?
now, in the Debian there is a native SystemD unit files. But in the RPM package they are absent so on the RedHat the systemctl command will call the old init scripts instead. In future release we’ll include the native systemd unit files to the RPM so they will behave similarly.
can’t is to use pidgin
The Pidgin in all distros wasn’t updated for a while because it was rewritten to Pidgin 3. They only recently released the Pidgin 3 but XMPP is not supported yet. Try Conversations on Android or Gajim on desktop, they have a better support of audio calls.
Prosody and/or Ejabberd would be ‘better’ for text/voice/video
They all supports calls, it’s a matter of configuration. Pick whatever you like or know how to configure.
On basic level it should be easy to configure all of them.