[arch-commits] Commit in kresus/repos (6 files)

Bruno Pagani archange at archlinux.org
Thu May 13 07:14:33 UTC 2021


    Date: Thursday, May 13, 2021 @ 07:14:33
  Author: archange
Revision: 932923

archrelease: copy trunk to community-testing-x86_64

Added:
  kresus/repos/community-testing-x86_64/
  kresus/repos/community-testing-x86_64/PKGBUILD
    (from rev 932922, kresus/trunk/PKGBUILD)
  kresus/repos/community-testing-x86_64/config.ini
    (from rev 932922, kresus/trunk/config.ini)
  kresus/repos/community-testing-x86_64/kresus.service
    (from rev 932922, kresus/trunk/kresus.service)
  kresus/repos/community-testing-x86_64/kresus.sysusers
    (from rev 932922, kresus/trunk/kresus.sysusers)
  kresus/repos/community-testing-x86_64/kresus.tmpfiles
    (from rev 932922, kresus/trunk/kresus.tmpfiles)

-----------------+
 PKGBUILD        |   56 +++++++++++
 config.ini      |  270 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 kresus.service  |   39 +++++++
 kresus.sysusers |    1 
 kresus.tmpfiles |    2 
 5 files changed, 368 insertions(+)

Copied: kresus/repos/community-testing-x86_64/PKGBUILD (from rev 932922, kresus/trunk/PKGBUILD)
===================================================================
--- community-testing-x86_64/PKGBUILD	                        (rev 0)
+++ community-testing-x86_64/PKGBUILD	2021-05-13 07:14:33 UTC (rev 932923)
@@ -0,0 +1,56 @@
+# Maintainer: Bruno Pagani <archange at archlinux.org>
+
+pkgname=kresus
+pkgver=0.17.2
+pkgrel=1
+pkgdesc="Self-hosted personal finance manager"
+arch=(x86_64)
+url="https://kresus.org"
+license=(MIT)
+backup=('etc/webapps/kresus/config.ini')
+depends=(python nodejs-lts-fermium woob)
+makedepends=(yarn npm libpng)
+optdepends=('python-pdfminer: La Banque Postale support')
+source=(https://framagit.org/kresusapp/kresus/-/archive/${pkgver}/${pkgname}-${pkgver}.tar.bz2
+        config.ini
+        ${pkgname}.service
+        ${pkgname}.sysusers
+        ${pkgname}.tmpfiles)
+sha256sums=('57f6405358221e322b96df61259abb10cece91ba7e8ee3c27677fb37e08d946c'
+            '2a1de56c469b9a8e899614e6cb6ff8d6f205b5df8d30141230f1d0bc2bf15f40'
+            'cbbfcfc7714fa4c714e956fffa203511c47dde67e06dee9d87f8ff44ac3c708b'
+            'd9d30f5470c7165e4917487b69d7ab82e463da4e1355056e1035ee501d3f1adc'
+            'ba8ad7d9eb5d2b47fde5f6a3ab98596e5c679141b78d76d54b44830604b67632')
+
+prepare() {
+    cd ${pkgname}-${pkgver}
+    yarn install
+}
+
+build() {
+    cd ${pkgname}-${pkgver}
+    yarn run build:prod
+}
+
+package() {
+    cd ${pkgname}-${pkgver}
+
+    DESTDIR="${pkgdir}" npm -g install kresus
+
+    # Remove useless stuff
+    rm -r "${pkgdir}"/usr/lib/node_modules/kresus/support
+    find "${pkgdir}"/usr/lib/node_modules/kresus/ -type d \( -name 'test*' -o -name '.github' \) -exec rm -rf {} \+
+    find "${pkgdir}"/usr/lib/node_modules/kresus/ -type f \( -name '*\.md' -o -name 'LICENSE*' -o -name 'license' -o -name '\.*' \) -delete
+
+    # Fix npm crazyness
+    #chmod -R go-w "${pkgdir}"/usr
+    chown -R root:root "${pkgdir}"/usr
+
+    install -Dm644 LICENSE -t "${pkgdir}"/usr/share/licenses/${pkgname}/
+
+    cd ..
+    install -Dm600 config.ini -t "${pkgdir}"/etc/webapps/kresus/
+    install -Dm644 ${pkgname}.service -t "${pkgdir}"/usr/lib/systemd/system/
+    install -Dm644 ${pkgname}.sysusers "${pkgdir}"/usr/lib/sysusers.d/${pkgname}.conf
+    install -Dm644 ${pkgname}.tmpfiles "${pkgdir}"/usr/lib/tmpfiles.d/${pkgname}.conf
+}

