Pidgin: Difference between revisions

From NixOS Wiki
imported>Castilma
m use syntaxhighlight
imported>Castilma
Include the solution from the old wiki.
Line 2: Line 2:
<code>nix-env -iA nixos.pidginotr</code>
<code>nix-env -iA nixos.pidginotr</code>
does not work. The plugin doesn't appear in the plugin list.
does not work. The plugin doesn't appear in the plugin list.
To use it, you need to make a [https://nixos.org/nixpkgs/manual/#sec-modify-via-packageOverrides packageOverride].
To use it, you need to make a [https://nixos.org/nixpkgs/manual/#sec-modify-via-packageOverrides packageOverride].
There are two ways to do it.


Put this into <code>~/.config/nixpkgs/config.nix</code>:
== User local change ==
To make a change that only affects the current user, do this:


1. Put this into <code>~/.config/nixpkgs/config.nix</code>:
<syntaxhighlight lang=nix>
<syntaxhighlight lang=nix>
{
{
Line 16: Line 18:
</syntaxhighlight>
</syntaxhighlight>


Then you can install pidgin with  
2. Install pidgin with <code>nix-env -iA nixos.pidgin-with-plugins</code>.
<code>nix-env -iA nixos.pidgin-with-plugins</code>. This install will have the OTR plugin available.
 
== System wide change ==
This solution fixes it for all users.
 
1. extend systemPackages with the pidgin-with-plugins software:
<syntaxhighlight lang=nix>
environment.systemPackages = with pkgs; [
  pidgin-with-plugins
];
</syntaxhighlight>
 
2. afterwards you need to override the plugins directive with pidginotr like this:
<syntaxhighlight lang=nix>
nixpkgs.config = {
  allowUnfree = true;
  packageOverrides = pkgs: with pkgs; {
    pidgin-with-plugins = pkgs.pidgin-with-plugins.override {
      plugins = [ pidginotr ];
    };
  };
};
</syntaxhighlight>
 
<b>Note:</b> In order to affect your system by your nix-language-specific changes you have to evaluate it, run (as root):
<code>nixos-rebuild switch</code>
 
 
 
 




[[Category:Guide]]
[[Category:Guide]]

Revision as of 14:28, 22 October 2017

If you want to use pidgin with the OTR plugin, you will find out, that installing the plugin with nix-env -iA nixos.pidginotr does not work. The plugin doesn't appear in the plugin list. To use it, you need to make a packageOverride. There are two ways to do it.

User local change

To make a change that only affects the current user, do this:

1. Put this into ~/.config/nixpkgs/config.nix:

{
  packageOverrides = pkgs: rec {
   pidgin-with-plugins  = pkgs.pidgin-with-plugins.override {
        plugins = [ pkgs.pidginotr ];};
  };
}

2. Install pidgin with nix-env -iA nixos.pidgin-with-plugins.

System wide change

This solution fixes it for all users.

1. extend systemPackages with the pidgin-with-plugins software:

environment.systemPackages = with pkgs; [
  pidgin-with-plugins
];

2. afterwards you need to override the plugins directive with pidginotr like this:

nixpkgs.config = {
  allowUnfree = true;
  packageOverrides = pkgs: with pkgs; {
    pidgin-with-plugins = pkgs.pidgin-with-plugins.override {
      plugins = [ pidginotr ];
    };
  };
};

Note: In order to affect your system by your nix-language-specific changes you have to evaluate it, run (as root): nixos-rebuild switch