Closed r7l closed 4 years ago
I got it working but migrating a number of machines to it, some would have to rerun the commands that would simply set documented defaults.
I am curious, what commands are these? On the machines I maintain, sharing fangfrisch.conf and a crontable suffice, which leaves calling "fangfrisch initdb" as the one command I can think of.
The package does not create a /var/lib/fangfrisch directory when it is essential to have it.
The SQLite DB could be stored anywhere, /var/lib/fangfrisch is just an example. In the current ebuild version, I deliberately don't depend on an acct-user/* package, but rely on an existing user account like clamav. Thus, there is no defined home directory like /var/lib/fangfrisch.
One could use /var/lib/clamav/fangfrisch.sqlite, but that directory is owned by another ebuild.
Even if you're not going to add the creation of such a directory to the Ebuild, it might be a good idea to add the initial commands to the Ebuild info
Fair point, I can change the post-install message.
The other thing i wonder about is the lack of a default config file location, when the file is already placed there.
I considered it. However, different OS platforms have different ideas. The Arch package for example uses /etc/fangfrisch/fangfrisch.conf. What to do with Windows I don't even know. I could implement a config file search using a couple of well-known locations, but that would leave the door open to end user confusion if files exist in multiple places. Having the user specify -c foo.conf
avoids all ambiguity.
Also, once Fangfrisch is set up, it requires next to no maintenance, other than perhaps changing a setting in the config file. The initdb action you mentioned is required only once.
I am curious, what commands are these? On the machines I maintain, sharing fangfrisch.conf and a crontable suffice, which leaves calling "fangfrisch initdb" as the one command I can think of.
It might be the developers perspective as you know the program. But as a user of this program that has never seen it before, it's not clear right away and it took me a while to go through the files when i was installing it for the first time. What i had in mind when asking for improvements were Ebuilds that come with a clear instruction info after install. If you don't want to provide /var/lib/fangfrisch
it could simple be added to that info section that is shown after installing it. Maybe even with a check if that directory exists or not.
I went to your website and followed what's said there:
mkdir -p /var/lib/fangfrisch
cd /var/lib/fangfrisch
fangfrisch --conf /etc/fangfrisch.conf initdb
The install documentation on your website is pretty much for the python setup using pip but i don't think the website is wrong in any way. Actually it's straight forward. What i meant is that it's not entirely clear what status the program has after it's been installed on Gentoo.
The config file might be a matter of taste. You're right on that. It's not that much of an issue.
I was just trying to point out that other users might find that setup info useful when Fangfrisch currently is shown as a drop in replacement for the soon to be removed clamav-unofficial-sigs. It's definitely the better option when compared to it.
Another thing i've noted is that you say on your documentation that running Fangfrisch as root is not a good idea. Wouldn't that mean i need to chown clamav:clamav /var/lib/fangfrisch
and run the initdb command with the clamav user already?
I have opened a pull request for an enhanced ebuild version (I have no commit rights for the Gentoo tree). The post-install message is now verbose and lists the necessary steps. While working on this PR I realised, like you did, that I forgot to mention the ownership of /var/lib/fangfrisch, so I will be correcting my own documentation accordingly.
I updated my docs. As is now shown in the example, I recommend creating the DB using a sudo call. According to acct-user/clamav, that user does not have a home directory or login shell after a fresh install, but sudo works.
Sounds good. Thanks!
QA checks for my pull request were successful. Now there is nothing for me to do but wait that somebody processes the PR. Hence, I'll close this issue.
Hello, seeing that you're also the maintainer on Gentoo, i was wondering if it might be possible to improve the setup on there. I've not tested Arch which also seem to have a package. Maybe it's similar there.
Fangfrisch was suggested as a new alternative to clamav-unofficial-sigs but when installing it, it lacks of a number of defaults that would usually be provided from other packages. I got it working but migrating a number of machines to it, some would have to rerun the commands that would simply set documented defaults.
The package does not create a /var/lib/fangfrisch directory when it is essential to have it. Even if you're not going to add the creation of such a directory to the Ebuild, it might be a good idea to add the initial commands to the Ebuild info instead of the link to your homepage. As a new user, i was forced to go to your website just to find 2 or 3 commands that i needed to enter.
The other thing i wonder about is the lack of a default config file location, when the file is already placed there. Wouldn't it be easier if Fangfrisch use the default but keeps the
-c
option for those using another location? That way you could simply runfangfrisch initdb
without the need of providing the default config, that was placed to/etc/fangfrisch.conf
during install.