Copied: kresus/repos/community-testing-x86_64/config.ini (from rev 932922, kresus/trunk/config.ini)
===================================================================
--- community-testing-x86_64/config.ini	                        (rev 0)
+++ community-testing-x86_64/config.ini	2021-05-13 07:14:33 UTC (rev 932923)
@@ -0,0 +1,270 @@
+; Hi there! This is the configuration file for Kresus. Please make sure to read
+; all the options before setting up Kresus for the first time.
+;
+[kresus]
+
+; This is where Kresus stores additional data, as the latest bank
+; scrapping modules. It should be writeable by the user which launches
+; the Kresus executable.
+; Can be removed; defaults to HOME_DIR/.kresus.
+; Overriden by the KRESUS_DIR environment variable, if it's set.
+; Example:
+; datadir=/home/ben/.kresus
+datadir=/var/lib/kresus
+
+; A user id obtained from using the "kresus create-user" command.
+; This allows sharing a single database with several users. If your
+; instance is only planned to host a single user, you can keep it
+; disabled, and Kresus will know how to automatically generate a new
+; user.
+; Overriden by the KRESUS_USER_ID environment variable, if it's set.
+; Example:
+; userid=1
+userid=
+
+; This is the port that Kresus will run on. It is recommended not
+; to expose it on port 80 directly but to use a reverse-proxy
+; configuration like Nginx, Caddy or Apache.
+; Can be removed; defaults to 9876.
+; Overriden by the PORT environment variable, if it's set.
+; Example:
+; port=9876
+port=
+
+; The host on which the Kresus server will listen to.
+; Can be removed; defaults to 127.0.0.1.
+; Overriden by the HOST environment variable, if it's set.
+; Example:
+; host=127.0.0.1
+host=
+
+; The executable version of Python that is going to get used when
+; interacting with Python scripts. This can be python or python3.
+; Can be removed; defaults to python3.
+; Overriden by the KRESUS_PYTHON_EXEC environment variable, if it's set.
+; Example:
+; python_exec=python3
+python_exec=python
+
+; The directory prefix in the URL, if Kresus is to be served from a
+; subdirectory. For instance, if your website is hosted at example.com
+; and the url prefix is "money", then Kresus will be reachable at
+; example.com/money. By default, it's '', meaning that Kresus has its own
+; subdomain.
+; Can be removed; defaults to "".
+; Overriden by the KRESUS_URL_PREFIX environment variable, if it's set.
+; Example:
+; url_prefix=/money
+url_prefix=
+
+; A salt value used in encryption algorithms (used for instance to
+; encrypt/decrypt exports). It should be a random string value with
+; at least 16 characters if you decide to provide it.
+; Overriden by the KRESUS_SALT environment variable, if it's set.
+; Example:
+; salt=gj4J89fkjf4h29aDi0f{}fu4389sejk`9osk`
+salt=
+
+; Set this to true if you want to use this instance only in demo
+; mode, and to never allow users to link their personal accounts.
+;
+; WARNING! Switching this on and off may trigger data loss. Note that it
+; is still possible to try Kresus in demo mode, even if this is not set
+; to true. Setting this to true will *force* demo mode, and prevent users
+; from leaving this mode.
+; Can be removed; defaults to false.
+; Overriden by the KRESUS_FORCE_DEMO_MODE environment variable, if it's set.
+; Example:
+; force_demo_mode=true
+force_demo_mode=
+
+; If set to a string, will enable HTTP Basic Auth, by splitting the
+; string on a colon, i.e. "<username>:<passwd>"
+; Overriden by the KRESUS_AUTH environment variable, if it's set.
+; Example:
+; auth=foo:bar
+auth=
+
+[woob]
+
+; The directory in which Woob core is stored. If empty, indicates
+; that woob is already in the PYTHON_PATH (e.g. installed at the global
+; level)
+; Overriden by the KRESUS_WOOB_DIR environment variable, if it's set.
+; Example:
+; srcdir=/home/ben/code/woob
+srcdir=
+
+; Path to a file containing a valid Woob's source list directory.
+; If empty (the default), indicates that Kresus will generate its own
+; source list file and will store it in
+; KRESUS_DIR/woob-data/sources.list.
+; Overriden by the KRESUS_WOOB_SOURCES_LIST environment variable, if it's set.
+; Example:
+; sources_list=/home/ben/code/woob/sources.list
+sources_list=
+
+[email]
+
+; The transport method you want to use. Can be either:
+; * "sendmail": relies on sendmail executable to be available on your
+; system and only sendmail-specific parameters are used,
+;
+; * "smtp": you should provide proper SMTP credentials to use, in the
+; dedicated configuration entries.
+;
+; If empty, no emails will be sent by Kresus.
+; Overriden by the KRESUS_EMAIL_TRANSPORT environment variable, if it's set.
+; Example:
+; transport=smtp
+transport=
+
+; The path to the sendmail executable to use. If empty, indicates
+; that the default sendmail executable will be used.
+; Overriden by the KRESUS_EMAIL_SENDMAIL_BIN environment variable, if it's set.
+; Example:
+; sendmail_bin=/usr/bin/sendmail
+sendmail_bin=
+
+; The email address from which email alerts will be sent. Make sure
+; that your domain DNS is correctly configured and that you've done
+; what's needed to prevent email alerts from landing in the spam folder.
+; Overriden by the KRESUS_EMAIL_FROM environment variable, if it's set.
+; Example:
+; from=kresus at domain.tld
+from=
+
+; The network address (ipv4, ipv6 or FQDN) of the SMTP server.
+; Overriden by the KRESUS_EMAIL_HOST environment variable, if it's set.
+; Example:
+; host=mail.domain.tld
+host=
+
+; The port to which the SMTP server listens. Default values tend to
+; be: 25 (server to server), or 587 (clients to server), or 465
+; (nonstandard).
+; Overriden by the KRESUS_EMAIL_PORT environment variable, if it's set.
+; Example:
+; port=465
+port=
+
+; The username used during authentication to the SMTP server. If
+; empty, indicates an anonymous connection will be used.
+; Overriden by the KRESUS_EMAIL_USER environment variable, if it's set.
+; Example:
+; user=login
+user=
+
+; The password used during authentication to the SMTP server. If
+; empty, indicates no password will be used.
+; Overriden by the KRESUS_EMAIL_PASSWORD environment variable, if it's set.
+; Example:
+; password=hunter2
+password=
+
+; If set to true, will force using a TLS connection. By default,
+; emails are sent with STARTTLS, i.e. using TLS if available.
+; Can be removed; defaults to false.
+; Overriden by the KRESUS_EMAIL_FORCE_TLS environment variable, if it's set.
+; Example:
+; force_tls=false
+force_tls=
+
+; If set to false, will allow self-signed TLS certificates.
+; Can be removed; defaults to true.
+; Overriden by the KRESUS_EMAIL_REJECT_UNAUTHORIZED_TLS environment variable, if it's set.
+; Example:
+; reject_unauthorized_tls=true
+reject_unauthorized_tls=
+
+[notifications]
+
+; The baseurl from which apprise-api will be called for
+; notifications to be sent.
+; See https://github.com/caronc/apprise-api#installation for
+; installation
+; Overriden by the KRESUS_APPRISE_API_BASE_URL environment variable, if it's set.
+; Example:
+; appriseApiBaseUrl=http://localhost:8000/
+appriseApiBaseUrl=
+
+[logs]
+
+; The path to the log file to use. If empty, defaults to kresus.log
+; in datadir.
+; Overriden by the KRESUS_LOG_FILE environment variable, if it's set.
+; Example:
+; log_file=/var/log/kresus.log
+log_file=
+
+[db]
+
+; Database type supported by Kresus, to choose among:
+; - postgres
+; - sqlite
+;
+; It must be set by the user. PostgreSQL is recommended and strongly supported; your experience with other databases might vary.
+;
+; Note using sqlite is *strongly discouraged* because it can't properly handle certain kinds of database migrations. It is only intended for development purposes.
+; Overriden by the KRESUS_DB_TYPE environment variable, if it's set.
+; Example:
+; type=sqlite
+type=
+
+; Logging level for the SQL queries. Possible values are:
+;
+; - all: will log every SQL query, including queries causing errors.
+; - error (default value): will only log SQL queries resulting in errors. This is useful for debugging purposes.
+; - none: nothing will be logged.
+; Can be removed; defaults to error.
+; Overriden by the KRESUS_DB_LOG environment variable, if it's set.
+; Example:
+; log=error
+log=
+
+; Path to the sqlite database file. Make sure that the user running
+; Kresus has the right permissions to write into this file. Required only for
+; sqlite.
+; Overriden by the KRESUS_DB_SQLITE_PATH environment variable, if it's set.
+; Example:
+; sqlite_path=/tmp/dev.sqlite
+sqlite_path=
+
+; Path to a directory containing a Unix socket to connect to the
+; database, or host address of the database server. Required for postgres.
+;
+; If using a Unix socket, the socket file's name will be inferred from the
+; standard postgres name and the port number.
+; Can be removed; defaults to localhost for postgres.
+; Overriden by the KRESUS_DB_HOST environment variable, if it's set.
+; Example:
+; host=localhost
+host=
+
+; Port of the database server. Required for postgres, even when
+; using a Unix socket (the port is used to compute the socket's file name).
+; Can be removed; defaults to 5432 for postgres.
+; Overriden by the KRESUS_DB_PORT environment variable, if it's set.
+; Example:
+; port=5432
+port=
+
+; Username to connect to the database server. Required for postgres.
+; Overriden by the KRESUS_DB_USERNAME environment variable, if it's set.
+; Example:
+; username=benjamin
+username=
+
+; Password to connect to the database server. Required for postgres.
+; Overriden by the KRESUS_DB_PASSWORD environment variable, if it's set.
+; Example:
+; password=hunter2
+password=
+
+; Database name to use. Required for postgres.
+; Can be removed; defaults to kresus.
+; Overriden by the KRESUS_DB_NAME environment variable, if it's set.
+; Example:
+; name=kresus
+name=
+

Copied: kresus/repos/community-testing-x86_64/kresus.service (from rev 932922, kresus/trunk/kresus.service)
===================================================================
--- community-testing-x86_64/kresus.service	                        (rev 0)
+++ community-testing-x86_64/kresus.service	2021-05-13 07:14:33 UTC (rev 932923)
@@ -0,0 +1,39 @@
+[Unit]
+Description=Kresus service
+After=network.target
+
+[Service]
+Type=simple
+User=kresus
+Group=kresus
+PermissionsStartOnly=true
+WorkingDirectory=~
+StateDirectory=kresus
+Environment=NODE_ENV=production
+ExecStart=/usr/bin/kresus -c /etc/webapps/kresus/config.ini
+Restart=always
+CapabilityBoundingSet=
+NoNewPrivileges=true
+#SecureBits=noroot-locked
+ProtectSystem=strict
+ProtectHome=true
+PrivateTmp=true
+PrivateDevices=true
+PrivateUsers=true
+ProtectHostname=true
+ProtectClock=true
+ProtectKernelTunables=true
+ProtectKernelModules=yes
+ProtectKernelLogs=true
+ProtectControlGroups=yes
+RestrictAddressFamilies=AF_UNIX AF_INET AF_INET6
+LockPersonality=true
+#Not compatible with NodeJS
+#MemoryDenyWriteExecute=true
+RestrictRealtime=true
+RestrictSUIDSGID=true
+SystemCallArchitectures=native
+SystemCallFilter=@system-service
+
+[Install]
+WantedBy=multi-user.target

Copied: kresus/repos/community-testing-x86_64/kresus.sysusers (from rev 932922, kresus/trunk/kresus.sysusers)
===================================================================
--- community-testing-x86_64/kresus.sysusers	                        (rev 0)
+++ community-testing-x86_64/kresus.sysusers	2021-05-13 07:14:33 UTC (rev 932923)
@@ -0,0 +1 @@
+u kresus - "Kresus" /var/lib/kresus

Copied: kresus/repos/community-testing-x86_64/kresus.tmpfiles (from rev 932922, kresus/trunk/kresus.tmpfiles)
===================================================================
--- community-testing-x86_64/kresus.tmpfiles	                        (rev 0)
+++ community-testing-x86_64/kresus.tmpfiles	2021-05-13 07:14:33 UTC (rev 932923)
@@ -0,0 +1,2 @@
+d /var/lib/kresus 0750 kresus kresus
+z /etc/webapps/kresus/config.ini 0600 kresus kresus



More information about the arch-commits mailing list