summaryrefslogtreecommitdiffstats
path: root/audio/ncspot
diff options
context:
space:
mode:
Diffstat (limited to 'audio/ncspot')
-rw-r--r--audio/ncspot/README28
-rw-r--r--audio/ncspot/doinst.sh9
-rw-r--r--audio/ncspot/ncspot-misc-1.1.1.tarbin0 -> 20480 bytes
-rw-r--r--audio/ncspot/ncspot.SlackBuild204
-rw-r--r--audio/ncspot/ncspot.info966
-rw-r--r--audio/ncspot/slack-desc19
6 files changed, 1226 insertions, 0 deletions
diff --git a/audio/ncspot/README b/audio/ncspot/README
new file mode 100644
index 0000000000..daaca8047d
--- /dev/null
+++ b/audio/ncspot/README
@@ -0,0 +1,28 @@
+ncspot (TUI Spotify client)
+
+ncspot is a cross-platform ncurses Spotify client written in Rust using
+librespot. It is heavily inspired by ncurses MPD clients, such as ncmpc.
+
+A premium Spotify account is needed to use the application; users will
+be prompted to log in to Spotify when running for the first time.
+
+Spotify credentials are stored separately for each user at
+~/.config/ncspot/credentials.toml. This file, as well as the
+~/.config/ncspot directory, is created automatically after logging in to
+Spotify through ncspot.
+
+ncspot can be configured using ~/.config/ncspot/config.toml on a per-
+user basis. See users.md in the doc directory for details.
+
+A list of active keybindings can be accessed in-application with:
+
+ :help
+
+ueberzugpp or ueberzug can serve as an optional dependency for album
+cover display. Use
+
+ COVERS=yes ./ncspot.SlackBuild
+
+to compile the feature in. Please note that upstream does not consider
+album cover display to be essential functionality, and it may not work
+in some terminal emulators and/or window managers.
diff --git a/audio/ncspot/doinst.sh b/audio/ncspot/doinst.sh
new file mode 100644
index 0000000000..afea6d71dc
--- /dev/null
+++ b/audio/ncspot/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/audio/ncspot/ncspot-misc-1.1.1.tar b/audio/ncspot/ncspot-misc-1.1.1.tar
new file mode 100644
index 0000000000..42122ef0a6
--- /dev/null
+++ b/audio/ncspot/ncspot-misc-1.1.1.tar
Binary files differ
diff --git a/audio/ncspot/ncspot.SlackBuild b/audio/ncspot/ncspot.SlackBuild
new file mode 100644
index 0000000000..d516a05cef
--- /dev/null
+++ b/audio/ncspot/ncspot.SlackBuild
@@ -0,0 +1,204 @@
+#!/bin/bash
+
+# Slackware build script for ncspot
+
+# Copyright 2021-2024 K. Eugene Carlson Tsukuba, Japan
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=ncspot
+VERSION=${VERSION:-1.1.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+
+ if [ "$ARCH" = "i586" ]; then
+ if rustc -Vv | grep host | grep i686 > /dev/null ; then
+ ARCH=i686
+ fi
+ fi
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ CARGOTARGET="--target i586-unknown-linux-gnu"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ CARGOTARGET="--target i686-unknown-linux-gnu"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ CARGOTARGET="--target x86_64-unknown-linux-gnu"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ CARGOTARGET=""
+ LIBDIRSUFFIX=""
+fi
+
+unset DRAWCOVER
+
+# Use COVERS=yes to compile ncspot with cover-drawing capabilities. Requires
+# ueberzug or ueberzugpp.
+[ ${COVERS:-no} = yes ] && DRAWCOVER="--features cover"
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION/misc
+tar xvf $CWD/ncspot-misc-$VERSION.tar
+cd ..
+
+# build offline
+# configuration tells cargo to use the configured directory
+# for dependencies instead of downloading from crates.io
+rm -rf $TMP/$PRGNAM-$VERSION/.cargo
+mkdir .cargo
+cat << EOF >> .cargo/config
+[source.crates-io]
+registry = 'https://github.com/rust-lang/crates.io-index'
+replace-with = 'vendored-sources'
+
+[source.vendored-sources]
+directory = '$(pwd)/vendor'
+EOF
+
+# deps and versions come from Cargo.lock
+mkdir vendor
+(
+ cd vendor
+
+ grep -h -A 3 "\[\[package\]\]" $(find ../ -maxdepth 1 -mindepth 1 -name Cargo.lock | tr '\n' ' ') | \
+ sed 's/[[:space:]]*=[[:space:]]*/=/g;s/^--//;s/^\[\[/--\n[[/' | \
+ awk 'BEGIN { RS = "--\n" ; FS="\n" } { print $2, $3, $4 }' | sed 's/"//g;s/name=//;s/ version=/=/' | \
+ grep crates\.io-index | sed 's/ source=.*$//' | sort -u | while read -r dep ; do
+
+ ver="$(printf "%s\n" "$dep" | cut -d= -f2)"
+ dep="$(printf "%s\n" "$dep" | cut -d= -f1)"
+
+ tar xvf $CWD/$dep-$ver.crate
+
+ touch $dep-$ver/.cargo-ok
+
+ # generate checksum
+ {
+ printf "{\n"
+ printf ' "files": {\n'
+
+ (
+ cd $dep-$ver
+ find . -type f -print0 | xargs -0 sha256sum | sed -n '/\.cargo-checksum\.json/!p' | sed 's/\.\///;s/^\([^ ]*\)[[:space:]][[:space:]]*\(.*\)$/"\2":"\1",/'
+ ) | sed '$ s/,$//'
+
+ printf " },\n"
+ printf ' "package": "'
+
+ sha256sum "$CWD/$dep-$ver.crate" | cut -f1 -d' ' | sed 's/$/"/'
+
+ printf "}\n"
+ } > $dep-$ver/.cargo-checksum.json
+ done
+)
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+export PATH="/opt/rust16/bin:$PATH"
+if [ -z "$LD_LIBRARY_PATH" ]; then
+ export LD_LIBRARY_PATH="/opt/rust16/lib$LIBDIRSUFFIX"
+else
+ export LD_LIBRARY_PATH="/opt/rust16/lib$LIBDIRSUFFIX:$LD_LIBRARY_PATH"
+fi
+
+CARGO_HOME=.cargo \
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+cargo build --release $CARGOTARGET $DRAWCOVER
+
+mkdir -p $PKG/usr/bin/
+find target -name $PRGNAM -exec install -m 755 {} $PKG/usr/bin/$PRGNAM \;
+
+mkdir -p $PKG/usr/share/applications
+install -m 644 misc/$PRGNAM.desktop $PKG/usr/share/applications/
+
+mkdir -p $PKG/usr/share/icons/hicolor/scalable/apps
+install -m 644 images/logo.svg $PKG/usr/share/icons/hicolor/scalable/apps/$PRGNAM.svg
+
+mkdir -p $PKG/usr/man/man1
+install -m 644 misc/ncspot.1 $PKG/usr/man/man1/
+gzip -9 $PKG/usr/man/man1/*
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE README.md CHANGELOG.md doc/users.md $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+# Completions
+mkdir -p $PKG/usr/share/bash-completion/completions
+install -m 644 misc/$PRGNAM.bash $PKG/usr/share/bash-completion/completions
+mkdir -p $PKG/usr/share/zsh/site-functions
+install -m 644 misc/_$PRGNAM $PKG/usr/share/zsh/site-functions
+# Only install the fish completions if fish is installed.
+if [ -x /usr/bin/fish ]; then
+ mkdir -p $PKG/usr/share/fish/vendor_completions.d
+ install -m 644 misc/$PRGNAM.fish $PKG/usr/share/fish/vendor_completions.d
+fi
+# Keep files for fish, PowerShell and Elvish completions in the doc directory.
+install -m 644 misc/$PRGNAM.fish $PKG/usr/doc/$PRGNAM-$VERSION
+install -m 644 misc/_$PRGNAM.ps1 $PKG/usr/doc/$PRGNAM-$VERSION
+install -m 644 misc/$PRGNAM.elv $PKG/usr/doc/$PRGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/audio/ncspot/ncspot.info b/audio/ncspot/ncspot.info
new file mode 100644
index 0000000000..b0446652fb
--- /dev/null
+++ b/audio/ncspot/ncspot.info
@@ -0,0 +1,966 @@
+PRGNAM="ncspot"
+VERSION="1.1.1"
+HOMEPAGE="https://github.com/hrkfdn/ncspot"
+DOWNLOAD="https://github.com/hrkfdn/ncspot/archive/v1.1.1/ncspot-1.1.1.tar.gz \
+ https://static.crates.io/crates/addr2line/addr2line-0.21.0.crate \
+ https://static.crates.io/crates/adler/adler-1.0.2.crate \
+ https://static.crates.io/crates/aes/aes-0.6.0.crate \
+ https://static.crates.io/crates/aes-ctr/aes-ctr-0.6.0.crate \
+ https://static.crates.io/crates/aes-soft/aes-soft-0.6.4.crate \
+ https://static.crates.io/crates/aesni/aesni-0.10.0.crate \
+ https://static.crates.io/crates/ahash/ahash-0.8.11.crate \
+ https://static.crates.io/crates/aho-corasick/aho-corasick-1.1.3.crate \
+ https://static.crates.io/crates/alsa/alsa-0.6.0.crate \
+ https://static.crates.io/crates/alsa-sys/alsa-sys-0.3.1.crate \
+ https://static.crates.io/crates/android-tzdata/android-tzdata-0.1.1.crate \
+ https://static.crates.io/crates/android_system_properties/android_system_properties-0.1.5.crate \
+ https://static.crates.io/crates/anstream/anstream-0.6.14.crate \
+ https://static.crates.io/crates/anstyle/anstyle-1.0.7.crate \
+ https://static.crates.io/crates/anstyle-parse/anstyle-parse-0.2.4.crate \
+ https://static.crates.io/crates/anstyle-query/anstyle-query-1.0.3.crate \
+ https://static.crates.io/crates/anstyle-wincon/anstyle-wincon-3.0.3.crate \
+ https://static.crates.io/crates/arboard/arboard-3.4.0.crate \
+ https://static.crates.io/crates/async-broadcast/async-broadcast-0.7.0.crate \
+ https://static.crates.io/crates/async-channel/async-channel-2.2.1.crate \
+ https://static.crates.io/crates/async-executor/async-executor-1.11.0.crate \
+ https://static.crates.io/crates/async-fs/async-fs-2.1.2.crate \
+ https://static.crates.io/crates/async-io/async-io-2.3.2.crate \
+ https://static.crates.io/crates/async-lock/async-lock-3.3.0.crate \
+ https://static.crates.io/crates/async-process/async-process-2.2.2.crate \
+ https://static.crates.io/crates/async-recursion/async-recursion-1.1.1.crate \
+ https://static.crates.io/crates/async-signal/async-signal-0.2.6.crate \
+ https://static.crates.io/crates/async-task/async-task-4.7.1.crate \
+ https://static.crates.io/crates/async-trait/async-trait-0.1.80.crate \
+ https://static.crates.io/crates/atomic-waker/atomic-waker-1.1.2.crate \
+ https://static.crates.io/crates/autocfg/autocfg-1.3.0.crate \
+ https://static.crates.io/crates/backtrace/backtrace-0.3.71.crate \
+ https://static.crates.io/crates/base64/base64-0.13.1.crate \
+ https://static.crates.io/crates/base64/base64-0.21.7.crate \
+ https://static.crates.io/crates/base64/base64-0.22.1.crate \
+ https://static.crates.io/crates/bindgen/bindgen-0.69.4.crate \
+ https://static.crates.io/crates/bitflags/bitflags-1.3.2.crate \
+ https://static.crates.io/crates/bitflags/bitflags-2.5.0.crate \
+ https://static.crates.io/crates/block/block-0.1.6.crate \
+ https://static.crates.io/crates/block-buffer/block-buffer-0.9.0.crate \
+ https://static.crates.io/crates/block-buffer/block-buffer-0.10.4.crate \
+ https://static.crates.io/crates/block2/block2-0.5.0.crate \
+ https://static.crates.io/crates/blocking/blocking-1.6.0.crate \
+ https://static.crates.io/crates/bumpalo/bumpalo-3.16.0.crate \
+ https://static.crates.io/crates/bytemuck/bytemuck-1.15.0.crate \
+ https://static.crates.io/crates/byteorder/byteorder-1.5.0.crate \
+ https://static.crates.io/crates/bytes/bytes-1.6.0.crate \
+ https://static.crates.io/crates/cc/cc-1.0.97.crate \
+ https://static.crates.io/crates/cesu8/cesu8-1.1.0.crate \
+ https://static.crates.io/crates/cexpr/cexpr-0.6.0.crate \
+ https://static.crates.io/crates/cfg-if/cfg-if-1.0.0.crate \
+ https://static.crates.io/crates/cfg_aliases/cfg_aliases-0.1.1.crate \
+ https://static.crates.io/crates/chrono/chrono-0.4.38.crate \
+ https://static.crates.io/crates/cipher/cipher-0.2.5.crate \
+ https://static.crates.io/crates/clang-sys/clang-sys-1.7.0.crate \
+ https://static.crates.io/crates/clap/clap-4.5.4.crate \
+ https://static.crates.io/crates/clap_builder/clap_builder-4.5.2.crate \
+ https://static.crates.io/crates/clap_complete/clap_complete-4.5.2.crate \
+ https://static.crates.io/crates/clap_lex/clap_lex-0.7.0.crate \
+ https://static.crates.io/crates/clap_mangen/clap_mangen-0.2.20.crate \
+ https://static.crates.io/crates/clipboard-win/clipboard-win-5.3.1.crate \
+ https://static.crates.io/crates/colorchoice/colorchoice-1.0.1.crate \
+ https://static.crates.io/crates/combine/combine-4.6.7.crate \
+ https://static.crates.io/crates/concurrent-queue/concurrent-queue-2.5.0.crate \
+ https://static.crates.io/crates/cookie/cookie-0.18.1.crate \
+ https://static.crates.io/crates/cookie_store/cookie_store-0.21.0.crate \
+ https://static.crates.io/crates/core-foundation/core-foundation-0.9.4.crate \
+ https://static.crates.io/crates/core-foundation-sys/core-foundation-sys-0.8.6.crate \
+ https://static.crates.io/crates/core-graphics/core-graphics-0.23.2.crate \
+ https://static.crates.io/crates/core-graphics-types/core-graphics-types-0.1.3.crate \
+ https://static.crates.io/crates/coreaudio-rs/coreaudio-rs-0.10.0.crate \
+ https://static.crates.io/crates/coreaudio-sys/coreaudio-sys-0.2.15.crate \
+ https://static.crates.io/crates/cpal/cpal-0.13.5.crate \
+ https://static.crates.io/crates/cpufeatures/cpufeatures-0.2.12.crate \
+ https://static.crates.io/crates/crc32fast/crc32fast-1.4.0.crate \
+ https://static.crates.io/crates/crossbeam-channel/crossbeam-channel-0.5.12.crate \
+ https://static.crates.io/crates/crossbeam-utils/crossbeam-utils-0.8.19.crate \
+ https://static.crates.io/crates/crossterm/crossterm-0.25.0.crate \
+ https://static.crates.io/crates/crossterm_winapi/crossterm_winapi-0.9.1.crate \
+ https://static.crates.io/crates/crypto-common/crypto-common-0.1.6.crate \
+ https://static.crates.io/crates/crypto-mac/crypto-mac-0.11.1.crate \
+ https://static.crates.io/crates/ctr/ctr-0.6.0.crate \
+ https://static.crates.io/crates/cursive/cursive-0.20.0.crate \
+ https://static.crates.io/crates/cursive_buffered_backend/cursive_buffered_backend-0.6.1.crate \
+ https://static.crates.io/crates/cursive_core/cursive_core-0.3.7.crate \
+ https://static.crates.io/crates/darling/darling-0.13.4.crate \
+ https://static.crates.io/crates/darling/darling-0.20.8.crate \
+ https://static.crates.io/crates/darling_core/darling_core-0.13.4.crate \
+ https://static.crates.io/crates/darling_core/darling_core-0.20.8.crate \
+ https://static.crates.io/crates/darling_macro/darling_macro-0.13.4.crate \
+ https://static.crates.io/crates/darling_macro/darling_macro-0.20.8.crate \
+ https://static.crates.io/crates/deranged/deranged-0.3.11.crate \
+ https://static.crates.io/crates/derive-new/derive-new-0.6.0.crate \
+ https://static.crates.io/crates/digest/digest-0.9.0.crate \
+ https://static.crates.io/crates/digest/digest-0.10.7.crate \
+ https://static.crates.io/crates/dirs-next/dirs-next-1.0.2.crate \
+ https://static.crates.io/crates/dirs-next/dirs-next-2.0.0.crate \
+ https://static.crates.io/crates/dirs-sys-next/dirs-sys-next-0.1.2.crate \
+ https://static.crates.io/crates/dlib/dlib-0.5.2.crate \
+ https://static.crates.io/crates/downcast-rs/downcast-rs-1.2.1.crate \
+ https://static.crates.io/crates/either/either-1.11.0.crate \
+ https://static.crates.io/crates/encoding_rs/encoding_rs-0.8.34.crate \
+ https://static.crates.io/crates/endi/endi-1.1.0.crate \
+ https://static.crates.io/crates/enum-map/enum-map-2.7.3.crate \
+ https://static.crates.io/crates/enum-map-derive/enum-map-derive-0.17.0.crate \
+ https://static.crates.io/crates/enum_dispatch/enum_dispatch-0.3.13.crate \
+ https://static.crates.io/crates/enumflags2/enumflags2-0.7.9.crate \
+ https://static.crates.io/crates/enumflags2_derive/enumflags2_derive-0.7.9.crate \
+ https://static.crates.io/crates/enumset/enumset-1.1.3.crate \
+ https://static.crates.io/crates/enumset_derive/enumset_derive-0.8.1.crate \
+ https://static.crates.io/crates/equivalent/equivalent-1.0.1.crate \
+ https://static.crates.io/crates/errno/errno-0.3.9.crate \
+ https://static.crates.io/crates/error-code/error-code-3.2.0.crate \
+ https://static.crates.io/crates/event-listener/event-listener-4.0.3.crate \
+ https://static.crates.io/crates/event-listener/event-listener-5.3.0.crate \
+ https://static.crates.io/crates/event-listener-strategy/event-listener-strategy-0.4.0.crate \
+ https://static.crates.io/crates/event-listener-strategy/event-listener-strategy-0.5.2.crate \
+ https://static.crates.io/crates/fastrand/fastrand-2.1.0.crate \
+ https://static.crates.io/crates/fdeflate/fdeflate-0.3.4.crate \
+ https://static.crates.io/crates/fern/fern-0.6.2.crate \
+ https://static.crates.io/crates/fixedbitset/fixedbitset-0.4.2.crate \
+ https://static.crates.io/crates/flate2/flate2-1.0.30.crate \
+ https://static.crates.io/crates/fnv/fnv-1.0.7.crate \
+ https://static.crates.io/crates/foreign-types/foreign-types-0.3.2.crate \
+ https://static.crates.io/crates/foreign-types/foreign-types-0.5.0.crate \
+ https://static.crates.io/crates/foreign-types-macros/foreign-types-macros-0.2.3.crate \
+ https://static.crates.io/crates/foreign-types-shared/foreign-types-shared-0.1.1.crate \
+ https://static.crates.io/crates/foreign-types-shared/foreign-types-shared-0.3.1.crate \
+ https://static.crates.io/crates/form_urlencoded/form_urlencoded-1.2.1.crate \
+ https://static.crates.io/crates/futures/futures-0.3.30.crate \
+ https://static.crates.io/crates/futures-channel/futures-channel-0.3.30.crate \
+ https://static.crates.io/crates/futures-core/futures-core-0.3.30.crate \
+ https://static.crates.io/crates/futures-executor/futures-executor-0.3.30.crate \
+ https://static.crates.io/crates/futures-io/futures-io-0.3.30.crate \
+ https://static.crates.io/crates/futures-lite/futures-lite-2.3.0.crate \
+ https://static.crates.io/crates/futures-macro/futures-macro-0.3.30.crate \
+ https://static.crates.io/crates/futures-sink/futures-sink-0.3.30.crate \
+ https://static.crates.io/crates/futures-task/futures-task-0.3.30.crate \
+ https://static.crates.io/crates/futures-util/futures-util-0.3.30.crate \
+ https://static.crates.io/crates/generic-array/generic-array-0.14.7.crate \
+ https://static.crates.io/crates/gethostname/gethostname-0.4.3.crate \
+ https://static.crates.io/crates/getrandom/getrandom-0.2.15.crate \
+ https://static.crates.io/crates/gimli/gimli-0.28.1.crate \
+ https://static.crates.io/crates/glob/glob-0.3.1.crate \
+ https://static.crates.io/crates/h2/h2-0.4.4.crate \
+ https://static.crates.io/crates/half/half-1.8.3.crate \
+ https://static.crates.io/crates/hashbrown/hashbrown-0.12.3.crate \
+ https://static.crates.io/crates/hashbrown/hashbrown-0.14.5.crate \
+ https://static.crates.io/crates/headers/headers-0.3.9.crate \
+ https://static.crates.io/crates/headers-core/headers-core-0.2.0.crate \
+ https://static.crates.io/crates/heck/heck-0.4.1.crate \
+ https://static.crates.io/crates/hermit-abi/hermit-abi-0.3.9.crate \
+ https://static.crates.io/crates/hex/hex-0.4.3.crate \
+ https://static.crates.io/crates/hmac/hmac-0.11.0.crate \
+ https://static.crates.io/crates/home/home-0.5.9.crate \
+ https://static.crates.io/crates/http/http-0.2.12.crate \
+ https://static.crates.io/crates/http/http-1.1.0.crate \
+ https://static.crates.io/crates/http-body/http-body-0.4.6.crate \
+ https://static.crates.io/crates/http-body/http-body-1.0.0.crate \
+ https://static.crates.io/crates/http-body-util/http-body-util-0.1.1.crate \
+ https://static.crates.io/crates/httparse/httparse-1.8.0.crate \
+ https://static.crates.io/crates/httpdate/httpdate-1.0.3.crate \
+ https://static.crates.io/crates/hyper/hyper-0.14.28.crate \
+ https://static.crates.io/crates/hyper/hyper-1.3.1.crate \
+ https://static.crates.io/crates/hyper-proxy/hyper-proxy-0.9.1.crate \
+ https://static.crates.io/crates/hyper-tls/hyper-tls-0.6.0.crate \
+ https://static.crates.io/crates/hyper-util/hyper-util-0.1.3.crate \
+ https://static.crates.io/crates/iana-time-zone/iana-time-zone-0.1.60.crate \
+ https://static.crates.io/crates/iana-time-zone-haiku/iana-time-zone-haiku-0.1.2.crate \
+ https://static.crates.io/crates/ident_case/ident_case-1.0.1.crate \
+ https://static.crates.io/crates/idna/idna-0.5.0.crate \
+ https://static.crates.io/crates/image/image-0.25.1.crate \
+ https://static.crates.io/crates/indexmap/indexmap-1.9.3.crate \
+ https://static.crates.io/crates/indexmap/indexmap-2.2.6.crate \
+ https://static.crates.io/crates/instant/instant-0.1.12.crate \
+ https://static.crates.io/crates/ioctl-rs/ioctl-rs-0.2.0.crate \
+ https://static.crates.io/crates/ipnet/ipnet-2.9.0.crate \
+ https://static.crates.io/crates/is_terminal_polyfill/is_terminal_polyfill-1.70.0.crate \
+ https://static.crates.io/crates/itertools/itertools-0.12.1.crate \
+ https://static.crates.io/crates/itoa/itoa-1.0.11.crate \
+ https://static.crates.io/crates/jni/jni-0.19.0.crate \
+ https://static.crates.io/crates/jni-sys/jni-sys-0.3.0.crate \
+ https://static.crates.io/crates/jobserver/jobserver-0.1.31.crate \
+ https://static.crates.io/crates/jpeg-decoder/jpeg-decoder-0.3.1.crate \
+ https://static.crates.io/crates/js-sys/js-sys-0.3.69.crate \
+ https://static.crates.io/crates/lazy_static/lazy_static-1.4.0.crate \
+ https://static.crates.io/crates/lazycell/lazycell-1.3.0.crate \
+ https://static.crates.io/crates/lewton/lewton-0.10.2.crate \
+ https://static.crates.io/crates/libc/libc-0.2.154.crate \
+ https://static.crates.io/crates/libloading/libloading-0.8.3.crate \
+ https://static.crates.io/crates/libm/libm-0.2.8.crate \
+ https://static.crates.io/crates/libpulse-binding/libpulse-binding-2.28.1.crate \
+ https://static.crates.io/crates/libpulse-simple-binding/libpulse-simple-binding-2.28.1.crate \
+ https://static.crates.io/crates/libpulse-simple-sys/libpulse-simple-sys-1.21.1.crate \
+ https://static.crates.io/crates/libpulse-sys/libpulse-sys-1.21.0.crate \
+ https://static.crates.io/crates/libredox/libredox-0.1.3.crate \
+ https://static.crates.io/crates/librespot-audio/librespot-audio-0.4.2.crate \
+ https://static.crates.io/crates/librespot-core/librespot-core-0.4.2.crate \
+ https://static.crates.io/crates/librespot-metadata/librespot-metadata-0.4.2.crate \
+ https://static.crates.io/crates/librespot-playback/librespot-playback-0.4.2.crate \
+ https://static.crates.io/crates/librespot-protocol/librespot-protocol-0.4.2.crate \
+ https://static.crates.io/crates/linux-raw-sys/linux-raw-sys-0.4.13.crate \
+ https://static.crates.io/crates/lock_api/lock_api-0.4.12.crate \
+ https://static.crates.io/crates/log/log-0.4.21.crate \
+ https://static.crates.io/crates/mac-notification-sys/mac-notification-sys-0.6.1.crate \
+ https://static.crates.io/crates/mach/mach-0.3.2.crate \
+ https://static.crates.io/crates/malloc_buf/malloc_buf-0.0.6.crate \
+ https://static.crates.io/crates/maplit/maplit-1.0.2.crate \
+ https://static.crates.io/crates/maybe-async/maybe-async-0.2.10.crate \
+ https://static.crates.io/crates/memchr/memchr-2.7.2.crate \
+ https://static.crates.io/crates/memoffset/memoffset-0.6.5.crate \
+ https://static.crates.io/crates/memoffset/memoffset-0.9.1.crate \
+ https://static.crates.io/crates/mime/mime-0.3.17.crate \
+ https://static.crates.io/crates/minimal-lexical/minimal-lexical-0.2.1.crate \
+ https://static.crates.io/crates/miniz_oxide/miniz_oxide-0.7.2.crate \
+ https://static.crates.io/crates/mio/mio-0.8.11.crate \
+ https://static.crates.io/crates/native-tls/native-tls-0.2.11.crate \
+ https://static.crates.io/crates/ncurses/ncurses-5.101.0.crate \
+ https://static.crates.io/crates/ndk/ndk-0.6.0.crate \
+ https://static.crates.io/crates/ndk-context/ndk-context-0.1.1.crate \
+ https://static.crates.io/crates/ndk-glue/ndk-glue-0.6.2.crate \
+ https://static.crates.io/crates/ndk-macro/ndk-macro-0.3.0.crate \
+ https://static.crates.io/crates/ndk-sys/ndk-sys-0.3.0.crate \
+ https://static.crates.io/crates/nix/nix-0.23.2.crate \
+ https://static.crates.io/crates/nix/nix-0.28.0.crate \
+ https://static.crates.io/crates/nom/nom-7.1.3.crate \
+ https://static.crates.io/crates/notify-rust/notify-rust-4.11.0.crate \
+ https://static.crates.io/crates/num/num-0.2.1.crate \
+ https://static.crates.io/crates/num/num-0.4.3.crate \
+ https://static.crates.io/crates/num-bigint/num-bigint-0.2.6.crate \
+ https://static.crates.io/crates/num-bigint/num-bigint-0.4.5.crate \
+ https://static.crates.io/crates/num-complex/num-complex-0.2.4.crate \
+ https://static.crates.io/crates/num-complex/num-complex-0.4.6.crate \
+ https://static.crates.io/crates/num-conv/num-conv-0.1.0.crate \
+ https://static.crates.io/crates/num-derive/num-derive-0.3.3.crate \
+ https://static.crates.io/crates/num-integer/num-integer-0.1.46.crate \
+ https://static.crates.io/crates/num-iter/num-iter-0.1.45.crate \
+ https://static.crates.io/crates/num-rational/num-rational-0.2.4.crate \
+ https://static.crates.io/crates/num-rational/num-rational-0.4.2.crate \
+ https://static.crates.io/crates/num-traits/num-traits-0.2.19.crate \
+ https://static.crates.io/crates/num_cpus/num_cpus-1.16.0.crate \
+ https://static.crates.io/crates/num_enum/num_enum-0.5.11.crate \
+ https://static.crates.io/crates/num_enum_derive/num_enum_derive-0.5.11.crate \
+ https://static.crates.io/crates/num_threads/num_threads-0.1.7.crate \
+ https://static.crates.io/crates/numtoa/numtoa-0.1.0.crate \
+ https://static.crates.io/crates/objc/objc-0.2.7.crate \
+ https://static.crates.io/crates/objc-foundation/objc-foundation-0.1.1.crate \
+ https://static.crates.io/crates/objc-sys/objc-sys-0.3.3.crate \
+ https://static.crates.io/crates/objc2/objc2-0.5.1.crate \
+ https://static.crates.io/crates/objc2-app-kit/objc2-app-kit-0.2.0.crate \
+ https://static.crates.io/crates/objc2-core-data/objc2-core-data-0.2.0.crate \
+ https://static.crates.io/crates/objc2-encode/objc2-encode-4.0.1.crate \
+ https://static.crates.io/crates/objc2-foundation/objc2-foundation-0.2.0.crate \
+ https://static.crates.io/crates/objc_id/objc_id-0.1.1.crate \
+ https://static.crates.io/crates/object/object-0.32.2.crate \
+ https://static.crates.io/crates/oboe/oboe-0.4.6.crate \
+ https://static.crates.io/crates/oboe-sys/oboe-sys-0.4.5.crate \
+ https://static.crates.io/crates/ogg/ogg-0.8.0.crate \
+ https://static.crates.io/crates/once_cell/once_cell-1.19.0.crate \
+ https://static.crates.io/crates/opaque-debug/opaque-debug-0.3.1.crate \
+ https://static.crates.io/crates/openssl/openssl-0.10.64.crate \
+ https://static.crates.io/crates/openssl-macros/openssl-macros-0.1.1.crate \
+ https://static.crates.io/crates/openssl-probe/openssl-probe-0.1.5.crate \
+ https://static.crates.io/crates/openssl-sys/openssl-sys-0.9.102.crate \
+ https://static.crates.io/crates/ordered-stream/ordered-stream-0.2.0.crate \
+ https://static.crates.io/crates/os_pipe/os_pipe-1.1.5.crate \
+ https://static.crates.io/crates/owning_ref/owning_ref-0.4.1.crate \
+ https://static.crates.io/crates/pancurses/pancurses-0.17.0.crate \
+ https://static.crates.io/crates/parking/parking-2.2.0.crate \
+ https://static.crates.io/crates/parking_lot/parking_lot-0.11.2.crate \
+ https://static.crates.io/crates/parking_lot/parking_lot-0.12.2.crate \
+ https://static.crates.io/crates/parking_lot_core/parking_lot_core-0.8.6.crate \
+ https://static.crates.io/crates/parking_lot_core/parking_lot_core-0.9.10.crate \
+ https://static.crates.io/crates/parse_duration/parse_duration-2.1.1.crate \
+ https://static.crates.io/crates/pbkdf2/pbkdf2-0.8.0.crate \
+ https://static.crates.io/crates/pdcurses-sys/pdcurses-sys-0.7.1.crate \
+ https://static.crates.io/crates/percent-encoding/percent-encoding-2.3.1.crate \
+ https://static.crates.io/crates/petgraph/petgraph-0.6.5.crate \
+ https://static.crates.io/crates/pin-project/pin-project-1.1.5.crate \
+ https://static.crates.io/crates/pin-project-internal/pin-project-internal-1.1.5.crate \
+ https://static.crates.io/crates/pin-project-lite/pin-project-lite-0.2.14.crate \
+ https://static.crates.io/crates/pin-utils/pin-utils-0.1.0.crate \
+ https://static.crates.io/crates/piper/piper-0.2.1.crate \
+ https://static.crates.io/crates/pkg-config/pkg-config-0.3.30.crate \
+ https://static.crates.io/crates/platform-dirs/platform-dirs-0.3.0.crate \
+ https://static.crates.io/crates/png/png-0.17.13.crate \
+ https://static.crates.io/crates/polling/polling-3.7.0.crate \
+ https://static.crates.io/crates/portaudio-rs/portaudio-rs-0.3.2.crate \
+ https://static.crates.io/crates/portaudio-sys/portaudio-sys-0.1.1.crate \
+ https://static.crates.io/crates/powerfmt/powerfmt-0.2.0.crate \
+ https://static.crates.io/crates/ppv-lite86/ppv-lite86-0.2.17.crate \
+ https://static.crates.io/crates/priority-queue/priority-queue-1.4.0.crate \
+ https://static.crates.io/crates/proc-macro-crate/proc-macro-crate-1.3.1.crate \
+ https://static.crates.io/crates/proc-macro-crate/proc-macro-crate-3.1.0.crate \
+ https://static.crates.io/crates/proc-macro2/proc-macro2-1.0.82.crate \
+ https://static.crates.io/crates/protobuf/protobuf-2.28.0.crate \
+ https://static.crates.io/crates/protobuf-codegen/protobuf-codegen-2.28.0.crate \
+ https://static.crates.io/crates/protobuf-codegen-pure/protobuf-codegen-pure-2.28.0.crate \
+ https://static.crates.io/crates/quick-xml/quick-xml-0.31.0.crate \
+ https://static.crates.io/crates/quote/quote-1.0.36.crate \
+ https://static.crates.io/crates/rand/rand-0.8.5.crate \
+ https://static.crates.io/crates/rand_chacha/rand_chacha-0.3.1.crate \
+ https://static.crates.io/crates/rand_core/rand_core-0.6.4.crate \
+ https://static.crates.io/crates/rand_distr/rand_distr-0.4.3.crate \
+ https://static.crates.io/crates/redox_syscall/redox_syscall-0.2.16.crate \
+ https://static.crates.io/crates/redox_syscall/redox_syscall-0.5.1.crate \
+ https://static.crates.io/crates/redox_termios/redox_termios-0.1.3.crate \
+ https://static.crates.io/crates/redox_users/redox_users-0.4.5.crate \
+ https://static.crates.io/crates/regex/regex-1.10.4.crate \
+ https://static.crates.io/crates/regex-automata/regex-automata-0.4.6.crate \
+ https://static.crates.io/crates/regex-syntax/regex-syntax-0.8.3.crate \
+ https://static.crates.io/crates/reqwest/reqwest-0.12.4.crate \
+ https://static.crates.io/crates/rodio/rodio-0.15.0.crate \
+ https://static.crates.io/crates/roff/roff-0.2.1.crate \
+ https://static.crates.io/crates/rspotify/rspotify-0.13.1.crate \
+ https://static.crates.io/crates/rspotify-http/rspotify-http-0.13.1.crate \
+ https://static.crates.io/crates/rspotify-macros/rspotify-macros-0.13.1.crate \
+ https://static.crates.io/crates/rspotify-model/rspotify-model-0.13.1.crate \
+ https://static.crates.io/crates/rustc-demangle/rustc-demangle-0.1.24.crate \
+ https://static.crates.io/crates/rustc-hash/rustc-hash-1.1.0.crate \
+ https://static.crates.io/crates/rustc_version/rustc_version-0.4.0.crate \
+ https://static.crates.io/crates/rustix/rustix-0.38.34.crate \
+ https://static.crates.io/crates/rustls-pemfile/rustls-pemfile-2.1.2.crate \
+ https://static.crates.io/crates/rustls-pki-types/rustls-pki-types-1.7.0.crate \
+ https://static.crates.io/crates/rustversion/rustversion-1.0.16.crate \
+ https://static.crates.io/crates/ryu/ryu-1.0.18.crate \
+ https://static.crates.io/crates/same-file/same-file-1.0.6.crate \
+ https://static.crates.io/crates/schannel/schannel-0.1.23.crate \
+ https://static.crates.io/crates/scoped-tls/scoped-tls-1.0.1.crate \
+ https://static.crates.io/crates/scopeguard/scopeguard-1.2.0.crate \
+ https://static.crates.io/crates/security-framework/security-framework-2.11.0.crate \
+ https://static.crates.io/crates/security-framework-sys/security-framework-sys-2.11.0.crate \
+ https://static.crates.io/crates/semver/semver-1.0.23.crate \
+ https://static.crates.io/crates/serde/serde-1.0.201.crate \
+ https://static.crates.io/crates/serde_cbor/serde_cbor-0.11.2.crate \
+ https://static.crates.io/crates/serde_derive/serde_derive-1.0.201.crate \
+ https://static.crates.io/crates/serde_json/serde_json-1.0.117.crate \
+ https://static.crates.io/crates/serde_repr/serde_repr-0.1.19.crate \
+ https://static.crates.io/crates/serde_spanned/serde_spanned-0.6.5.crate \
+ https://static.crates.io/crates/serde_urlencoded/serde_urlencoded-0.7.1.crate \
+ https://static.crates.io/crates/sha-1/sha-1-0.9.8.crate \
+ https://static.crates.io/crates/sha1/sha1-0.10.6.crate \
+ https://static.crates.io/crates/sha2/sha2-0.10.8.crate \
+ https://static.crates.io/crates/shannon/shannon-0.2.0.crate \
+ https://static.crates.io/crates/shell-words/shell-words-1.1.0.crate \
+ https://static.crates.io/crates/shlex/shlex-1.3.0.crate \
+ https://static.crates.io/crates/signal-hook/signal-hook-0.3.17.crate \
+ https://static.crates.io/crates/signal-hook-mio/signal-hook-mio-0.2.3.crate \
+ https://static.crates.io/crates/signal-hook-registry/signal-hook-registry-1.4.2.crate \
+ https://static.crates.io/crates/simd-adler32/simd-adler32-0.3.7.crate \
+ https://static.crates.io/crates/slab/slab-0.4.9.crate \
+ https://static.crates.io/crates/smallvec/smallvec-1.13.2.crate \
+ https://static.crates.io/crates/socket2/socket2-0.5.7.crate \
+ https://static.crates.io/crates/socks/socks-0.3.4.crate \
+ https://static.crates.io/crates/stable_deref_trait/stable_deref_trait-1.2.0.crate \
+ https://static.crates.io/crates/static_assertions/static_assertions-1.1.0.crate \
+ https://static.crates.io/crates/stdweb/stdweb-0.1.3.crate \
+ https://static.crates.io/crates/strsim/strsim-0.10.0.crate \
+ https://static.crates.io/crates/strsim/strsim-0.11.1.crate \
+ https://static.crates.io/crates/strum/strum-0.26.2.crate \
+ https://static.crates.io/crates/strum_macros/strum_macros-0.26.2.crate \
+ https://static.crates.io/crates/subtle/subtle-2.4.1.crate \
+ https://static.crates.io/crates/syn/syn-1.0.109.crate \
+ https://static.crates.io/crates/syn/syn-2.0.61.crate \
+ https://static.crates.io/crates/sync_wrapper/sync_wrapper-0.1.2.crate \
+ https://static.crates.io/crates/system-configuration/system-configuration-0.5.1.crate \
+ https://static.crates.io/crates/system-configuration-sys/system-configuration-sys-0.5.0.crate \
+ https://static.crates.io/crates/tauri-winrt-notification/tauri-winrt-notification-0.2.1.crate \
+ https://static.crates.io/crates/tempfile/tempfile-3.10.1.crate \
+ https://static.crates.io/crates/term_size/term_size-0.3.2.crate \
+ https://static.crates.io/crates/termion/termion-1.5.6.crate \
+ https://static.crates.io/crates/thiserror/thiserror-1.0.60.crate \
+ https://static.crates.io/crates/thiserror-impl/thiserror-impl-1.0.60.crate \
+ https://static.crates.io/crates/thread-id/thread-id-4.2.1.crate \
+ https://static.crates.io/crates/tiff/tiff-0.9.1.crate \
+ https://static.crates.io/crates/time/time-0.3.36.crate \
+ https://static.crates.io/crates/time-core/time-core-0.1.2.crate \
+ https://static.crates.io/crates/time-macros/time-macros-0.2.18.crate \
+ https://static.crates.io/crates/tinyvec/tinyvec-1.6.0.crate \
+ https://static.crates.io/crates/tinyvec_macros/tinyvec_macros-0.1.1.crate \
+ https://static.crates.io/crates/tokio/tokio-1.37.0.crate \
+ https://static.crates.io/crates/tokio-macros/tokio-macros-2.2.0.crate \
+ https://static.crates.io/crates/tokio-native-tls/tokio-native-tls-0.3.1.crate \
+ https://static.crates.io/crates/tokio-stream/tokio-stream-0.1.15.crate \
+ https://static.crates.io/crates/tokio-util/tokio-util-0.7.11.crate \
+ https://static.crates.io/crates/toml/toml-0.8.12.crate \
+ https://static.crates.io/crates/toml_datetime/toml_datetime-0.6.5.crate \
+ https://static.crates.io/crates/toml_edit/toml_edit-0.19.15.crate \
+ https://static.crates.io/crates/toml_edit/toml_edit-0.21.1.crate \
+ https://static.crates.io/crates/toml_edit/toml_edit-0.22.12.crate \
+ https://static.crates.io/crates/tower/tower-0.4.13.crate \
+ https://static.crates.io/crates/tower-layer/tower-layer-0.3.2.crate \
+ https://static.crates.io/crates/tower-service/tower-service-0.3.2.crate \
+ https://static.crates.io/crates/tracing/tracing-0.1.40.crate \
+ https://static.crates.io/crates/tracing-attributes/tracing-attributes-0.1.27.crate \
+ https://static.crates.io/crates/tracing-core/tracing-core-0.1.32.crate \
+ https://static.crates.io/crates/tree_magic_mini/tree_magic_mini-3.1.4.crate \
+ https://static.crates.io/crates/try-lock/try-lock-0.2.5.crate \
+ https://static.crates.io/crates/typenum/typenum-1.17.0.crate \
+ https://static.crates.io/crates/uds_windows/uds_windows-1.1.0.crate \
+ https://static.crates.io/crates/unicode-bidi/unicode-bidi-0.3.15.crate \
+ https://static.crates.io/crates/unicode-ident/unicode-ident-1.0.12.crate \
+ https://static.crates.io/crates/unicode-normalization/unicode-normalization-0.1.23.crate \
+ https://static.crates.io/crates/unicode-segmentation/unicode-segmentation-1.11.0.crate \
+ https://static.crates.io/crates/unicode-width/unicode-width-0.1.12.crate \
+ https://static.crates.io/crates/ureq/ureq-2.9.7.crate \
+ https://static.crates.io/crates/url/url-2.5.0.crate \
+ https://static.crates.io/crates/utf8parse/utf8parse-0.2.1.crate \
+ https://static.crates.io/crates/uuid/uuid-1.8.0.crate \
+ https://static.crates.io/crates/vcpkg/vcpkg-0.2.15.crate \
+ https://static.crates.io/crates/vergen/vergen-3.2.0.crate \
+ https://static.crates.io/crates/version_check/version_check-0.9.4.crate \
+ https://static.crates.io/crates/walkdir/walkdir-2.5.0.crate \
+ https://static.crates.io/crates/want/want-0.3.1.crate \
+ https://static.crates.io/crates/wasi/wasi-0.11.0+wasi-snapshot-preview1.crate \
+ https://static.crates.io/crates/wasm-bindgen/wasm-bindgen-0.2.92.crate \
+ https://static.crates.io/crates/wasm-bindgen-backend/wasm-bindgen-backend-0.2.92.crate \
+ https://static.crates.io/crates/wasm-bindgen-futures/wasm-bindgen-futures-0.4.42.crate \
+ https://static.crates.io/crates/wasm-bindgen-macro/wasm-bindgen-macro-0.2.92.crate \
+ https://static.crates.io/crates/wasm-bindgen-macro-support/wasm-bindgen-macro-support-0.2.92.crate \
+ https://static.crates.io/crates/wasm-bindgen-shared/wasm-bindgen-shared-0.2.92.crate \
+ https://static.crates.io/crates/wayland-backend/wayland-backend-0.3.3.crate \
+ https://static.crates.io/crates/wayland-client/wayland-client-0.31.2.crate \
+ https://static.crates.io/crates/wayland-protocols/wayland-protocols-0.31.2.crate \
+ https://static.crates.io/crates/wayland-protocols-wlr/wayland-protocols-wlr-0.2.0.crate \
+ https://static.crates.io/crates/wayland-scanner/wayland-scanner-0.31.1.crate \
+ https://static.crates.io/crates/wayland-sys/wayland-sys-0.31.1.crate \
+ https://static.crates.io/crates/web-sys/web-sys-0.3.69.crate \
+ https://static.crates.io/crates/weezl/weezl-0.1.8.crate \
+ https://static.crates.io/crates/winapi/winapi-0.3.9.crate \
+ https://static.crates.io/crates/winapi-i686-pc-windows-gnu/winapi-i686-pc-windows-gnu-0.4.0.crate \
+ https://static.crates.io/crates/winapi-util/winapi-util-0.1.8.crate \
+ https://static.crates.io/crates/winapi-x86_64-pc-windows-gnu/winapi-x86_64-pc-windows-gnu-0.4.0.crate \
+ https://static.crates.io/crates/windows/windows-0.56.0.crate \
+ https://static.crates.io/crates/windows-core/windows-core-0.52.0.crate \
+ https://static.crates.io/crates/windows-core/windows-core-0.56.0.crate \
+ https://static.crates.io/crates/windows-implement/windows-implement-0.56.0.crate \
+ https://static.crates.io/crates/windows-interface/windows-interface-0.56.0.crate \
+ https://static.crates.io/crates/windows-result/windows-result-0.1.1.crate \
+ https://static.crates.io/crates/windows-sys/windows-sys-0.48.0.crate \
+ https://static.crates.io/crates/windows-sys/windows-sys-0.52.0.crate \
+ https://static.crates.io/crates/windows-targets/windows-targets-0.48.5.crate \
+ https://static.crates.io/crates/windows-targets/windows-targets-0.52.5.crate \
+ https://static.crates.io/crates/windows-version/windows-version-0.1.1.crate \
+ https://static.crates.io/crates/windows_aarch64_gnullvm/windows_aarch64_gnullvm-0.48.5.crate \
+ https://static.crates.io/crates/windows_aarch64_gnullvm/windows_aarch64_gnullvm-0.52.5.crate \
+ https://static.crates.io/crates/windows_aarch64_msvc/windows_aarch64_msvc-0.48.5.crate \
+ https://static.crates.io/crates/windows_aarch64_msvc/windows_aarch64_msvc-0.52.5.crate \
+ https://static.crates.io/crates/windows_i686_gnu/windows_i686_gnu-0.48.5.crate \
+ https://static.crates.io/crates/windows_i686_gnu/windows_i686_gnu-0.52.5.crate \
+ https://static.crates.io/crates/windows_i686_gnullvm/windows_i686_gnullvm-0.52.5.crate \
+ https://static.crates.io/crates/windows_i686_msvc/windows_i686_msvc-0.48.5.crate \
+ https://static.crates.io/crates/windows_i686_msvc/windows_i686_msvc-0.52.5.crate \
+ https://static.crates.io/crates/windows_x86_64_gnu/windows_x86_64_gnu-0.48.5.crate \
+ https://static.crates.io/crates/windows_x86_64_gnu/windows_x86_64_gnu-0.52.5.crate \
+ https://static.crates.io/crates/windows_x86_64_gnullvm/windows_x86_64_gnullvm-0.48.5.crate \
+ https://static.crates.io/crates/windows_x86_64_gnullvm/windows_x86_64_gnullvm-0.52.5.crate \
+ https://static.crates.io/crates/windows_x86_64_msvc/windows_x86_64_msvc-0.48.5.crate \
+ https://static.crates.io/crates/windows_x86_64_msvc/windows_x86_64_msvc-0.52.5.crate \
+ https://static.crates.io/crates/winnow/winnow-0.5.40.crate \
+ https://static.crates.io/crates/winnow/winnow-0.6.8.crate \
+ https://static.crates.io/crates/winreg/winreg-0.5.1.crate \
+ https://static.crates.io/crates/winreg/winreg-0.52.0.crate \
+ https://static.crates.io/crates/wl-clipboard-rs/wl-clipboard-rs-0.8.1.crate \
+ https://static.crates.io/crates/x11rb/x11rb-0.13.1.crate \
+ https://static.crates.io/crates/x11rb-protocol/x11rb-protocol-0.13.1.crate \
+ https://static.crates.io/crates/xdg-home/xdg-home-1.1.0.crate \
+ https://static.crates.io/crates/xi-unicode/xi-unicode-0.3.0.crate \
+ https://static.crates.io/crates/zbus/zbus-4.2.1.crate \
+ https://static.crates.io/crates/zbus_macros/zbus_macros-4.2.1.crate \
+ https://static.crates.io/crates/zbus_names/zbus_names-3.0.0.crate \
+ https://static.crates.io/crates/zerocopy/zerocopy-0.6.6.crate \
+ https://static.crates.io/crates/zerocopy/zerocopy-0.7.34.crate \
+ https://static.crates.io/crates/zerocopy-derive/zerocopy-derive-0.6.6.crate \
+ https://static.crates.io/crates/zerocopy-derive/zerocopy-derive-0.7.34.crate \
+ https://static.crates.io/crates/zvariant/zvariant-4.1.0.crate \
+ https://static.crates.io/crates/zvariant_derive/zvariant_derive-4.1.0.crate \
+ https://static.crates.io/crates/zvariant_utils/zvariant_utils-1.1.1.crate"
+MD5SUM="59b527de601ebce9c54880a9c27f74d1 \
+ 55e15000c4c210f0bb2aca6f38fbe424 \
+ 669215548c64019c08c92b2c1afd3deb \
+ bd53a9f0ec43690f84e8c96bba8e538d \
+ db6f9a586bda62de931be1b2bce9cd34 \
+ b14b12cd0e866930de1993132c85705b \
+ 58a6326364dbe6f5168f3f3a341f360e \
+ adbb51e40b28255c49b2ad1d956eff19 \
+ 03b2d126766ed746706241b4c7487654 \
+ bd278d96770173a5298bea9ebdba03f7 \
+ 730ff1a5c2f3becc07743810ad47e66e \
+ e0a03581a6aea080315323651f272d65 \
+ bf23cd323c33a8c283c41bb9b79e4ce4 \
+ 0d18959173d080ec965717de7f03c2ec \
+ d48caa65882ee9fe77a1f4e3ac950bad \
+ ba1d5bf0cf548d5d0114ec4bfb1dd138 \
+ a688249621bfca8c4ad27908d5291a9e \
+ cef83f13a54d5e9c22e468d266243ae3 \
+ e1603878430d080aa8d6cabb07c85054 \
+ 41a931ff48b0f085b38926fd31396eab \
+ 8f820ef4e5de227aae6884dda8dce68b \
+ 6cec428770e6b047fe480bd0bff1b414 \
+ fa070b3f3b3a71823d9410e5004d3466 \
+ 8fc35648ea95eb88a354d4a95a07ea42 \
+ 559877ca7fc385e26a5254e7419412c6 \
+ 8eb288542901d3ebfdb1dfba391b3c74 \
+ 2e76f09d03d84f1402ef456531cda0ab \
+ e53ef539e04d3812a4d620ddff0fc08d \
+ e09416c884027b94479fc254f8d2388e \
+ 1b41868d6e1277abee3b6c84a7b7ff83 \
+ 6a44afda654777d2930b93366bdfc7f3 \
+ 88a8c7336f056de768ee2966cefd8303 \
+ cacc6bd5d3b1a38d103a212e0dbaebcc \
+ 3d192a852cb456a965c5d64db624c915 \
+ 5a5f45206802441161524e1be576da1f \
+ 20084c4c04bcc06fd3d7ff662deca706 \
+ 642196aa024beee3b8f83c3c71528820 \
+ a295edb6953237ebbdfa8e731229f9a3 \
+ f3406374808b01be3a263666aa9aa2f5 \
+ ea2d23ceb9f98853a7dffc6c02884464 \
+ c7fbaf61245dc847237ab7c72b3ee9ea \
+ 023b03cf9968b29253a5dfe62051008d \
+ e8a72907e5e7c97515e36e1c7a317dab \
+ a99d6f13c4bbe56b60ce2f9d9526a269 \
+ a3c12a0b2ddb55ec1b245f9950e7bdf1 \
+ 74970f806fd0f2ab972f077ee2b7e5d7 \
+ 45339d90b2b3a4f123af5ec459954102 \
+ 722cab9ebe9eb019d5c3b400325de876 \
+ e067072ed6fff1a90d001706c2f4505e \
+ 267fc4a374516caa7ab495f0c607c1b4 \
+ 10b68ba1e7093d889e9198dcd0ea2a3e \
+ 74634128440dbc3766bda76fdf0aaa05 \
+ 126712a51ed2962e587048a634186390 \
+ a84898c2e50fd6cfe7d068a1d6d4b5fe \
+ 5184822d3fd9f30dfa4bc922ffa4143c \
+ 888f3db20a6784c43e1d68bb8ca2f9a0 \
+ ec573c80325dcb85a463103cf3878a73 \
+ 6a7300e86333500f11f30e3e20e68808 \
+ 4703ffb8b0409bcc4aff2642a748a9ce \
+ f780b94573a4c3e9261b0ef07ace6529 \
+ d7e22f14f70a89ab8c77f414dc75ecc3 \
+ 1054513eff74a8a84c121af2ea2da924 \
+ cc59747acec0a70d3cf7e121b19dd403 \
+ aba1d13503196d9a767b260913f1401f \
+ d1f70680f36b13b74bab20250fb2f26f \
+ 2bbef48469a5a6d3f7b8e93dbc0b40a4 \
+ ae8cab082d8e9df363d04f91561712b4 \
+ 4d7e3bc6c42f8a875a87246ed14d9948 \
+ d7624e4ff046ae83eda8e82d90887bdb \
+ 780c7d64e5295fc16c5afecd00007265 \
+ 58ee9a40577f5086ec1f22dc238b9c60 \
+ 092c01b71d220e9e742d1ce83040f9ba \
+ 564bfd1bde6d304cca218266b6d0277d \
+ 5c0b974591c88858125a1bb4e64d7bdc \
+ 162407e4c09897085d00344230f375a0 \
+ 2cdf6f26459b770f7cf497cfba8eb5d4 \
+ 86c345cb693c291362662b0eb437af89 \
+ 398f4cce1d3067cc7a56662e52a33384 \
+ ad62a5d90c31144dd4b13ccf0861d5eb \
+ 81b4ce6014002d0cb0415aa401a51578 \
+ 89e88633cab0e4b6f3d3878b84dffe8b \
+ ed0342f94ffebe96d5650f55c23b12a1 \
+ cf52970ee52905ad114b93571dd9c6c6 \
+ 4f8b874010ef9d9b88b395e0cf4f289f \
+ 5171b8aeb3287073918e7560513a7704 \
+ 70750c6a9769bb5cdbe6ee1e8e702764 \
+ f28e4363b28774af3f8127ed40bcdc9f \
+ a57b172b0efb7ad6cf912bd1115c9ead \
+ c1713950e7088b216d011fc5c2bdd661 \
+ 2835935ca9cffd61ab5ed931cf11aa00 \
+ 6129e036328e2ec678c8d5d9be3c5e59 \
+ c8419b154d047b3b874ee0b90b0f7413 \
+ d022bc79e1931c2bd4ebbe65cf3d2309 \
+ a09f4a3274ea28a2ae68c2757965c319 \
+ 493a2f042d86baa5c6bac75202c64554 \
+ 3d62bfbbe08bdcee55fcb8cda85554d9 \
+ e8f53be89a66884dbb2cf3f6b55d41a9 \
+ 3681f813c502d911e9eea940dddd26a5 \
+ 056c8d712ee146347c412b72f4077b2f \
+ 7c8ef8b5fc652fa97d3629d1ec8b18e8 \
+ 8a1dbc6f2dff64198e1763751f4f05fd \
+ 55b0203d6ebdccee692697e82cf5556a \
+ 9a25a5393856f8a0bbc14d82e27414a6 \
+ 4d130437f158a1172eea060632265cd5 \
+ 44c9dbaeb0f1bf1f20e0a183b8c664e1 \
+ 8973f5974bd59f81ad2fffbd8d947af9 \
+ 8a6423be63449516e688249c2e3bb910 \
+ bc366f3a65a6503ee17b809a33cba38a \
+ 65e9d87bb0e146a256971ee567decd43 \
+ 330fe3773176c641a8538f1cd1bfbe79 \
+ 10a3fc85c72d5b31ef2cc7d67fe955fc \
+ bdf329a72ecd0605c296f25e53136706 \
+ bcd5fd8c2b279da10b5a4d7b67eb555e \
+ 33a8d2c2fcb7b68857c0c1278bf05f50 \
+ 91b29dfbb9dfe1320493e45f3e27a89f \
+ ca985b25824287d17f114f94b25df7b5 \
+ 44e892b391b9b0b73c12e579da410648 \
+ f7e39a817594c22ef2609187c43dff9c \
+ b27485fa46bf04821c8c08402b708432 \
+ b1e2ff2b24e7c0840bb0cb1174beedfd \
+ 90dd7e5de8d668d26234ac4e308ef6a2 \
+ a1e1c92075e77d61acf61a094a68fa61 \
+ a2e693fc79c126e6f9ae430c39d58617 \
+ 8dab3b3ec00dc56cffde0b0c410d47b5 \
+ 78c898fdaa3968e23904bf8538c4a271 \
+ 24210500b0b946ed658dd20037cdf5b4 \
+ 38f845b095b4ca30f93e034c7bd5ab14 \
+ 667e86b8b8d96ab4e9605627ce7dcc9a \
+ 0b1834c2de5aeb930998c0f41e1e5ac7 \
+ c3e51926c9853b714191ef1bec90e2ce \
+ b4da4608c9fa5193dc25539c7677ac6a \
+ f6af880cfdb0c579b698586d841c664b \
+ 44df381323008413e1624a79c6975ca8 \
+ 9633f45ef555c994bba8f8ad04735fff \
+ bb90dd58c7107a6f586b04588404b0ff \
+ f0af2a791144dfe21d284bcc00f7fa38 \
+ c410caa0c9f52fcf9da29688e3ea2974 \
+ 163296a9672a36cb46d9a78bae592c66 \
+ 259efb88f74fd1612ea748f3347ff56d \
+ e667ddded881e4892208a3ea7087c655 \
+ 64a6d8fe0c9a450bcefa41894e17d7ac \
+ cbb52c723c94c83804912cde945b4510 \
+ 3c67481b4433a3219846e41d09aaeaa9 \
+ fbc6f6d82084b19c006198508b1ac489 \
+ 2d6d28ec311884da69bcaf320ada8ad5 \
+ 86085ccd348bb3897f39b13b5cf79ecc \
+ 798b266cb07604d172afab782e1967a2 \
+ 1b41b97d982520b7364a87a39e2a1ed8 \
+ 0339cc04f4471f002e421e2328a86bf5 \
+ eb37edaaef79a17689ada175773bde59 \
+ 0372a8de508e57da4d4869f058bcb630 \
+ b92fa50f56a1e06a7f1bf665442d4a73 \
+ 4daeb6abd6951210bed659c3c1ea01b4 \
+ 1d3e530a3410fc95a6987d70f84a6332 \
+ 656eb112c9634812796a81803b04a3e6 \
+ d81f9251921f8a289dcf69fe4ccc3788 \
+ fb46b88c5cbf8bfe28124af1794f3934 \
+ ac93fe50bd04f323645dfa04955aa298 \
+ 54cbd8850aebe933b8f1214d8e916d1e \
+ b2f491f27aa784c5c868fc1f7f915c17 \
+ ab6f20dc7b2faff4a2d9f9055b1571ae \
+ 92968aee56cb2f162a55008fedddbb78 \
+ 580b311bafe0447ebc9ca2e646d9b0e7 \
+ 4b1be643ffa9aa296972683f97bb34bf \
+ 67d707a00d2c674895918d0a88c9d019 \
+ 31667fab2083c342c85bb51c2cba6d58 \
+ f654fdede1434dc135c78e50a1233e25 \
+ f711e3c5b59783b30558a7a4810320b5 \
+ 7810a6b901a77b30a16e7f123685e173 \
+ 87b1b7cb12ef4dfe842c212b98263048 \
+ fe77a3f609b6fd8d5b08f3b2ef14d2ad \
+ b5305bde14813da51d536a9df564db69 \
+ e6845317d6f1b581637ed0b77b1e8aea \
+ 11ce8b5f52cd315e8f52985b834b87eb \
+ 75d480d43a87d733f9f497c647f7d973 \
+ 5f153f7135dceb02f88266121c836b4e \
+ 916bae8326e21f1d60fa9cba2b7dfbcb \
+ 411fc2fb6b6fac5d46a936f2d3001478 \
+ ce2ecc3cf8d25a886a51fc7d66503a87 \
+ cbafbdc811ecda2c59593e87a05c219f \
+ 5d87e8530342ef2a980b1c96dafd27f0 \
+ b30ef1414dde99d96e89aeea2b3fc094 \
+ 73272fe4aadb91d550dca8fc7ead8bf7 \
+ 8fc0caa52d204a532f3ec02ad55b9305 \
+ df8968a2a066697d5ccb744045c09c7f \
+ c6be9100355c6e77cf37c76ade56baa4 \
+ fba3b040a55c01be7376d3dd5c4d4920 \
+ 23cc9e52c52465f5b225e62ab7cc3457 \
+ d3d110551104b00b42c9920958939391 \
+ 0bc840b564ce2b698189d5b204538624 \
+ 99d57b23f1a7878ef7220513f49db015 \
+ 23fb13a7f6fb7b25a42d71c3bcaa5d7c \
+ 39e24edc88ded15828011f4455116a20 \
+ 7e360efaf354a846028b68a3ad67b207 \
+ fb0e90d52a58a9fb647cbf79789ec227 \
+ 7af851b9d8f8aa3b9bc26459d7395a81 \
+ b928626f9e8328e4085fc27cfc640c19 \
+ d5619cd692cdf95bddb994fa4351e4a5 \
+ 2ba6cd31b6ef69fdcbec450eb07fb2ed \
+ 1a9824f887b3ef3150c93c087bbb10fb \
+ 067ca67cf5dc5d2eb25c03e491ceb395 \
+ bd13e165196e3470237b852d347cbb9b \
+ f2d8f01a4e5c5236ab55240d09c6e82f \
+ eb44c81f81e4aecdbdbafeac9c0fdcab \
+ 5a376ab3f01ed9e90e8d71e1d5fa6ae7 \
+ 2bc947f73c658b9ca3e144783373a790 \
+ 7b3195612bc6090f0fa759e747a9e91c \
+ 7c81e7a61ec172a229d6fdbc553e883d \
+ 47580fad08273a52e998f84ef404912e \
+ 171bb701365ec4b0c12ae5387e034c16 \
+ e90235c862e9e1fabe9f569bcfbd9692 \
+ 76124c2327f642cddf19a4aa50cbcb7d \
+ 1fb91af1c97373201990f1baedc58c35 \
+ dfdf2484a5545f51cf6b1f5f23b9f92e \
+ 8b708bc4b33c5e1683467444c9ed41b0 \
+ 86aa81f2561682f16c0be376294bf9d3 \
+ 13f47025d308bc16d26a9bc3334f3bbe \
+ 790ae5bbcccc91d97517bb1bde7ecd8e \
+ 81f3d69af8142596468325954a52dea3 \
+ 1a6e77e2f6f916ef7a5a9481ed426b76 \
+ 7e395ce2e673b7d9665751cbbe3cbcdc \
+ 5f5168cd7b4aad8ae68f4d1e32a1e0e2 \
+ 97b832ecaac0eee2b644fd42f2931160 \
+ b235f97b3139681d61419166e7c00e3c \
+ e3bd46e4620b19864b2dd3542bb14c1c \
+ fef6cd95c83025d64b8cb50171a4bb74 \
+ f17aecb8887cf0ecd823623160aed7db \
+ 76dc907eba3076e09ac1114a526bfcf7 \
+ d69aa359a9e7dd2d67a7b7712e30a19e \
+ 8927630752c4318c97736c12ed667301 \
+ 6b1db46a36bc0dc590270d2c952d30c4 \
+ 2dd9caaa8243e400e523bda863c900aa \
+ 25a9c25700c416af66082afbd9187bb7 \
+ f66a5e0697395109481ae9afd83db471 \
+ 5b5de6cffe4726037a5ec6d6931c80f3 \
+ 56c34619687723fa3fc23213471e8545 \
+ 1b3093a865e51ce798ed79054dd3d829 \
+ 0fbab0ba3ce58941898919fa3d0bae4b \
+ 99e024622d98dc28a8a5f37afccaf20a \
+ 15353118e83f5e3c77cb725af8340add \
+ e092b3abcc54806f2a35889d725bf95f \
+ d443cbf9907b31a0f396fb13489d6cd0 \
+ 9838a94728692023a816e8474aee7e7c \
+ 8ba62f467422d88e28a22b24c1e277b1 \
+ 4578b5cccbe636b7e5becdf5543b3802 \
+ bbda7e9c572f651774dfdb0006b9f085 \
+ b4dcac855af5df71f3383d86c4a96b78 \
+ aecd889de42c8168e1bc97a6f2720d8f \
+ 1ae1271765836d43a297bc90e1627241 \
+ 977dd1b29905266183c597c7a5098476 \
+ ca5b82f3f1947878d8c7b37c4888d954 \
+ dc121f4e838b7225ee3382c147ea8a82 \
+ 216ad5c2a82af09ea52cd4529e0f8966 \
+ b6fe971a49c79dd8448eeb3acff74448 \
+ fd9aa273ad560dedd00ddcf3dbe808ce \
+ 0d98aaf27d3cace75f9959c04b910891 \
+ 980c225025b646fa54a9450d22688ad0 \
+ af692853d165edb9c5df23627b2f8e04 \
+ e460418ee4f5508bc53c97e809331882 \
+ 8390247ae7126c00e162732b249be9d7 \
+ af58dda7d5f0917aae30cf3f5fffdadf \
+ f4c1fe0f183ec61db569aeb437c6f9cd \
+ 28d34115cfbbe0e8f80333591f2cdd84 \
+ 907244c0d3791f3f981c7cc8e4cad0a3 \
+ 663a7dc80c4a8280f108a350bca1f125 \
+ 481cc7357cb8bfd6a728e7b47dee84b1 \
+ e26046d4c188c53f09b6880de7bccab0 \
+ 6fb245ba04d6859fadef5fe22806355b \
+ ef6fc33d718cd6aa793a60f884d62611 \
+ 1c81a692573ebbe22b81c1107d0ab518 \
+ 12e4ba5909e1f30b9142932571eaa4da \
+ 9d6c117b30034665155c9e6852b86e88 \
+ b1713fb3ae03d434680cff5fb4c14144 \
+ fe316e1d51e3dff1e0455d0142dd37e4 \
+ d27d4ebe09da25387352db8f3621fc40 \
+ cf2f0435bd5b5111fea46e8d9dc6522d \
+ fbb87d3e5015e2ac193545f18bc5d20f \
+ 0ba30a94d7b8865c23e86d4d64e5b91e \
+ aa64b5603b047aa734216db62286aac8 \
+ 44f053408a962a7844f01f5489605a0f \
+ 7e85eab95cabf5f5345db3ab007fb4a9 \
+ a9a6ce6cd4b12f9c4f6840df87d5da0d \
+ 07c75fec267864bcbb800ca7709ceae2 \
+ 564286699e80741f7c24b16c9a1a5f58 \
+ 524ffd7a9b5b25c4d388686a5dde5cac \
+ 84dacc478522497f5c7264c62a2c83ac \
+ 263a4e4ee967b56a460b6b717fa53279 \
+ d47be980af799d61ef5a73fb82a202c8 \
+ 1262dd2afb9bbb47b9075ead3102da9e \
+ ec96d03983725371e10bd4dad4fdd232 \
+ 30eb4de1c1a3bd214d7649b891abf444 \
+ 5c69337d37e58a380e00eac9ce0373bb \
+ 232374820c8ad89ff8d4727d98222c18 \
+ b5012003220ca5bf1512946914dfe295 \
+ c755ef59e7394470f9e06673f7e02e2a \
+ ce98002a9f935f415642f31f4b40360a \
+ 5770ccff26d6481010ab6c6006cda25a \
+ c2a8746886f9f7bcc8fb9dd539183e44 \
+ 4785f3ef9f313f11aae87120112c45b6 \
+ 5d249ea25d57d9e5b051a504a2f62a62 \
+ 7267e731f46f52edb7b5304b60982cf4 \
+ ee7a5f842c39bc47c474196e83b0df5f \
+ e30085994bbeb4b7f4895d48216d5476 \
+ a1626b8f4d165b1b60d960862eba4cf0 \
+ a661e92ffd6cb9f0893126e3cde3fffc \
+ 16111f31a29feae4ce4a324b83dc0189 \
+ ea6dadf813d422419f900efa67ed9170 \
+ 59f71fb230b688cb167ec6d7510ae861 \
+ a4e0e59afbc3890b4a0a8d9a0ca1b8d4 \
+ e19600513eaf0823f25a621088b44d2c \
+ 520b920d0c711ec1a17fb19a6060446a \
+ 5ff02ce05f7f204690c26cb20f3cf2d0 \
+ b29c183ddd63a60f51b0bf214d9fa4b1 \
+ ee620998fafcd5665f24897e37c0d57e \
+ ca991859381ef2ddc2b3306de05c242c \
+ 44a24f25cc194657b0e339a10d65915e \
+ f0c24c0d01acc4fcfa57f193edc8daf0 \
+ 237693976d463e6437133dcd135ca74c \
+ cbece4c808cdeaa21c9970174a8c6fd0 \
+ b400c455aaf7d3e6a216261f07c4bc93 \
+ 7b1261ea730a9314bc9bcdf4a379bf98 \
+ fdf3aa5e1f6c33e4f68b0f7b08e1e94e \
+ b815e6cf70bcc3512ffbef7f6dea8c5f \
+ c16e8027d2f6a84b07637ed9dd6a46e6 \
+ c0abb1df9f07ef70253f95a0ad566009 \
+ 9f6db3aa8f4f64c7853ced37e2ea60ab \
+ 56de037d755aeb0b45169991f9567cd7 \
+ 2d8d8b377d144f5e32b4f65a69eb0b24 \
+ 6a0950fa3775d755dbbdbd24a2841786 \
+ b898bcf321bba46ecd15c9279cdbb290 \
+ f1358be8c98b98837cbd2cf51e75f8b3 \
+ f2d5c07279f3211547a4dec14c8826c3 \
+ 93531fb0a9b2cc7341256576d957ec11 \
+ d3ccccba78e5375faf8e543884f9e84e \
+ 56cebb7cbd387fb6fcb185d4b72440fd \
+ 30f8c7ce8e7a3a98039d34a07556435d \
+ a8cd06e4032cfe9218e3479e668a950b \
+ 1dcfa87e4c034a897f0a10437a7cce36 \
+ 901c258136ce9147131deb202e1535ad \
+ fa0d5d4e1e3bd20a9ca9aef473fc3665 \
+ 47151b766b6b73e638fabe6fae7b723d \
+ 82078b82ed1c52aac9552a39ead691a0 \
+ d7602381c0bc21d10603cc940a837b06 \
+ 289b776935f2184c6ba2974877285013 \
+ 31bc883e6f9b36925f55460401197274 \
+ ce622fdb8d18cd1c13ed8fadc5400c10 \
+ 6c623a8eed8450399ec323a72e96855c \
+ f60ab8537f924a65fbc0961e958d375b \
+ cd23eb9bc45514102af9b76e333230fb \
+ a77d5770902a4260009320daafd1fff2 \
+ d0116882bd495f2b993495a8cf01f6fe \
+ 5d8c25fc51ffebca67935516c2325860 \
+ 50d5a501f911bb592f0dce2d052c2aa8 \
+ 746d5deb23a67c019e5b2381d76d4afa \
+ 245be6692a21ca8527b683b40aecac9b \
+ 5988bad1543264a9f48b542192e7de9a \
+ c9defe80406280bcfce4ecf31c0200b3 \
+ 43661dc16a38eb42bd49a11b9f00d6f4 \
+ 82d98dc87dc8503400aa095f5aa70f13 \
+ fbe5da24bd1beef6125107ee41118187 \
+ e1fac99a8b538b7287b8ab102a839e81 \
+ 6bf382b1603c01669d5da08d7e85b5a7 \
+ 8e053c23f1d36fbf3f276fbf501e3e35 \
+ 64d9f46e9ba78f68c30c486be3d8b7df \
+ 5042ab676ff539148d32c7790f06b826 \
+ d9794aa522094bdd0f66c045c29e5d01 \
+ d2cef4c78c44c8513136a8b07d648824 \
+ a84637b0865bd9435a575d770f4fea30 \
+ cd808ebf70116572373bdb8c96ff3a33 \
+ 449c7bb37fc298d2026fbf2855eb8db0 \
+ 73d602cc41e3e431bf4fabd129ae1616 \
+ 5e7f9a17d31e264f87d3e14b85d7da3f \
+ 560fd15286d078feffbe7c191892e19d \
+ 812d3b8ae5a3c5b4bb75e8666c8c742e \
+ cae621bc9543182ab86f71b8601a318b \
+ 4d878f78fc54e274f89bd4731ae605b4 \
+ 19e6e4e45004e2b023e49e37c34b4e31 \
+ 7818a75208424a6d05d1d868559f0adf \
+ cbfa351bd29e3779266c82b3996fc9ab \
+ 5f0470696baaa4e5953bddbf196998f9 \
+ c678a7da0ee4b850ebde0474144a0415 \
+ 7d6059d699479e0b6a99ce0281522217 \
+ bf33e2d27126b29c8a9b1239c688a424 \
+ 9e2f7831d5c7d8bd2f430984e47c3065 \
+ a23c6e2b033c888211095a15ca9ac553 \
+ 96a097939f4cb00c978f840a89dd45bf \
+ cc14d30a8e3aa6f3d0a54311fca6acaa \
+ 9aecd5ff283534a21d7cd51266abfe89 \
+ 467f480ef05d416ac677d12315214f59 \
+ 0cb504a1438dd87648b18def4b0e6e10 \
+ 13ec7a52fc82eb309183c6b2d484e2de \
+ 3fc11d6bd687ec52943fa02d9a5de916 \
+ 92975a97c15daa2a21006b0932ce733c \
+ 60d7c3a9f75ac64cffbb9ccda7c1c8e5 \
+ 0a906c03436ec2dcc4c311c21fee0da2 \
+ 9dd610282e23bbd40016697350c1babb \
+ a6655e5e9845cb569991e87b5b38a1fc \
+ 6bec8c664a07a03bc4486f1576328cfe \
+ 6f09120aa341d58ea072539176058a00 \
+ 6ebb8deee5a5a0d1c26b20eeee1926b3 \
+ 1bb0f07f67939ce667f8f1a000dbec38 \
+ 8a607889ac525c2286e2f7c88f89d931 \
+ ca65153603a1a7240bbd9d2ce19f2d67 \
+ 97fa43aa1afabd1f5f3d1070389b42ba \
+ 43bd6ad524e583eaa8c071dbb01f11ae \
+ 01bce66c98792940b4f022307b2962d0 \
+ e1c475bcc83eb4ccfb6f99c0697e5aef \
+ e547b0e754cd61f24f9ef8c9e26fcd95 \
+ ceee1159c41351d05f4cf705490867b3 \
+ 5b2aec3424fb46f4d089b6552cae7075 \
+ e900a384ac7dbb320fe6a7279fbfef89 \
+ c4769705079e88d68739e6089e8769a3 \
+ d18d362345c4fe512ef67b738b239fb8 \
+ f38b27b8c9625110a51293658f1cc014 \
+ 4daa973c57624dc3d88eaa49dd86d3e1 \
+ e972ea58ec203bfa6c79c1207852298b \
+ dca59f56e652d010c754d42df104cd22 \
+ 1aa786b0f998b9d0440c2a03b133e991 \
+ 65689b5bdeb96ecd47930b430520f676 \
+ 8b3da5691ef460f035d90f16d3a0bebd \
+ 651897c3311b074247a1b351bf85b4ff \
+ 4abb118b896b90518fc32602088933be \
+ 8ab996cc7533caa3a5675e045759e4e2 \
+ b40d4c73e3b5fd6670c4e1e253cfd689 \
+ 4c9b7fd62dd6099a9a0e583bbdfea1cf \
+ 028a529550344ea14623168220fa1901 \
+ d9cf61d9a5387dcbb3bf017aebaf2bf7 \
+ 7da33160ff24759809edd61619a4a69f \
+ 50fd776efcd20b40eb7ec5bec9c2d1cf \
+ 3463b870b51ee10369d6b1a5139ad166 \
+ 0498c4a11448bfc35dc7bb2caa64c753 \
+ db96b50050277bf05a3c68534bbb9586 \
+ dbdd24e240e42c6852910e7504285712 \
+ 09de9d01e7331ff3da11f58be8bef0df \
+ 8e18e49c80bbc5b6184ee392ca7571ba \
+ 6fea8456dac26da1a185af6b0318dce1 \
+ 58f8e58043e4149e7865129d3c312eeb \
+ 737a9cd2cca5c8d6f21ecdd0fff2b2ec \
+ b86b7fd51d42769f5732b29db9274996 \
+ 23eaf0b79be986ae249edd0dedce9221 \
+ f2797ade0e36f1e5d6be9d11b5076582 \
+ 2376de634160158ece40c4bc2ab3eb41 \
+ 24c64817e85ef77765ed0f26c31c9b4c \
+ 940f8708332e8e3720266a7bce4d761d \
+ 692aff2a4d76b7a87371e979eef79089 \
+ dae6d89034a6988042fd8be4cf5e037d \
+ 967cf93762a3bc25e18d0b8b7e811b84 \
+ de2839e16d9d7a9fd1c397da62f62b4a \
+ 0bc2062598ed9d8ed536e27fddd81ce7 \
+ e0c35ffb8cfdb74a39bf799811f79304 \
+ a35e6187f2f41e601cf885c279ebb43e \
+ 183b6a856fadbc8f21a6c53ca81155c9 \
+ d990172b607020701f9e84ca8e1c043c \
+ cc1f120172ea435e8ac1e813435bc630 \
+ 0a68848588e847ceccf504891584d00b \
+ 1dbfec917710e57b574e92effa934924 \
+ 45b469ad607b912256b7c80141fa2d17 \
+ 3817cf594b24311c4ea944398a58a48d \
+ 7799baff9a5664205d9110a2624e8989 \
+ 7cc8e977768423992930663aadcc43dd \
+ cb7c86af4d8a969d849c6fce363af240 \
+ 02cb8ba99b348c44b987aaa5499cc98c \
+ d9c86ac3f5060d384d3a4c3f99fdadeb \
+ 3aa6fd0d30e89ae0fef20f01efe44f9d \
+ 3bfcdb23ee30fe972b0e5a45c2661171 \
+ bc25ca609cd5a0a7a7846af8cef5afa9 \
+ c8e2f2d9f920fc5fea78b95ae7e57082 \
+ 1538a3a38f01bc0c3feacd388c08e6c4 \
+ a78d9b7d812b68bc4b27b4f23d46ced1 \
+ baca0d25e5a07c4ba2e7adf6202041ed \
+ 9f03cf3a961d2752203763aca7e2f478 \
+ 9804ba2a6ac5353c7a651d09ad899374 \
+ 59a504c234f588bcd3f9a3d58bc2af2d \
+ bcfc5a71fb6f68251e902c25965cb543 \
+ 11edfb7c5b9632ac9d68eca218a2965c \
+ 7a0544d66994f37702f6bd998c31d9da \
+ 3a9fcb5fbcbbd59f183105eaf49d2e8a \
+ c4c2218b53cfa6c2a9dd8894ae22a349 \
+ 9b88ddcd35fb230049cf54d7c80b61ee"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="rust16"
+MAINTAINER="K. Eugene Carlson"
+EMAIL="kvngncrlsn@gmail.com"
diff --git a/audio/ncspot/slack-desc b/audio/ncspot/slack-desc
new file mode 100644
index 0000000000..1c47ccbed4
--- /dev/null
+++ b/audio/ncspot/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+ncspot: ncspot (cross-platform ncurses Spotify client written in Rust)
+ncspot:
+ncspot: ncurses Spotify client written in Rust using librespot. It is heavily
+ncspot: inspired by ncurses MPD clients, such as ncmpc. A premium Spotify
+ncspot: account is needed.
+ncspot:
+ncspot: ncspot saves its configuration to ~/.config/ncspot/config.toml.
+ncspot:
+ncspot:
+ncspot: Author: Henrik Friedrichsen
+ncspot: Homepage: https://github.com/hrkfdn/ncspot