Pidgin: Difference between revisions
imported>Castilma Include the solution from the old wiki. |
Beginning added and Category:Applications |
||
(5 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
Pidgin is a multi-protocol messaging client. | |||
[https://pidgin.im/ Pidgin] is available in NixOS, as are many popular plugins such as pidgin-otr. | |||
==Installing plugins== | |||
<syntaxhighlight lang=nix> | NixOS provides Pidgin plugins as packages such as <tt>pidginotr</tt>, but installing them via <tt>nix-env</tt> or <tt>environment.systemPackages</tt> will not work. The plugin packages must be configured as part of the <tt>pidgin-with-plugins</tt> package via a package override. | ||
===User-scope installation=== | |||
To install Pidgin with desired plugins only for the current user: | |||
# In <code>~/.config/nixpkgs/config.nix</code>, add: <syntaxhighlight lang=nix>{ | |||
... | |||
packageOverrides = pkgs: rec { | packageOverrides = pkgs: rec { | ||
pidgin-with-plugins = pkgs.pidgin.override { | |||
## Add whatever plugins are desired (see nixos.org package listing). | |||
plugins = [ pkgs.pidgin-otr ]; | |||
}; | |||
}; | }; | ||
} | ... | ||
</syntaxhighlight> | }</syntaxhighlight> | ||
# Install pidgin with <code>nix-env -iA nixos.pidgin-with-plugins</code> | |||
== System | ===System-scope installation=== | ||
To install Pidgin with desired plugins for all users on the system: | |||
# Amend <tt>/etc/nixos/configuration.nix</tt> to add <tt>pidgin-with-plugins</tt> to <tt>systemPackages</tt>: <syntaxhighlight lang=nix>{ | |||
<syntaxhighlight lang=nix> | ... | ||
environment.systemPackages = with pkgs; [ | environment.systemPackages = with pkgs; [ | ||
pidgin-with-plugins | |||
]; | ]; | ||
</syntaxhighlight> | ... | ||
}</syntaxhighlight> | |||
# Override <tt>pidgin-with-plugins</tt> to add the desired plugins: <syntaxhighlight lang=nix>{ | |||
<syntaxhighlight lang=nix> | ... | ||
nixpkgs.config = { | nixpkgs.config = { | ||
allowUnfree = true; | |||
packageOverrides = pkgs: with pkgs; { | |||
pidgin-with-plugins = pkgs.pidgin.override { | |||
## Add whatever plugins are desired (see nixos.org package listing). | |||
plugins = [ pidgin-otr ]; | |||
}; | |||
}; | }; | ||
}; | }; | ||
} | ... | ||
</syntaxhighlight> | }</syntaxhighlight> | ||
# Run <tt>nixos-rebuild switch</tt> as root to apply changes. | |||
< | |||
[[Category: | [[Category:Applications]] |
Latest revision as of 20:09, 19 April 2024
Pidgin is a multi-protocol messaging client.
Pidgin is available in NixOS, as are many popular plugins such as pidgin-otr.
Installing plugins
NixOS provides Pidgin plugins as packages such as pidginotr, but installing them via nix-env or environment.systemPackages will not work. The plugin packages must be configured as part of the pidgin-with-plugins package via a package override.
User-scope installation
To install Pidgin with desired plugins only for the current user:
- In
~/.config/nixpkgs/config.nix
, add:{ ... packageOverrides = pkgs: rec { pidgin-with-plugins = pkgs.pidgin.override { ## Add whatever plugins are desired (see nixos.org package listing). plugins = [ pkgs.pidgin-otr ]; }; }; ... }
- Install pidgin with
nix-env -iA nixos.pidgin-with-plugins
System-scope installation
To install Pidgin with desired plugins for all users on the system:
- Amend /etc/nixos/configuration.nix to add pidgin-with-plugins to systemPackages:
{ ... environment.systemPackages = with pkgs; [ pidgin-with-plugins ]; ... }
- Override pidgin-with-plugins to add the desired plugins:
{ ... nixpkgs.config = { allowUnfree = true; packageOverrides = pkgs: with pkgs; { pidgin-with-plugins = pkgs.pidgin.override { ## Add whatever plugins are desired (see nixos.org package listing). plugins = [ pidgin-otr ]; }; }; }; ... }
- Run nixos-rebuild switch as root to apply changes.