First fully working vesion of the packager

master
Meliurwen 2 years ago
commit e20bde6c7a
Signed by: meliurwen
GPG Key ID: 818A8B35E9F1CE10
  1. 8
      .gitignore
  2. 4
      debian/README
  3. 11
      debian/changelog
  4. 19
      debian/control
  5. 11
      debian/copyright
  6. 1
      debian/install
  7. 4
      debian/rules
  8. 1
      debian/source/format
  9. 83
      main.sh

8
.gitignore vendored

@ -0,0 +1,8 @@
tree/
tmp/
debian/.debhelper/
debian/debhelper-build-stamp
debian/chromium-widevine-plugin/
debian/chromium-widevine-plugin.substvars
debian/files

4
debian/README vendored

@ -0,0 +1,4 @@
The Debian Package chromium-widevine-plugin
----------------------------
Uh, proprietary.

11
debian/changelog vendored

@ -0,0 +1,11 @@
chromium-widevine-plugin (4.10.2449.0) unstable; urgency=medium
* New release.
-- Meliurwen <meliurwen@gmail.com> Sat, 21 May 2022 12:15:35 +0200
chromium-widevine-plugin (4.10.2391.0) unstable; urgency=medium
* Initial Release.
-- Meliurwen <meliurwen@gmail.com> Sat, 11 Dec 2021 16:47:01 +0100

19
debian/control vendored

@ -0,0 +1,19 @@
Source: chromium-widevine-plugin
Section: web
Priority: optional
Maintainer: Meliurwen <meliurwen@gmail.com>
Rules-Requires-Root: no
Build-Depends:
debhelper-compat (= 13),
Standards-Version: 4.6.1
#Homepage: <insert the upstream URL, if relevant>
Package: chromium-widevine-plugin
Architecture: amd64
Depends:
${shlibs:Depends},
Description: This package contains Google's Widevine DRM plugin for Chromium.
This package contains Google Chrome's Widevine DRM plugin for Chromium.
.
Widevine Content Decryption Module enables playback of Widevine-licensed
audio and video content.

11
debian/copyright vendored

@ -0,0 +1,11 @@
Copyright 2022 Google Inc. <widevine@google.com>
"Google Inc. and its affiliates ("Google") own all legal right, title and
interest in and to the content decryption module software ("Software") and
related documentation, including any intellectual property rights in the
Software. You may not use, modify, sell, or otherwise distribute the Software
without a separate license agreement with Google. The Software is not open
source software.
If you are interested in licensing the Software, please contact
widevine@google.com.

1
debian/install vendored

@ -0,0 +1 @@
tree/* /

4
debian/rules vendored

@ -0,0 +1,4 @@
#!/usr/bin/make -f
%:
dh $@

@ -0,0 +1 @@
3.0 (native)

@ -0,0 +1,83 @@
#!/bin/sh
# Acknowledgements:
# - Eric Hameleers (AlienBOB) - https://alien.slackbook.org/
set -e
retrieve() {
mkdir -p tmp
printf "Downloading 'versions.txt'...\n"
# Each zip contains a CDM binary, manifest.json file, and LICENSE.txt file.
# Current version can be read online (last line):
# https://dl.google.com/widevine-cdm/versions.txt
if [ ! -f "tmp/versions.txt" ]; then
curl --fail -o "tmp/versions.txt" \
"https://dl.google.com/widevine-cdm/versions.txt"
fi
# Set the latest version if not otherwise stated (last entry in the txt)
pkgver="${pkgver:-$(tail --quiet -n1 "tmp/versions.txt")}"
printf "Downloading '%s'...\n" "${pkgver}-linux-${pkgarch}.zip"
# The place where Mozilla Firefox downloads these ZIP files is documented here:
# https://github.com/mozilla/gecko-dev/blob/master/toolkit/content/gmp-sources/widevinecdm.json
if [ ! -f "tmp/${pkgver}-linux-${pkgarch}.zip" ]; then
curl --fail -o "tmp/${pkgver}-linux-${pkgarch}.zip" \
"https://dl.google.com/widevine-cdm/${pkgver}-linux-${pkgarch}.zip"
fi
}
prepare() {
# Test archve files
unzip -t "tmp/${pkgver}-linux-${pkgarch}.zip"
mkdir tmp/archive
unzip "tmp/${pkgver}-linux-${pkgarch}.zip" -d "tmp/archive/." 2>/dev/null
# Prepare the final dirtree structure, ready to be packaged
mkdir "${pkgdir}"
install -D -m755 "tmp/archive/libwidevinecdm.so" \
"${pkgdir}/usr/lib/chromium/WidevineCdm/_platform_specific/linux_${pkgarch}/libwidevinecdm.so"
# The manifest.json file is now used by Chromium to determine the features
# that are supported by the Widevine CDM:
install -m644 "tmp/archive/manifest.json" \
"${pkgdir}/usr/lib/chromium/WidevineCdm/"
# Enable for chromium
ln -sr "${pkgdir}/usr/lib/chromium/WidevineCdm/_platform_specific/linux_${pkgarch}/libwidevinecdm.so" \
"${pkgdir}/usr/lib/chromium/libwidevinecdm.so"
# Enable for chromium-ungoogled
install -d "${pkgdir}/usr/lib/chromium-ungoogled/"
ln -sr "${pkgdir}/usr/lib/chromium/WidevineCdm" \
"${pkgdir}/usr/lib/chromium-ungoogled/WidevineCdm"
ln -sr "${pkgdir}/usr/lib/chromium/WidevineCdm/_platform_specific/linux_${pkgarch}/libwidevinecdm.so" \
"${pkgdir}/usr/lib/chromium-ungoogled/libwidevinecdm.so"
sed -i '1s/^/Copyright 2022 Google Inc. <widevine@google.com>\n\n/' "tmp/archive/LICENSE.txt"
# Update the license in case it changes
if ! cmp --silent "debian/copyright" "tmp/archive/LICENSE.txt"; then
cp "tmp/archive/LICENSE.txt" "debian/copyright"
fi
# Update the changelog
dch \
--newversion "${pkgver}" \
--distribution unstable \
--controlmaint "New release."
}
#pkgver=4.10.2449.0
pkgarch=x64
pkgdir="tree"
retrieve
prepare
dpkg-buildpackage
Loading…
Cancel
Save