37 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			37 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/usr/bin/env bash
 | 
						|
# script to generate `pkgs/networking/instant-messengers/discord/default.nix`
 | 
						|
 | 
						|
set -e
 | 
						|
exec >${1:?usage: $0 <output-file>}
 | 
						|
 | 
						|
cat <<EOF
 | 
						|
{ branch ? "stable", pkgs }:
 | 
						|
# Generated by /maintainers/scripts/update-discord
 | 
						|
let
 | 
						|
  inherit (pkgs) callPackage fetchurl;
 | 
						|
in {
 | 
						|
EOF
 | 
						|
 | 
						|
for branch in "" ptb canary; do
 | 
						|
    url=$(curl -sI "https://discordapp.com/api/download${branch:+/}${branch}?platform=linux&format=tar.gz" | grep -oP 'location: \K\S+')
 | 
						|
    version=${url##https://dl*.discordapp.net/apps/linux/}
 | 
						|
    version=${version%%/*.tar.gz}
 | 
						|
    echo "  ${branch:-stable} = callPackage ./base.nix rec {"
 | 
						|
    echo "    pname = \"discord${branch:+-}${branch}\";"
 | 
						|
    case $branch in
 | 
						|
        "") suffix="" ;;
 | 
						|
        ptb) suffix="PTB" ;;
 | 
						|
        canary) suffix="Canary" ;;
 | 
						|
    esac
 | 
						|
    echo "    binaryName = \"Discord${suffix}\";"
 | 
						|
    echo "    desktopName = \"Discord${suffix:+ }${suffix}\";"
 | 
						|
    echo "    version = \"${version}\";"
 | 
						|
    echo "    src = fetchurl {"
 | 
						|
    echo "      url = \"${url//${version}/\$\{version\}}\";"
 | 
						|
    echo "      sha256 = \"$(nix-prefetch-url "$url")\";"
 | 
						|
    echo "    };"
 | 
						|
    echo "  };"
 | 
						|
done
 | 
						|
 | 
						|
echo "}.\${branch}"
 |