Jump to content
Froxlor Forum
  • 0

FreeBSD support?


sporkman

Question

Hi all,

I really like the general direction of Froxlor - it seems to mostly stay away from touching the underlying OS and whatever package manager your OS is using and just concentrates on being a config generator for the services that are running. This actually seems to make it pretty OS-agnostic.

I installed the version from FreeBSD ports (0.9.38.7) and they (port maintainers) didn't really modify it - they just use the port to pull in postfix, apache/nginx, mysql, BIND, etc. and then leave you with a message that you should carefully review all the file paths. So far, the biggest bit of work I did was just relentlessly go through settings and change "/etc/XYZ" to "/usr/local/etc/XYX" and "/etc/init.d/XYZ" to "/usr/local/etc/rc.d/XYZ" or "/etc/rc.d/XYZ". And I have a working system.  I also grabbed the Gentoo xml file and did a similar search/replace and that gets me like 80% of the way there - I have cut and pasteable configs with correct paths. I imagine I could also substitute out various apt-get commands with "pkg add".

I know the developers aren't interested in officially supporting FreeBSD, but I'm going to update this version of Froxlor to the newest - I reviewed commits between 0.9.38.7 (what I have installed) and the latest and the only system/OS level thing I see of note there is adding "libnss-extrausers" which is a linux-only thing, but seems not to be required. Assuming the upgrade goes well, I'm probably going to go ahead with Froxlor on some FreeBSD VPS instances regardless.

Questions:

  • Are there any non-obvious OS-level compatibility issues I'm not seeing in my quick review of the code and the changes?
  • What tools, if any are used to enable/disable apache modules and similar that are actually from the OS (things similar to "a2enmod")?
  • Outside of the OS XML files, I think I only saw some paths being set in the .sql file that populates the db on install, not sure I care about that as that's easily changed in the web UI after install
  • Are there any plans currently to move Froxlor in a direction that does make it start to take control of the OS itself (firewall rules, managing packages, etc.)?

Any other background I should know of?

Thanks!

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0
15 minutes ago, sporkman said:

Are there any non-obvious OS-level compatibility issues I'm not seeing in my quick review of the code and the changes?

No, the system calls froxlor does (e.g. for FCGID chattr) have been wrapped for FreeBSD already (see function isFreeBSD() )

16 minutes ago, sporkman said:

What tools, if any are used to enable/disable apache modules and similar that are actually from the OS (things similar to "a2enmod")?

Despite maybe quotatools nothing else is called directly - it's all in the configuration templates (XML files)

17 minutes ago, sporkman said:

Outside of the OS XML files, I think I only saw some paths being set in the .sql file that populates the db on install, not sure I care about that as that's easily changed in the web UI after install

Install is just some plain defaults. You should be able to adjust all of them in the settings

18 minutes ago, sporkman said:

Are there any plans currently to move Froxlor in a direction that does make it start to take control of the OS itself (firewall rules, managing packages, etc.)?

Not really no

 

Link to comment
Share on other sites

  • 0

Just an update for anyone else browsing this - had no issues updating to the latest. About to go in and attempt php-fpm (already have libnss-mysql setup, so that PITA is over with). Also surprisingly filesystem quotas work as well, just have to use '/usr/sbin/edquota' and your conditionals do the right thing in passing args to the command. And in FreeBSD the path is a bare path (ie: "/" or "/var").

I see there's a note here:

lng/english.lng.php:$lng['serversettings']['system_cronconfig']['description'] = 'Path to the cron-service configuration-file. This file will be updated regularly and automatically by froxlor.<br />Note: Please <b>be sure</b> to use the same filename as for the main froxlor cronjob (default: /etc/cron.d/froxlor)!<br><br>If you are using <b>FreeBSD</b>, please specify <i>/etc/crontab</i> here!';

At least in FreeBSD 11.x, /etc/cron.d is totally valid and you can dump the froxlor cron file in there with no issues.

Link to comment
Share on other sites

  • 0
On 3/30/2019 at 10:56 PM, sporkman said:

At least in FreeBSD 11.x, /etc/cron.d is totally valid and you can dump the froxlor cron file in there with no issues.

ah okay, as I'm not a freeBSD user, last time i did that stuff (it's been a while) there was no cron.d folder

Link to comment
Share on other sites

  • 0

I have to do a big update jump, is there any sense in me documenting this for anyone other than myself? I'm reviewing my last changes and it was really mostly just bad hardcoded paths to things, which I assume is still the case.

Any FreeBSD users here? If so any interest in sharing your diffs?

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×
×
  • Create New...