diff options
author | DS <commits@sidhion.com> | 2024-03-01 03:03:42 -0800 |
---|---|---|
committer | DS <commits@sidhion.com> | 2024-03-04 22:22:14 -0800 |
commit | 1d85557b5025a67d94d31c3c0508253c26b90f07 (patch) | |
tree | 6b81c644041e6aa8292946b2516fad815aaea4bf /doc/build-helpers/images | |
parent | f7fca9d98b0ec282f4b0d63f1fc2e38caf4ea55a (diff) |
snapTools: remove
`snapTools.makeSnap` has produced broken snaps since at least Oct 2020, as indicated by the following issue: https://github.com/NixOS/nixpkgs/issues/100618 No person has shown interest in maintaining it, and given that there is no fix available, it's assumed that all attempts made to fix that function have not succeeded. Given that `snapTools` only contained `makeSnap`, it was removed completely.
Diffstat (limited to 'doc/build-helpers/images')
-rw-r--r-- | doc/build-helpers/images/snaptools.section.md | 71 |
1 files changed, 0 insertions, 71 deletions
diff --git a/doc/build-helpers/images/snaptools.section.md b/doc/build-helpers/images/snaptools.section.md deleted file mode 100644 index 259fa1b061808..0000000000000 --- a/doc/build-helpers/images/snaptools.section.md +++ /dev/null @@ -1,71 +0,0 @@ -# pkgs.snapTools {#sec-pkgs-snapTools} - -`pkgs.snapTools` is a set of functions for creating Snapcraft images. Snap and Snapcraft is not used to perform these operations. - -## The makeSnap Function {#ssec-pkgs-snapTools-makeSnap-signature} - -`makeSnap` takes a single named argument, `meta`. This argument mirrors [the upstream `snap.yaml` format](https://docs.snapcraft.io/snap-format) exactly. - -The `base` should not be specified, as `makeSnap` will force set it. - -Currently, `makeSnap` does not support creating GUI stubs. - -## Build a Hello World Snap {#ssec-pkgs-snapTools-build-a-snap-hello} - -The following expression packages GNU Hello as a Snapcraft snap. - -``` {#ex-snapTools-buildSnap-hello .nix} -let - inherit (import <nixpkgs> { }) snapTools hello; -in snapTools.makeSnap { - meta = { - name = "hello"; - summary = hello.meta.description; - description = hello.meta.longDescription; - architectures = [ "amd64" ]; - confinement = "strict"; - apps.hello.command = "${hello}/bin/hello"; - }; -} -``` - -`nix-build` this expression and install it with `snap install ./result --dangerous`. `hello` will now be the Snapcraft version of the package. - -## Build a Graphical Snap {#ssec-pkgs-snapTools-build-a-snap-firefox} - -Graphical programs require many more integrations with the host. This example uses Firefox as an example because it is one of the most complicated programs we could package. - -``` {#ex-snapTools-buildSnap-firefox .nix} -let - inherit (import <nixpkgs> { }) snapTools firefox; -in snapTools.makeSnap { - meta = { - name = "nix-example-firefox"; - summary = firefox.meta.description; - architectures = [ "amd64" ]; - apps.nix-example-firefox = { - command = "${firefox}/bin/firefox"; - plugs = [ - "pulseaudio" - "camera" - "browser-support" - "avahi-observe" - "cups-control" - "desktop" - "desktop-legacy" - "gsettings" - "home" - "network" - "mount-observe" - "removable-media" - "x11" - ]; - }; - confinement = "strict"; - }; -} -``` - -`nix-build` this expression and install it with `snap install ./result --dangerous`. `nix-example-firefox` will now be the Snapcraft version of the Firefox package. - -The specific meaning behind plugs can be looked up in the [Snapcraft interface documentation](https://docs.snapcraft.io/supported-interfaces). |