summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorAiden Marchiori2020-10-02 21:27:53 -0400
committerAiden Marchiori2020-10-02 21:27:53 -0400
commit2f0c3a96e034f31ed6b148d11876675ad706c9e0 (patch)
tree3b780260a5dded9aaa8105b3fc2b6a2c808482e1
downloadaur-2f0c3a96e034f31ed6b148d11876675ad706c9e0.tar.gz
Push files
-rw-r--r--.SRCINFO25
-rw-r--r--NLog.config14
-rw-r--r--PKGBUILD54
-rwxr-xr-xasf.sh2
-rw-r--r--install3
-rw-r--r--service18
-rw-r--r--service.user13
7 files changed, 129 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..d1546dffe50b
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,25 @@
+pkgbase = asf-git
+ pkgdesc = Steam cards farmer.
+ pkgver = 0
+ pkgrel = 1
+ url = https://github.com/JustArchiNET/ArchiSteamFarm
+ install = install
+ arch = x86_64
+ arch = armv7h
+ arch = aarch64
+ license = Apache
+ makedepends = git
+ makedepends = dotnet-sdk>=3.1
+ depends = aspnet-runtime>=3.1
+ optdepends = asf-ui: standalone web interface for ASF
+ source = asf-git::git+https://github.com/JustArchiNET/ArchiSteamFarm.git
+ source = service
+ source = service.user
+ source = NLog.config
+ sha256sums = SKIP
+ sha256sums = ba1ff85e55e56d71dbdd0d898244ff7725bced8625f29c5389e28525e6cdb987
+ sha256sums = b627c8d4b3ba7f194a44749bd401b33bae601b9570da98e457737a6f9cfa408f
+ sha256sums = 1353977a61a2e8700df80729cabc88f453b704a0c6ccf45d80a91691fcf6338f
+
+pkgname = asf-git
+
diff --git a/NLog.config b/NLog.config
new file mode 100644
index 000000000000..009ca8caa098
--- /dev/null
+++ b/NLog.config
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<nlog xmlns="https://nlog-project.org/schemas/NLog.xsd" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance">
+ <targets>
+ <target xsi:type="ColoredConsole" name="ColoredConsole" detectConsoleAvailable="false" layout="${level:uppercase=true}|${logger}|${message}${onexception:inner= ${exception:format=toString,Data}}" />
+ <!-- Below becomes active when ASF is started with server parameter -->
+ <!-- <target type="History" name="History" layout="${level:uppercase=true}|${logger}|${message}${onexception:inner= ${exception:format=toString,Data}}" maxCount="20" /> -->
+ </targets>
+
+ <rules>
+ <logger name="*" minlevel="Debug" writeTo="ColoredConsole" />
+ <!-- Below becomes active when ASF is started with server parameter -->
+ <!-- <logger name="*" minlevel="Debug" writeTo="History" /> -->
+ </rules>
+</nlog>
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..76b381762002
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,54 @@
+# Maintainer: Dud803 <Dude803aur<AT>gmail<DOT>com>
+# Contributor: Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
+
+pkgname="asf-git"
+pkgrel=1
+pkgver=0
+pkgver(){
+ git describe --long | sed 's/\([^-]*-g\)/r\1/;s/-/./g'
+}
+pkgdesc="Steam cards farmer."
+arch=('x86_64' 'armv7h' 'aarch64')
+url="https://github.com/JustArchiNET/ArchiSteamFarm"
+license=('Apache')
+depends=('aspnet-runtime>=3.1')
+optdepends=('asf-ui: standalone web interface for ASF')
+makedepends=('git' 'dotnet-sdk>=3.1')
+install=install
+source=("asf-git::git+https://github.com/JustArchiNET/ArchiSteamFarm.git"
+ "service"
+ "service.user"
+ "NLog.config")
+
+sha256sums=('SKIP'
+ 'ba1ff85e55e56d71dbdd0d898244ff7725bced8625f29c5389e28525e6cdb987'
+ 'b627c8d4b3ba7f194a44749bd401b33bae601b9570da98e457737a6f9cfa408f'
+ '1353977a61a2e8700df80729cabc88f453b704a0c6ccf45d80a91691fcf6338f')
+
+build() {
+ cd ${pkgname}
+ export DOTNET_CLI_TELEMETRY_OPTOUT=1
+ ./cc.sh --no-pull --no-asf-ui
+}
+
+package() {
+ cd asf/out/result
+ install -d -m 755 "${pkgdir}/usr/lib/asf"
+ cp -rdp --no-preserve=ownership . "${pkgdir}/usr/lib/asf"
+ install -D -m755 ../../run.sh "${pkgdir}/usr/bin/asf"
+ sed -i 's,^\(BINARY_DIR[ ]*=\).*,\1'/usr/lib/asf',g' "${pkgdir}/usr/bin/asf"
+ find "${pkgdir}/usr/lib/${pkgname}" -type f -exec chmod 644 {} \;
+ find "${pkgdir}/usr/lib/${pkgname}" -type d -exec chmod 755 {} \;
+
+ install -d -m 755 "${pkgdir}/var/lib/asf/config"
+ install -D -m644 "${srcdir}/NLog.config" "${pkgdir}/usr/lib/${pkgname}/NLog.config"
+
+ install -D -m644 "${srcdir}/service" "${pkgdir}/usr/lib/systemd/system/asf.service"
+ install -D -m644 "${srcdir}/service.user" "${pkgdir}/usr/lib/systemd/user/asf.service"
+
+ # Setup system user and group
+ echo 'u asf - "ArchiSteamFarm" /var/lib/asf' |
+ install -Dm644 /dev/stdin "${pkgdir}"/usr/lib/sysusers.d/asf.conf
+ echo 'd /var/lib/asf 0755 asf asf -' |
+ install -Dm644 /dev/stdin "${pkgdir}"/usr/lib/tmpfiles.d/asf.conf
+}
diff --git a/asf.sh b/asf.sh
new file mode 100755
index 000000000000..d87346b94827
--- /dev/null
+++ b/asf.sh
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec /usr/bin/dotnet /usr/lib/asf/ArchiSteamFarm.dll "$@"
diff --git a/install b/install
new file mode 100644
index 000000000000..09704734243f
--- /dev/null
+++ b/install
@@ -0,0 +1,3 @@
+post_install() {
+ echo "# configuration is done in /var/lib/asf/config or ~/.config/asf depending on the service file used."
+} \ No newline at end of file
diff --git a/service b/service
new file mode 100644
index 000000000000..77c18531ae6c
--- /dev/null
+++ b/service
@@ -0,0 +1,18 @@
+[Unit]
+Description=ArchiSteamFarm Service
+Documentation=https://github.com/JustArchi/ArchiSteamFarm/wiki
+Documentation=https://justarchi.github.io/ArchiSteamFarm/
+Wants=network.target
+After=network.target
+
+[Service]
+User=asf
+Group=asf
+Environment="ASF_PATH=/var/lib/asf"
+ExecStart=/usr/bin/dotnet /usr/lib/asf/ArchiSteamFarm.dll --process-required --no-restart
+ProtectSystem=true
+ReadWritePaths=/var/lib/asf
+SyslogIdentifier=asf
+
+[Install]
+WantedBy=multi-user.target
diff --git a/service.user b/service.user
new file mode 100644
index 000000000000..c2f14c266a8b
--- /dev/null
+++ b/service.user
@@ -0,0 +1,13 @@
+[Unit]
+Description=ArchiSteamFarm User Service
+Documentation=https://github.com/JustArchi/ArchiSteamFarm/wiki
+Documentation=https://justarchi.github.io/ArchiSteamFarm/
+Wants=network.target
+
+[Service]
+Environment="ASF_PATH=%h/.config/asf"
+ExecStart=/usr/bin/dotnet /usr/lib/asf/ArchiSteamFarm.dll --process-required --no-restart
+SyslogIdentifier=asf
+
+[Install]
+WantedBy=default.target