Skip to content

Getting Started

Installation

Wire can be heavy to compile. You should enable the substituter wires.cachix.org.

nix
{
  nix.settings = {
    substituters = [
      "https://wires.cachix.org"
      # ...
    ];
    trusted-public-keys = [
      "wires.cachix.org-1:7XQoG91Bh+Aj01mAJi77Ui5AYyM1uEyV0h1wOomqjpk="
      # ...
    ];
  };
}
conf
substituters = https://wires.cachix.org
trusted-public-keys = wires.cachix.org-1:7XQoG91Bh+Aj01mAJi77Ui5AYyM1uEyV0h1wOomqjpk=

NixOS / Home Manager

nix
{
  inputs = {
    # ...
    nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
    wire.url = "github:wires-org/wire"; 
  };

  outputs = inputs @ {
    # ...
    nixpkgs,
    wire,
    ...
  }: {
    nixosConfigurations.my-system = nixpkgs.lib.nixosSystem {
      system = "x86_64-linux";
      specialArgs = {inherit inputs;};
      modules = [
        # ...
        (
          {system, ...}: {
            environment.systemPackages = [
              wire.packages.${system}.wire
            ];
          }
        )
      ];
    };
  };
}
nix
{
  inputs = {
    # ...
    nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
    home-manager = {
      url = "github:nix-community/home-manager";
      inputs.nixpkgs.follows = "nixpkgs";
    };
    wire.url = "github:wires-org/wire"; 
  };

  outputs = {
    # ...
    nixpkgs,
    home-manager,
    wire,
    ...
  }: let
    system = "x86_64-linux";
    pkgs = nixpkgs.legacyPackages.${system};
  in {
    homeConfigurations.my-user = home-manager.lib.homeManagerConfiguration {
      inherit pkgs;
      modules = [
        # ...
        {
          home.packages = [
            wire.packages.${system}.wire
          ];
        }
      ];
    };
  };
}
nix
{system, ...}: let
  wire = import ( 
    builtins.fetchTarball "https://github.com/wires-org/wire/archive/refs/heads/main.tar.gz"
  ); 
in {
  environment.systemPackages = [
    wire.packages.${system}.wire
  ];

  # ...
}
nix
{system, ...}: let
  wire = import ( 
    builtins.fetchTarball "https://github.com/wires-org/wire/archive/refs/heads/main.tar.gz"
  ); 
in {
  home.packages = [
    wire.packages.${system}.wire
  ];

  # ...
}