@JustArchi thank you for taking the time to answer here. I was the one who asked about the path setting in Github by the way.
I was going to post a few extra suggestions in Github regarding this, maybe having the default behaviour to be compliant with XDG specification[1], I don't really know if this should be implemented at package level or the application level. Probably for the package level the application should have a few parameters to allow for it (maybe with --path is enough).
I do think that running the application (if it is installed at system level) should check for the ~/.config/asf/config folder of the user running it, if its not found, fallback to the $INSTALLED_DIR/config, which might or might not work. The --path flag should be specified at runlevel when you want an exception (for ex. to run a profile found in another folder than the default in your home). Please tell me if this makes sense.
Example with user bob.
bob@archlinux ]$ asf
Should search for the config files in:
/home/bob/.config/asf/config
@Gilrain
I rather run it as my own user, I don't like having services running in the background unless needed, and as I'm not a "24/7 farmer", I didn't think of making a systemd unit. I understand the reason to do it though. Thanks for the heads up.
Anyway, I didn't like the service saving user data to /opt/asf/config (particularly if you are in a multi user environment), that's why I asked about the config path. It would be great if you continue the issue to allow for the changes needed for the application to be package-friendly.
Thanks to both of you for the attention to the issue.
ps. forgot links:
[1] https://specifications.freedesktop.org/basedir-spec/latest/ar01s03.html
[2] https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html
[3] https://wiki.archlinux.org/index.php/XDG_user_directories
Search Criteria
Package Details: asf 6.0.8.7-1
Package Actions
Git Clone URL: | https://aur.archlinux.org/asf.git (read-only, click to copy) |
---|---|
Package Base: | asf |
Description: | Steam cards farmer. |
Upstream URL: | https://github.com/JustArchiNET/ArchiSteamFarm |
Licenses: | Apache-2.0 |
Submitter: | Gilrain |
Maintainer: | Gilrain |
Last Packager: | Gilrain |
Votes: | 24 |
Popularity: | 0.86 |
First Submitted: | 2016-04-02 13:31 (UTC) |
Last Updated: | 2024-11-01 09:59 (UTC) |
Dependencies (8)
- aspnet-runtime (aspnet-runtime-3.0AUR, aspnet-runtime-2.1AUR, aspnet-runtime-2.2AUR, aspnet-runtime-5.0-binAUR, aspnet-runtime-7.0-binAUR, aspnet-runtime-6.0-binAUR, aspnet-runtime-preview-binAUR, aspnet-runtime-binAUR, aspnet-runtime-8.0-binAUR)
- aspnet-runtime (aspnet-runtime-3.0AUR, aspnet-runtime-2.1AUR, aspnet-runtime-2.2AUR, aspnet-runtime-5.0-binAUR, aspnet-runtime-7.0-binAUR, aspnet-runtime-6.0-binAUR, aspnet-runtime-preview-binAUR, aspnet-runtime-binAUR, aspnet-runtime-8.0-binAUR) (make)
- dotnet-sdk (dotnet-sdk-2.2AUR, dotnet-sdk-2.2-vs2017AUR, dotnet-sdk-3.0AUR, dotnet-sdk-2.1AUR, dotnet-sdk-5.0-binAUR, dotnet-sdk-6.0.110-binAUR, dotnet-sdk-7.0-binAUR, dotnet-sdk-8.0.300-binAUR, dotnet-sdk-6.0-binAUR, dotnet-sdk-preview-binAUR, dotnet-sdk-binAUR, dotnet-sdk-8.0-binAUR) (make)
- git (git-gitAUR, git-glAUR) (make)
- asf-plugin-itemsmatcherAUR (optional)
- asf-plugin-mobileauthenticatorAUR (optional)
- asf-plugin-steamtokendumperAUR (optional)
- asf-ui (asf-ui-gitAUR) (optional) – standalone web interface for ASF
Required by (7)
Sources (5)
sud_crow commented on 2016-07-24 16:53 (UTC) (edited on 2016-07-24 16:54 (UTC) by sud_crow)
Gilrain commented on 2016-07-24 08:08 (UTC)
@sud_crow
Your workaround is valid, though not recommended. I would advise "sudo -u asf -g asf -H /usr/bin/asf" for interactive operations.
For now the package default mode of operation is to execute asf as a --server through a systemd service. Since farming takes hours, I thought it was sensible to set it and forget its existence. Any other way requires some expertise on the part of the end user (which should not blindly install AUR packages anyway).
@JustArchi
Thank you for the explanation. I missed that issue during my cursory look at the repo.
JustArchi commented on 2016-07-24 00:35 (UTC) (edited on 2016-07-24 00:36 (UTC) by JustArchi)
@Gilrain
It was retroactively changed to not raise false-positive for Windows users due to including ASF-Service.exe in the zip that uses different repacking method to stay compatible with being run via service. For some reason Windows Defender doesn't like ILRepack that is being used, hence I had to remove the service from default zip. See: https://github.com/JustArchi/ArchiSteamFarm/issues/127#issuecomment-234313478
@sud_crow
Starting with ASF 2.1.3.0 there will be special --path argument supported by ASF that will tell it where to look for config directory. This will allow package maintainer (Gilrain) to use it by executing ASF.exe with --path=/home/current_user/.asf, --path=$HOME/.asf (if $HOME is supported) or similar. That part is up to package maintainer though and how he wants to use ASF in AUR, I can only implement extra features to make it easier for you.
sud_crow commented on 2016-07-23 21:33 (UTC)
Also there is an issue with the permissions. Unless I'm doing something wrong due to lack of documentation, it seems the config folder is in the /opt/asf folder, as this folder only has (write) permissions for the "asf" user and (read) for the "asf" group, when you run the asf command from your user, it will complain about not being able to write the "*.db" and "*.bin" (where * is the name of your created "profile.json") as well as the "ASF.db" file.
I don't know if you can give asf the parameters to look/create this files in the ~/.asf/config of the user running asf.
As a workaround, I added my user to asf group and gave the group write permissions over /opt/asf/config. If there is a way to specify where to store the json/db/bin for the bot profile, it would be a good idea to give this information in the post_install script.
Gilrain commented on 2016-07-23 07:44 (UTC)
The archive has been updated to exclude ASF-Service.exe retroactively, without warning, hence the hash change. This is not good…
sud_crow commented on 2016-07-22 23:17 (UTC)
ps. The problem with the original PKGBUILD was with the sha256 of the 2.1.2.5 release, the download: https://github.com/JustArchi/ArchiSteamFarm/releases/download/2.1.2.5/ASF.zip has this sha256sum: 560bee3a662214f9cbabd7bd7faaaac2a5b1ccc785d57711d5a4a662967d7aad
sud_crow commented on 2016-07-22 22:36 (UTC)
Sorry, flagged and sent comment with pre-release. Didn't notice before. The default PKGBUILD wasn't working for me, so I did a quick check, and upgraded to 2.1.2.9 without noticing it was a pre-release.
Gilrain commented on 2016-07-10 18:59 (UTC)
This package is only for stable releases. Please do not flag it as out of date whenever a pre-release is published. If you want access to the bleeding edge, unstable, beta releases: feel free to create your own package.
<deleted-account> commented on 2016-07-08 22:58 (UTC)
I believe, auto joining to steam group without user's permission (or notification, at the minimum) is not expected application's behaviour. So, I think, it is not bad to change defaults for the benefit of end-user.
Gilrain commented on 2016-07-08 08:44 (UTC)
Thank you for bringing those up.
I will disable UpdateChannel since we have package managers for that and it's a close relative of AutoUpdates anyway.
But I don't feel it's up to the packagers to make privacy choices for the end-users, so Statistics will remain as it is.
Pinned Comments
Gilrain commented on 2022-11-03 08:45 (UTC)
Potential breaking change: the service file security has been tightened. If you altered it any way on your machine, you might not be able to start ASF.
You can debug the problem introduced with SystemCallFilter, by following https://unix.stackexchange.com/a/681075
Gilrain commented on 2021-10-02 14:02 (UTC)
Starting with 5.1.4.0-1, the custom service files provided with this package have been replaced with the one upstream.
It uses a EnvironmentFile in /etc/asf to point to the right dir (remember, you want n-1 from asf config folder).
It also serves to populate the user and home folder for the daemon.