nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ stdenv
2, callPackage
3, channel ? "stable"
4, fetchurl
5, lib
6# This is only relevant for Linux, so we need to pass it through
7, polkitPolicyOwners ? [ ] }:
8
9let
10
11 pname = "1password";
12 version = if channel == "stable" then "8.10.6" else "8.10.7-11.BETA";
13
14 sources = {
15 stable = {
16 x86_64-linux = {
17 url = "https://downloads.1password.com/linux/tar/stable/x86_64/1password-${version}.x64.tar.gz";
18 sha256 = "sha256-wCY94x67z+X8l3wr79+BXuu6/UXJldbVIA67AAD9mj0=";
19 };
20 aarch64-linux = {
21 url = "https://downloads.1password.com/linux/tar/stable/aarch64/1password-${version}.arm64.tar.gz";
22 sha256 = "sha256-iLjuudWmkLMuoZSZZo9pRpx0MZludUrGTpTHCTNk4Vo=";
23 };
24 x86_64-darwin = {
25 url = "https://downloads.1password.com/mac/1Password-${version}-x86_64.zip";
26 sha256 = "sha256-FVj5x1RVBxPsgWhG6R4ykarZdLdJcj6gO5mQy3hHB4M=";
27 };
28 aarch64-darwin = {
29 url = "https://downloads.1password.com/mac/1Password-${version}-aarch64.zip";
30 sha256 = "sha256-ilQP1OF4gydzlLZq3aZzqNbzvacRbruzWS7pVt6DP9g=";
31 };
32 };
33 beta = {
34 x86_64-linux = {
35 url = "https://downloads.1password.com/linux/tar/beta/x86_64/1password-${version}.x64.tar.gz";
36 sha256 = "sha256-O7dzNRukIk654FoS1HxqHYcB8mLNORvz59p3skRXuYM=";
37 };
38 aarch64-linux = {
39 url = "https://downloads.1password.com/linux/tar/beta/aarch64/1password-${version}.arm64.tar.gz";
40 sha256 = "sha256-npEVlGwMmYXH4wW6VvAhPzWNFOZl1LvuCnOgvm94rds=";
41 };
42 x86_64-darwin = {
43 url = "https://downloads.1password.com/mac/1Password-${version}-x86_64.zip";
44 sha256 = "sha256-Z0IZNEU8ggSF20SZziT5UTEMiWPNdVWY82nhuGyeFVU=";
45 };
46 aarch64-darwin = {
47 url = "https://downloads.1password.com/mac/1Password-${version}-aarch64.zip";
48 sha256 = "sha256-qy1Vr6nDJo44Qd7mKZYR65+tIaSq0YOjjw84/mg1RgE=";
49 };
50 };
51 };
52
53 src = fetchurl {
54 inherit (sources.${channel}.${stdenv.system}) url sha256;
55 };
56
57 meta = with lib; {
58 description = "Multi-platform password manager";
59 homepage = "https://1password.com/";
60 sourceProvenance = with sourceTypes; [ binaryNativeCode ];
61 license = licenses.unfree;
62 maintainers = with maintainers; [ timstott savannidgerinel maxeaubrey sebtm ];
63 platforms = builtins.attrNames sources.${channel};
64 };
65
66in if stdenv.isDarwin
67then callPackage ./darwin.nix { inherit pname version src meta; }
68else callPackage ./linux.nix { inherit pname version src meta polkitPolicyOwners; }