diff options
author | David Asabina <as@bina.me> | 2018-02-27 23:40:22 +0100 |
---|---|---|
committer | Jörg Thalheim <Mic92@users.noreply.github.com> | 2018-02-27 22:40:22 +0000 |
commit | e41ca3b34767cc13d4e990f6b005360b433d88ca (patch) | |
tree | 25a9ee097a58c93b449272dcf303a6a8c35cc1e6 /nixos | |
parent | e21057ae4fd7f210047066d0474c194b072b49a0 (diff) | |
download | nixpkgs-e41ca3b34767cc13d4e990f6b005360b433d88ca.tar nixpkgs-e41ca3b34767cc13d4e990f6b005360b433d88ca.tar.gz nixpkgs-e41ca3b34767cc13d4e990f6b005360b433d88ca.tar.bz2 nixpkgs-e41ca3b34767cc13d4e990f6b005360b433d88ca.tar.lz nixpkgs-e41ca3b34767cc13d4e990f6b005360b433d88ca.tar.xz nixpkgs-e41ca3b34767cc13d4e990f6b005360b433d88ca.tar.zst nixpkgs-e41ca3b34767cc13d4e990f6b005360b433d88ca.zip |
digitalbitbox: init at 2.2.2 (#33787)
* digitalbitbox: init at 2.2.2 The commits that lead to this have been squashed from independent commits see branch @vidbina/add/digitalbitbox-wip that did the following: - 0a3030fa0ec digitalbitbox: init at 2.2.2 - c18ffa3ffd4 digitalbitbox: moved meta to EOF - 0c5f3d6972a digitalbitbox: using preConfigure + configureFlags - a85b1dfc3fd digitalbitbox: nativeBuildInputs - 90bdd35ef0f digitalbitbox: autoreconfHook - 91810eea055 digitalbitbox: default installPhase & makeWrapper - 90e43fb7e2a digitalbitbox: doc rm $PWD hack & printf-tee deal - fd033b2fe5a digitalbitbox: cleanup, alphabetically sort attrs - c5907982db3 digitalbitbox: added hardware module - 88e46bc9ae0 digitalbitbox: added program module - amend to change name: dbb-app -> digitalbitbox - amend to add install instructions based on feedback (https://github.com/NixOS/nixpkgs/pull/33787#issuecomment-362813149) - amend to add longDescription - moved program to its own dir - overridable udev rules handling - added docs to manual - added package attr to program module - added package attr to hardware module * digitalbitbox: use libsForQt5.callPackage
Diffstat (limited to 'nixos')
-rw-r--r-- | nixos/modules/hardware/digitalbitbox.nix | 30 | ||||
-rw-r--r-- | nixos/modules/module-list.nix | 2 | ||||
-rw-r--r-- | nixos/modules/programs/digitalbitbox/default.nix | 39 | ||||
-rw-r--r-- | nixos/modules/programs/digitalbitbox/doc.xml | 85 |
4 files changed, 156 insertions, 0 deletions
diff --git a/nixos/modules/hardware/digitalbitbox.nix b/nixos/modules/hardware/digitalbitbox.nix new file mode 100644 index 00000000000..0888cfbef2a --- /dev/null +++ b/nixos/modules/hardware/digitalbitbox.nix @@ -0,0 +1,30 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + cfg = config.hardware.digitalbitbox; +in + +{ + options.hardware.digitalbitbox = { + enable = mkOption { + type = types.bool; + default = false; + description = '' + Enables udev rules for Digital Bitbox devices. + ''; + }; + + package = mkOption { + type = types.package; + default = pkgs.digitalbitbox; + defaultText = "pkgs.digitalbitbox"; + description = "The Digital Bitbox package to use. This can be used to install a package with udev rules that differ from the defaults."; + }; + }; + + config = mkIf cfg.enable { + services.udev.packages = [ cfg.package ]; + }; +} diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 3b92bc76b97..13a32b968dc 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -31,6 +31,7 @@ ./hardware/ckb.nix ./hardware/cpu/amd-microcode.nix ./hardware/cpu/intel-microcode.nix + ./hardware/digitalbitbox.nix ./hardware/sensor/iio.nix ./hardware/ksm.nix ./hardware/mcelog.nix @@ -78,6 +79,7 @@ ./programs/command-not-found/command-not-found.nix ./programs/criu.nix ./programs/dconf.nix + ./programs/digitalbitbox/default.nix ./programs/environment.nix ./programs/fish.nix ./programs/freetds.nix diff --git a/nixos/modules/programs/digitalbitbox/default.nix b/nixos/modules/programs/digitalbitbox/default.nix new file mode 100644 index 00000000000..7c727489c6c --- /dev/null +++ b/nixos/modules/programs/digitalbitbox/default.nix @@ -0,0 +1,39 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + cfg = config.programs.digitalbitbox; +in + +{ + options.programs.digitalbitbox = { + enable = mkOption { + type = types.bool; + default = false; + description = '' + Installs the Digital Bitbox application and enables the complementary hardware module. + ''; + }; + + package = mkOption { + type = types.package; + default = pkgs.digitalbitbox; + defaultText = "pkgs.digitalbitbox"; + description = "The Digital Bitbox package to use. This can be used to install a package with udev rules that differ from the defaults."; + }; + }; + + config = mkIf cfg.enable { + environment.systemPackages = [ cfg.package ]; + hardware.digitalbitbox = { + enable = true; + package = cfg.package; + }; + }; + + meta = { + doc = ./doc.xml; + maintainers = with stdenv.lib.maintainers; [ vidbina ]; + }; +} diff --git a/nixos/modules/programs/digitalbitbox/doc.xml b/nixos/modules/programs/digitalbitbox/doc.xml new file mode 100644 index 00000000000..7acbc2fc4dd --- /dev/null +++ b/nixos/modules/programs/digitalbitbox/doc.xml @@ -0,0 +1,85 @@ +<chapter xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:xi="http://www.w3.org/2001/XInclude" + version="5.0" + xml:id="module-programs-digitalbitbox"> + + <title>Digital Bitbox</title> + + <para> + Digital Bitbox is a hardware wallet and second-factor authenticator. + </para> + + <para> + The <literal>digitalbitbox</literal> programs module may be + installed by setting <literal>programs.digitalbitbox</literal> + to <literal>true</literal> in a manner similar to + + <programlisting> + programs.digitalbitbox.enable = true; + </programlisting> + + and bundles the <literal>digitalbitbox</literal> package (see <xref + linkend="sec-digitalbitbox-package" />), which contains the + <literal>dbb-app</literal> and <literal>dbb-cli</literal> binaries, + along with the hardware module (see <xref + linkend="sec-digitalbitbox-hardware-module" />) which sets up the + necessary udev rules to access the device. + </para> + + <para> + Enabling the digitalbitbox module is pretty much the easiest way to + get a Digital Bitbox device working on your system. + </para> + + <para> + For more information, see + <link xlink:href="https://digitalbitbox.com/start_linux" />. + </para> + + <section xml:id="sec-digitalbitbox-package"> + <title>Package</title> + + <para> + The binaries, <literal>dbb-app</literal> (a GUI tool) and + <literal>dbb-cli</literal> (a CLI tool), are available through the + <literal>digitalbitbox</literal> package which could be installed + as follows: + + <programlisting> + environment.systemPackages = [ + pkgs.digitalbitbox + ]; + </programlisting> + </para> + </section> + + + <section xml:id="sec-digitalbitbox-hardware-module"> + <title>Hardware</title> + + <para> + The digitalbitbox hardware package enables the udev rules for + Digital Bitbox devices and may be installed as follows: + + <programlisting> + hardware.digitalbitbox.enable = true; + </programlisting> + </para> + + <para> + In order to alter the udev rules, one may provide different values for + the <literal>udevRule51</literal> and <literal>udevRule52</literal> + attributes by means of overriding as follows: + + <programlisting> + programs.digitalbitbox = { + enable = true; + package = pkgs.digitalbitbox.override { + udevRule51 = "something else"; + }; + }; + </programlisting> + </para> + </section> +</chapter> |