summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--acct-group/vintagestory/vintagestory-0.ebuild9
-rw-r--r--app-nvim/gitsigns/gitsigns-9999.ebuild11
-rw-r--r--profiles/lily/parent1
-rw-r--r--profiles/orchid/package.accept_keywords1
-rw-r--r--profiles/orchid/parent2
-rw-r--r--profiles/targets/base/make.defaults3
-rw-r--r--profiles/targets/base/package.accept_keywords5
-rw-r--r--profiles/targets/base/package.use1
-rw-r--r--profiles/targets/cmdline/package.accept_keywords4
-rw-r--r--profiles/targets/cmdline/package.use2
-rw-r--r--profiles/targets/cmdline/packages1
-rw-r--r--profiles/targets/desktop/package.accept_keywords40
-rw-r--r--profiles/targets/desktop/package.license2
-rw-r--r--profiles/targets/desktop/package.use6
-rw-r--r--profiles/targets/desktop/packages3
-rw-r--r--profiles/targets/hacking/package.use17
-rw-r--r--profiles/targets/steam/package.use100
-rwxr-xr-xsys-apps/openrc-userscripts/files/dbus13
-rwxr-xr-xsys-apps/openrc-userscripts/files/dunst10
-rwxr-xr-xsys-apps/openrc-userscripts/files/mpd32
-rwxr-xr-xsys-apps/openrc-userscripts/files/pipewire10
-rwxr-xr-xsys-apps/openrc-userscripts/files/pipewire-pulse11
-rwxr-xr-xsys-apps/openrc-userscripts/files/ssh-agent13
-rwxr-xr-xsys-apps/openrc-userscripts/files/wireplumber10
-rw-r--r--sys-apps/openrc-userscripts/openrc-userscripts-1.ebuild13
-rw-r--r--www-apps/akkoma/akkoma-3.17.0.ebuild100
26 files changed, 302 insertions, 118 deletions
diff --git a/acct-group/vintagestory/vintagestory-0.ebuild b/acct-group/vintagestory/vintagestory-0.ebuild
new file mode 100644
index 0000000..a5f232a
--- /dev/null
+++ b/acct-group/vintagestory/vintagestory-0.ebuild
@@ -0,0 +1,9 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit acct-group
+
+DESCRIPTION="User group for games-server/vintagestory"
+ACCT_GROUP_ID=-1
diff --git a/app-nvim/gitsigns/gitsigns-9999.ebuild b/app-nvim/gitsigns/gitsigns-9999.ebuild
new file mode 100644
index 0000000..cf15c0d
--- /dev/null
+++ b/app-nvim/gitsigns/gitsigns-9999.ebuild
@@ -0,0 +1,11 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+EAPI=8
+
+inherit nvim-plugin git-r3
+
+DESCRIPTION="Git integration for buffers"
+HOMEPAGE="https://github.com/lewis6991/gitsigns.nvim"
+EGIT_REPO_URI="https://github.com/lewis6991/gitsigns.nvim"
+LICENSE="MIT"
+KEYWORDS="~amd64 ~arm64"
diff --git a/profiles/lily/parent b/profiles/lily/parent
index f7e6960..5d20a66 100644
--- a/profiles/lily/parent
+++ b/profiles/lily/parent
@@ -2,3 +2,4 @@ enomicon:targets/base
enomicon:targets/desktop
enomicon:targets/cmdline
enomicon:targets/hacking
+enomicon:targets/steam
diff --git a/profiles/orchid/package.accept_keywords b/profiles/orchid/package.accept_keywords
index 21a89a3..1e74658 100644
--- a/profiles/orchid/package.accept_keywords
+++ b/profiles/orchid/package.accept_keywords
@@ -1,2 +1,3 @@
sys-kernel/installkernel
sys-boot/uefi-mkconfig
+media-sound/cyanrip ~amd64
diff --git a/profiles/orchid/parent b/profiles/orchid/parent
index 2ca6c6f..5d20a66 100644
--- a/profiles/orchid/parent
+++ b/profiles/orchid/parent
@@ -1,5 +1,5 @@
-gentoo:features/musl
enomicon:targets/base
enomicon:targets/desktop
enomicon:targets/cmdline
enomicon:targets/hacking
+enomicon:targets/steam
diff --git a/profiles/targets/base/make.defaults b/profiles/targets/base/make.defaults
index 3a78611..8671285 100644
--- a/profiles/targets/base/make.defaults
+++ b/profiles/targets/base/make.defaults
@@ -5,6 +5,9 @@ FCFLAGS="${COMMON_FLAGS}"
FFLAGS="${COMMON_FLAGS}"
RUSTFLAGS="${RUSTFLAGS} -C target-cpu=native"
+PORTAGE_WORKDIR_MODE="0740"
+FEATURES="parallel-fetch parallel-install"
+
USE="dist-kernel"
ACCEPT_LICENSE="-* @FREE"
diff --git a/profiles/targets/base/package.accept_keywords b/profiles/targets/base/package.accept_keywords
new file mode 100644
index 0000000..910dcf0
--- /dev/null
+++ b/profiles/targets/base/package.accept_keywords
@@ -0,0 +1,5 @@
+=sys-apps/portage-3.0.77 ~amd64
+
+# ::guru
+app-crypt/clevis ~amd64
+app-misc/brightnessctl ~amd64
diff --git a/profiles/targets/base/package.use b/profiles/targets/base/package.use
index d1e0f18..c93c335 100644
--- a/profiles/targets/base/package.use
+++ b/profiles/targets/base/package.use
@@ -1,3 +1,4 @@
app-admin/doas persist
app-alternatives/sh dash -bash
sys-kernel/installkernel grub dracut
+sys-apps/openrc sysv-utils
diff --git a/profiles/targets/cmdline/package.accept_keywords b/profiles/targets/cmdline/package.accept_keywords
index 03714cf..bbb57e8 100644
--- a/profiles/targets/cmdline/package.accept_keywords
+++ b/profiles/targets/cmdline/package.accept_keywords
@@ -1,3 +1,7 @@
+# ::gentoo
app-editors/neovim ~amd64
app-misc/ranger **
mail-client/aerc ~amd64
+
+# ::guru
+app-shells/zsh-autosuggestions ~amd64
diff --git a/profiles/targets/cmdline/package.use b/profiles/targets/cmdline/package.use
index 23eddfb..a0a9f38 100644
--- a/profiles/targets/cmdline/package.use
+++ b/profiles/targets/cmdline/package.use
@@ -1,4 +1,6 @@
app-office/calcurse caldav
+media-video/ffmpeg opus theora vpx v4l vdpau
+net-wireless/bluez man
app-editors/neovim lua_single_target_luajit
dev-lua/luv -lua_single_target_lua5-4
diff --git a/profiles/targets/cmdline/packages b/profiles/targets/cmdline/packages
index 1ee5947..e20cda6 100644
--- a/profiles/targets/cmdline/packages
+++ b/profiles/targets/cmdline/packages
@@ -18,7 +18,6 @@ media-gfx/imagemagick
media-sound/mpc
media-video/ffmpeg
net-analyzer/nmap
-net-irc/catgirl
net-misc/curl
net-misc/yt-dlp
sys-fs/ncdu
diff --git a/profiles/targets/desktop/package.accept_keywords b/profiles/targets/desktop/package.accept_keywords
index 5562e49..f10cf15 100644
--- a/profiles/targets/desktop/package.accept_keywords
+++ b/profiles/targets/desktop/package.accept_keywords
@@ -1,4 +1,38 @@
-gui-libs/wlroots **
-gui-wm/sway **
+# TODO: add repo constrains when equery doesn't complain anymore
+
+# ::gentoo
gui-apps/foot ~amd64
-=gui-apps/wf-recorder-0.5.0 ~amd64
+dev-build/guildmaster ~amd64
+=dev-python/vdirsyncer-0.20.0 ~amd64
+=app-mobilephone/scrcpy-3.3.4 ~amd64
+=media-video/obs-studio-32.0.4 ~amd64
+=gui-apps/wf-recorder-0.6.0 ~amd64
+app-emulation/wine-staging ~amd64
+
+# ::gentoo, required by dev-python/vdirsyncer-0.20.0
+=dev-python/aiostream-0.7.1 ~amd64
+=dev-python/click-log-0.4.0 ~amd64
+=dev-python/aiohttp-oauthlib-0.1.0 ~amd64
+
+# ::guru
+app-misc/dragon ~amd64
+games-util/mangohud ~amd64
+gui-apps/wev ~amd64
+media-video/syncplay ~amd64
+media-sound/mpd-mpris ~amd64
+
+# ::guru, required by media-video/syncplay-1.7.4
+=dev-python/pem-23.1.0 ~amd64
+
+# ::parona-overlay
+=media-fonts/almendra-1.004-r2 **
+=media-fonts/montserrat-9.000 **
+=media-fonts/lora-3.005 **
+games-action/vintagestory ~amd64
+
+# ::steam-overlay
+games-util/steam-launcher ~amd64
+
+# required by games-util/steam-launcher-1.0.0.85-r2::steam-overlay
+=games-util/game-device-udev-rules-20240523 ~amd64
+=sys-libs/libudev-compat-186-r1 ~amd64
diff --git a/profiles/targets/desktop/package.license b/profiles/targets/desktop/package.license
new file mode 100644
index 0000000..01192e1
--- /dev/null
+++ b/profiles/targets/desktop/package.license
@@ -0,0 +1,2 @@
+games-util/steam-launcher ValveSteamLicense
+games-action/vintagestory all-rights-reserved
diff --git a/profiles/targets/desktop/package.use b/profiles/targets/desktop/package.use
index 1bcba06..6790f81 100644
--- a/profiles/targets/desktop/package.use
+++ b/profiles/targets/desktop/package.use
@@ -12,8 +12,14 @@ media-sounds/pulseaudio -daemon
# needs a gui
dev-qt/qtbase gui
+dev-qt/qt5compat gui
dev-python/PyQt6 gui
net-p2p/qbittorrent gui
+media-gfx/openscad gui
# misc
media-libs/libvpx postproc
+gui-apps/waypipe ffmpeg
+
+# required by media-gfx/blender
+media-libs/freetype brotli
diff --git a/profiles/targets/desktop/packages b/profiles/targets/desktop/packages
index 0cdadca..8a6cedd 100644
--- a/profiles/targets/desktop/packages
+++ b/profiles/targets/desktop/packages
@@ -4,7 +4,6 @@ app-text/zathura
app-text/zathura-pdf-mupdf
gui-apps/foot
gui-apps/grim
-gui-apps/rofi-wayland
gui-apps/slurp
gui-apps/swaybg
gui-apps/swayidle
@@ -25,6 +24,7 @@ media-video/mpv
media-video/pipewire
net-misc/chrony
net-misc/dhcpcd
+net-news/sfeed
net-p2p/qbittorrent
net-wireless/iwd
sys-apps/uam
@@ -34,3 +34,4 @@ www-plugins/passff-host
x11-apps/xrandr
x11-misc/dunst
x11-misc/i3status
+x11-misc/rofi
diff --git a/profiles/targets/hacking/package.use b/profiles/targets/hacking/package.use
new file mode 100644
index 0000000..d04de8a
--- /dev/null
+++ b/profiles/targets/hacking/package.use
@@ -0,0 +1,17 @@
+app-text/doxygen dot
+dev-libs/wayland doc
+x11-libs/libdrm doc
+
+# required by sci-electronics/kicad-9.0.5
+dev-libs/boost python
+
+# required by dev-python/wxpython-4.2.4, sci-electronics/kicad-9.0.5
+x11-libs/wxGTK gstreamer
+
+# required by gnome-base/gnome-keyring-48.0-r1, virtual/secret-service-0-r1,
+# app-crypt/libsecret-0.21.7, sci-electronics/kicad-9.0.5
+app-crypt/gcr gtk
+
+# required by virtual/minizip-1.3.1, media-libs/assimp-6.0.2,
+# dev-qt/qtquick3d-6.10.1, dev-qt/qtmultimedia-6.10.1-r1, media-gfx/openscad-2025.05.01_pre-r1
+sys-libs/zlib minizip
diff --git a/profiles/targets/steam/package.use b/profiles/targets/steam/package.use
new file mode 100644
index 0000000..cd7fb83
--- /dev/null
+++ b/profiles/targets/steam/package.use
@@ -0,0 +1,100 @@
+app-arch/brotli abi_x86_32
+app-arch/bzip2 abi_x86_32
+app-arch/xz-utils abi_x86_32
+app-arch/zstd abi_x86_32
+dev-lang/orc abi_x86_32
+dev-libs/elfutils abi_x86_32
+dev-libs/expat abi_x86_32
+dev-libs/fribidi abi_x86_32
+dev-libs/glib abi_x86_32
+dev-libs/gmp abi_x86_32
+dev-libs/icu abi_x86_32
+dev-libs/libevent abi_x86_32
+dev-libs/libffi abi_x86_32
+dev-libs/libgudev abi_x86_32
+dev-libs/libpcre2 abi_x86_32
+dev-libs/libtasn1 abi_x86_32
+dev-libs/libunistring abi_x86_32
+dev-libs/libusb abi_x86_32
+dev-libs/libxml2 abi_x86_32
+dev-libs/nettle abi_x86_32
+dev-libs/openssl abi_x86_32
+dev-libs/wayland abi_x86_32
+dev-util/spirv-tools abi_x86_32
+gui-libs/libdecor abi_x86_32
+llvm-core/llvm abi_x86_32
+media-gfx/graphite2 abi_x86_32
+media-libs/alsa-lib abi_x86_32
+media-libs/flac abi_x86_32
+media-libs/fontconfig abi_x86_32
+media-libs/freetype abi_x86_32
+media-libs/glu abi_x86_32
+media-libs/graphene abi_x86_32
+media-libs/gst-plugins-bad abi_x86_32
+media-libs/gst-plugins-base abi_x86_32
+media-libs/gstreamer abi_x86_32
+media-libs/harfbuzz abi_x86_32
+media-libs/libglvnd abi_x86_32
+media-libs/libjpeg-turbo abi_x86_32
+media-libs/libmpeg2 abi_x86_32
+media-libs/libogg abi_x86_32
+media-libs/libpng abi_x86_32
+media-libs/libpulse abi_x86_32
+media-libs/libsdl2 abi_x86_32
+media-libs/libsndfile abi_x86_32
+media-libs/libva abi_x86_32
+media-libs/libvorbis abi_x86_32
+media-libs/mesa abi_x86_32
+media-libs/opus abi_x86_32
+media-libs/vulkan-loader abi_x86_32
+media-libs/x264 abi_x86_32
+media-sound/cdparanoia abi_x86_32
+media-sound/lame abi_x86_32
+media-sound/mpg123-base abi_x86_32
+media-video/pipewire abi_x86_32
+net-dns/avahi abi_x86_32
+net-dns/libidn2 abi_x86_32
+net-libs/gnutls abi_x86_32
+net-libs/libasyncns abi_x86_32
+net-print/cups abi_x86_32
+sys-apps/dbus abi_x86_32
+sys-apps/systemd-utils abi_x86_32
+sys-apps/util-linux abi_x86_32
+sys-libs/gdbm abi_x86_32
+sys-libs/gpm abi_x86_32
+sys-libs/libcap abi_x86_32
+sys-libs/libudev-compat abi_x86_32
+sys-libs/ncurses abi_x86_32
+sys-libs/pam abi_x86_32
+sys-libs/readline abi_x86_32
+sys-libs/zlib abi_x86_32
+virtual/glu abi_x86_32
+virtual/libelf abi_x86_32
+virtual/libiconv abi_x86_32
+virtual/libintl abi_x86_32
+virtual/libudev abi_x86_32
+virtual/opengl abi_x86_32
+x11-libs/cairo abi_x86_32
+x11-libs/libX11 abi_x86_32
+x11-libs/libXau abi_x86_32
+x11-libs/libXcomposite abi_x86_32
+x11-libs/libXcursor abi_x86_32
+x11-libs/libXdmcp abi_x86_32
+x11-libs/libXext abi_x86_32
+x11-libs/libXfixes abi_x86_32
+x11-libs/libXft abi_x86_32
+x11-libs/libXi abi_x86_32
+x11-libs/libXrandr abi_x86_32
+x11-libs/libXrender abi_x86_32
+x11-libs/libXv abi_x86_32
+x11-libs/libXxf86vm abi_x86_32
+x11-libs/libdrm abi_x86_32
+x11-libs/libpciaccess abi_x86_32
+x11-libs/libxcb abi_x86_32
+x11-libs/libxkbcommon abi_x86_32
+x11-libs/libxshmfence abi_x86_32
+x11-libs/pango abi_x86_32
+x11-libs/pixman abi_x86_32
+x11-libs/xcb-util-keysyms abi_x86_32
+
+media-libs/gd fontconfig
diff --git a/sys-apps/openrc-userscripts/files/dbus b/sys-apps/openrc-userscripts/files/dbus
deleted file mode 100755
index fe05a1e..0000000
--- a/sys-apps/openrc-userscripts/files/dbus
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/sbin/openrc-run --user
-
-DBUS_SESSION_BUS_ADDRESS="unix:path=${XDG_RUNTIME_DIR}/bus"
-
-command="/usr/bin/dbus-daemon"
-command_args="--session --syslog --nofork --address ${DBUS_SESSION_BUS_ADDRESS}"
-command_background=yes
-pidfile="${XDG_RUNTIME_DIR}/dbus.pid"
-
-extra_commands="socket"
-socket() {
- echo ${DBUS_SESSION_BUS_ADDRESS}
-}
diff --git a/sys-apps/openrc-userscripts/files/dunst b/sys-apps/openrc-userscripts/files/dunst
deleted file mode 100755
index c34c070..0000000
--- a/sys-apps/openrc-userscripts/files/dunst
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/sbin/openrc-run --user
-
-depend() {
- need dbus
-}
-
-DBUS_SESSION_BUS_ADDRESS=$(rc-service --user dbus socket)
-command="/usr/bin/dunst"
-command_background="true"
-pidfile="${XDG_RUNTIME_DIR}/dunst.pid"
diff --git a/sys-apps/openrc-userscripts/files/mpd b/sys-apps/openrc-userscripts/files/mpd
deleted file mode 100755
index 8eaf7fb..0000000
--- a/sys-apps/openrc-userscripts/files/mpd
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/sbin/openrc-run --user
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-: CFGFILE=${CFGFILE:=${XDG_CONFIG_HOME:-${HOME}/.config}/mpd/mpd.conf}
-
-depend() {
- use pipewire pulseaudio
- config ${CFGFILE}
-}
-
-get_config() {
- x=$1
- test -e ${CFGFILE} || return 1
- sed -n \
- -e '/^[ \t]*'${x}'/{s:^[ \t]*'${x}'[ \t]\+"\?\([^#"]\+\)[^"]*"\?$:\1: ; p }' \
- ${CFGFILE}
-}
-
-extra_started_commands='reload'
-# Required by io_uring
-command=/usr/bin/mpd
-command_args=${CFGFILE}
-required_files=${CFGFILE}
-pidfile=$(get_config pid_file)
-description="Music Player Daemon"
-
-reload() {
- ebegin "Reloading ${RC_SVCNAME}"
- start-stop-daemon --pidfile ${pidfile} --signal HUP
- eend $?
-}
diff --git a/sys-apps/openrc-userscripts/files/pipewire b/sys-apps/openrc-userscripts/files/pipewire
deleted file mode 100755
index 9324a25..0000000
--- a/sys-apps/openrc-userscripts/files/pipewire
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/sbin/openrc-run --user
-
-depend() {
- need dbus
-}
-
-DBUS_SESSION_BUS_ADDRESS=$(rc-service --user dbus socket)
-command="/usr/bin/pipewire"
-command_background="true"
-pidfile="${XDG_RUNTIME_DIR}/pipewire.pid"
diff --git a/sys-apps/openrc-userscripts/files/pipewire-pulse b/sys-apps/openrc-userscripts/files/pipewire-pulse
deleted file mode 100755
index a74d3f9..0000000
--- a/sys-apps/openrc-userscripts/files/pipewire-pulse
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/sbin/openrc-run --user
-
-depend() {
- need pipewire dbus
-}
-
-DBUS_SESSION_BUS_ADDRESS=$(rc-service --user dbus socket)
-command="/usr/bin/pipewire"
-command_args="-c pipewire-pulse.conf"
-command_background="true"
-pidfile="${XDG_RUNTIME_DIR}/pipewire-pulse.pid"
diff --git a/sys-apps/openrc-userscripts/files/ssh-agent b/sys-apps/openrc-userscripts/files/ssh-agent
deleted file mode 100755
index 65d10ec..0000000
--- a/sys-apps/openrc-userscripts/files/ssh-agent
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/sbin/openrc-run --user
-
-SSH_AUTH_SOCK="${XDG_RUNTIME_DIR}/ssh-agent.sock"
-
-command="/usr/bin/ssh-agent"
-command_args="-D -a $SSH_AUTH_SOCK"
-command_background=yes
-pidfile="${XDG_RUNTIME_DIR}/ssh-agent.pid"
-
-extra_commands="socket"
-socket() {
- echo ${SSH_AUTH_SOCK}
-}
diff --git a/sys-apps/openrc-userscripts/files/wireplumber b/sys-apps/openrc-userscripts/files/wireplumber
deleted file mode 100755
index a7d99dd..0000000
--- a/sys-apps/openrc-userscripts/files/wireplumber
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/sbin/openrc-run --user
-
-depend() {
- need pipewire dbus
-}
-
-DBUS_SESSION_BUS_ADDRESS=$(rc-service --user dbus socket)
-command="/usr/bin/wireplumber"
-command_background=true
-pidfile="${XDG_RUNTIME_DIR}/wireplumber.pid"
diff --git a/sys-apps/openrc-userscripts/openrc-userscripts-1.ebuild b/sys-apps/openrc-userscripts/openrc-userscripts-1.ebuild
deleted file mode 100644
index 1849409..0000000
--- a/sys-apps/openrc-userscripts/openrc-userscripts-1.ebuild
+++ /dev/null
@@ -1,13 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-EAPI=8
-DESCRIPTION="Example user services for openrc --user"
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~amd64"
-S="${WORKDIR}"
-
-src_install() {
- exeinto /etc/user.d/init.d
- doexe ${FILESDIR}/*
-}
diff --git a/www-apps/akkoma/akkoma-3.17.0.ebuild b/www-apps/akkoma/akkoma-3.17.0.ebuild
new file mode 100644
index 0000000..ac61d5a
--- /dev/null
+++ b/www-apps/akkoma/akkoma-3.17.0.ebuild
@@ -0,0 +1,100 @@
+# Copyright 2022-2023 Anna (navi) Figueiredo Gomes
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit mix optfeature git-r3
+
+DESCRIPTION="a smallish microblogging platform"
+HOMEPAGE="https://akkoma.social/"
+
+# SRC_URI="https://akkoma.dev/AkkomaGang/akkoma/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+EGIT_REPO_URI="https://akkoma.dev/AkkomaGang/akkoma.git"
+EGIT_COMMIT="v${PV}"
+S="${WORKDIR}/${P}"
+KEYWORDS="~amd64"
+
+LICENSE="AGPL-3 CC-BY-SA-4.0 CC-BY-4.0"
+SLOT="otp"
+
+# Requires network access (https) as long as elixir dependencies aren't packaged
+# said dependencies have their checksum verified via `mix.lock`
+RESTRICT="mirror network-sandbox"
+
+BDEPEND="
+ >=dev-lang/erlang-25:=
+ >=dev-lang/elixir-1.14:=
+ dev-build/cmake
+ >=dev-util/rebar-3.20.0-r1
+ dev-elixir/hex
+"
+DEPEND="
+ sys-libs/ncurses:=
+ sys-apps/file
+"
+RDEPEND="
+ ${DEPEND}
+ acct-user/akkoma
+ acct-group/akkoma
+ dev-db/postgresql[uuid]
+"
+
+src_unpack() {
+ default
+ git-r3_src_unpack
+
+ cd "${S}" || die
+ emix deps.get --only prod
+}
+
+src_prepare() {
+ default
+
+ sed -i -e '/include_executables_for:/a\ strip_beams: false,\n\ include_erts: false,' mix.exs || die
+
+ sed -i \
+ -e '/update \[OPTIONS\]/,/--tmp-dir/d' \
+ -e 's;update "$@";echo "Unsupported, check the '"${CATEGORY}/${PN}"' package instead.";' \
+ rel/files/bin/pleroma_ctl || die
+
+ # Default ends up being inside /opt/akkoma which should be kept read-only to akkoma
+ echo 'config :tzdata, :data_dir, "/var/lib/akkoma/tzdata"' >> config/prod.exs || die
+
+ echo "import Config" > config/prod.secret.exs || die
+}
+
+src_compile() {
+ mkdir -p akkoma || die
+ emix release --overwrite --path akkoma
+}
+
+src_install() {
+ # doins doesn't seems to preserve permissions
+ mkdir -p "${ED}/opt" || die
+ cp -pr ./akkoma "${ED}/opt/akkoma" || die
+ fperms 0750 /opt/akkoma
+ fowners 0:akkoma /opt/akkoma
+
+ doinitd ./akkoma/installation/init.d/akkoma
+
+ dosym /opt/akkoma/bin/pleroma /usr/bin/pleroma
+ dosym /opt/akkoma/bin/pleroma_ctl /usr/bin/pleroma_ctl
+
+ # This file controls console access
+ fperms 0750 /opt/akkoma/releases/COOKIE
+ fowners 0:akkoma /opt/akkoma/releases/COOKIE
+
+ keepdir /etc/akkoma
+ fperms 0750 /etc/akkoma
+ fowners 0:akkoma /etc/akkoma
+
+ keepdir /var/lib/akkoma
+ fperms 0750 /var/lib/akkoma
+ fowners akkoma:akkoma /var/lib/akkoma
+}
+
+pkg_postinst() {
+ optfeature "For Pleroma.Upload.Filters.{Mogrify,Mogrifun} & images in previews" media-gfx/imagemagick
+ optfeature "For video support in Media Preview Proxy" media-video/ffmpeg
+ optfeature "For Pleroma.Upload.Filters.Exiftool.* filters" media-libs/exiftool
+}