summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Hensing <robert@roberthensing.nl>2022-01-22 14:17:25 +0100
committergithub-actions[bot] <github-actions[bot]@users.noreply.github.com>2022-12-09 16:56:21 +0000
commit7a1c1b7a9ccce301f76151cf7657c802c7d0ff7b (patch)
treecbd16450c434e42fcba18a248dbe98d364e164ce
parentMerge pull request #205174 from NixOS/backport-205155-to-release-22.11 (diff)
downloadnixpkgs-origin/backport-156169-to-release-22.11.tar.gz
(cherry picked from commit 9aa8863a8ffcad0626a9e160da16a95f82e08f5c)
-rw-r--r--pkgs/applications/video/netflix/default.nix56
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 58 insertions, 0 deletions
diff --git a/pkgs/applications/video/netflix/default.nix b/pkgs/applications/video/netflix/default.nix
new file mode 100644
index 000000000000..4f44ddebaef4
--- /dev/null
+++ b/pkgs/applications/video/netflix/default.nix
@@ -0,0 +1,56 @@
+{ fetchurl
+, google-chrome
+, lib
+, makeDesktopItem
+, runtimeShell
+, symlinkJoin
+, writeScriptBin
+}:
+
+let
+ name = "netflix-via-google-chrome";
+
+ meta = {
+ description = "Open Netflix in Google Chrome app mode";
+ longDescription = ''
+ Netflix is a video streaming service providing films, TV series and exclusive content. See https://www.netflix.com.
+
+ This package installs an application launcher item that opens Netflix in a dedicated Google Chrome window. If your preferred browser doesn't support Netflix's DRM, this package provides a quick and easy way to launch Netflix on a supported browser, without polluting your application list with a redundant, single-purpose browser.
+ '';
+ homepage = google-chrome.meta.homepage or null;
+ license = lib.licenses.unfree;
+ maintainers = [ lib.maintainers.roberth ];
+ platforms = google-chrome.meta.platforms or lib.platforms.all;
+ };
+
+ desktopItem = makeDesktopItem {
+ inherit name;
+ # Executing by name as opposed to store path is conventional and prevents
+ # copies of the desktop file from bitrotting too much.
+ # (e.g. a copy in ~/.config/autostart, you lazy lazy bastard ;) )
+ exec = name;
+ icon = fetchurl {
+ name = "netflix-icon-2016.png";
+ url = "https://assets.nflxext.com/us/ffe/siteui/common/icons/nficon2016.png";
+ sha256 = "sha256-c0H3uLCuPA2krqVZ78MfC1PZ253SkWZP3PfWGP2V7Yo=";
+ meta.license = lib.licenses.unfree;
+ };
+ desktopName = "Netflix via Google Chrome";
+ genericName = "A video streaming service providing films and exclusive TV series";
+ categories = [ "TV" "AudioVideo" "Network" ];
+ startupNotify = true;
+ };
+
+ script = writeScriptBin name ''
+ #!${runtimeShell}
+ exec ${google-chrome}/bin/${google-chrome.meta.mainProgram} \
+ --app=https://netflix.com \
+ --no-first-run --no-default-browser-check --no-crash-upload
+ '';
+
+in
+
+symlinkJoin {
+ inherit name meta;
+ paths = [ script desktopItem ];
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index fe9f7997b90f..b9f717e194f6 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -21462,6 +21462,8 @@ with pkgs;
nemo-qml-plugin-dbus = libsForQt5.callPackage ../development/libraries/nemo-qml-plugin-dbus { };
+ netflix = callPackage ../applications/video/netflix { };
+
nifticlib = callPackage ../development/libraries/science/biology/nifticlib { };
notify-sharp = callPackage ../development/libraries/notify-sharp { };