--- /dev/null
+(define-module (infiniteadaptability packages slack)
+ #:use-module (gnu packages)
+ #:use-module (gnu packages base)
+ #:use-module (gnu packages commencement)
+ #:use-module (gnu packages cups)
+ #:use-module (gnu packages gcc)
+ #:use-module (gnu packages gl)
+ #:use-module (gnu packages glib)
+ #:use-module (gnu packages gtk)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages nss)
+ #:use-module (gnu packages video)
+ #:use-module (gnu packages xdisorg)
+ #:use-module (gnu packages xorg)
+ #:use-module (gnu packages xml)
+ #:use-module (guix download)
+ #:use-module (guix gexp)
+ #:use-module ((guix licenses)
+ #:prefix license:)
+ #:use-module (guix packages)
+ #:use-module (nonguix build-system binary)
+ #:use-module (nonguix multiarch-container))
+
+(define-public slack-client
+ (package
+ (name "slack")
+ (version "4.46.101")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://downloads.slack-edge.com/desktop-releases/linux/x64/"
+ version "/slack-desktop-" version "-amd64.deb"))
+ (sha256
+ (base32 "0dbrf30lixw1c2c028krcb9199vqybpqipzphrc5rs1alpqh3bqw"))))
+ (supported-systems '("x86_64-linux"))
+ (build-system binary-build-system)
+ (arguments
+ (list
+ #:substitutable? #f
+ #:patchelf-plan `'(("usr/bin/slack" ("alsa-lib" "at-spi2-core"
+ "cairo"
+ "cups"
+ "dbus"
+ "eudev"
+ "expat"
+ "ffmpeg"
+ "gcc"
+ "gcc-toolchain"
+ "glib"
+ "gtk+"
+ "libc"
+ "libdrm"
+ "libx11"
+ "libxcb"
+ "libxcomposite"
+ "libxdamage"
+ "libxext"
+ "libxfixes"
+ "libxkbcommon"
+ "libxrandr"
+ "mesa"
+ "nspr"
+ ("nss" "/lib/nss")
+ "pango"))
+ ("usr/lib/slack/chrome_crashpad_handler" ("gcc"
+ "glibc"))
+ ("usr/lib/slack/libEGL.so" ("gcc")))
+ #:install-plan
+ #~'(("usr" "usr"))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'install 'symlink-binary-file
+ (lambda _
+ (mkdir-p (string-append #$output "/bin"))
+ (symlink (string-append #$output "/usr/bin/slack")
+ (string-append #$output "/bin/slack"))))
+ (add-after 'symlink-binary-file 'wrap-binary
+ (lambda _
+ (wrap-program (string-append #$output "/usr/bin/slack")
+ `("LD_LIBRARY_PATH" ":" prefix
+ (,(string-join (list (string-append #$output
+ "/usr/lib/slack")
+ (string-append #$gcc-toolchain "/lib/"))
+ ":")))))))))
+ (inputs (list alsa-lib
+ at-spi2-core
+ cairo
+ cups
+ dbus
+ expat
+ eudev
+ ffmpeg
+ gcc
+ gcc-toolchain
+ glib
+ glibc
+ gtk+
+ libdrm
+ libx11
+ libxcomposite
+ libxcb
+ libxdamage
+ libxext
+ libxfixes
+ libxkbcommon
+ libxrandr
+ nss
+ nspr
+ pango
+ mesa))
+ (synopsis "Slack")
+ (description "Slack")
+ (license license:unlicense)
+ (home-page "https://slack.com")))
+
+(define-public slack-container
+ (nonguix-container (name "slack")
+ (wrap-package slack-client)
+ (ld.so.conf '())
+ (ld.so.cache '())
+ (run "/bin/slack")
+ (description "slack container...")))
+
+(define-public slack
+ (nonguix-container->package slack-container))
+
+slack-client