diff options
Diffstat (limited to 'doc/package-notes.xml')
-rw-r--r-- | doc/package-notes.xml | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/doc/package-notes.xml b/doc/package-notes.xml index 7b8657fb4a13b..d8f55ef0a8568 100644 --- a/doc/package-notes.xml +++ b/doc/package-notes.xml @@ -671,6 +671,8 @@ overrides = self: super: rec { plugins = with availablePlugins; [ python perl ]; } }</programlisting> + If the <literal>configure</literal> function returns an attrset without the <literal>plugins</literal> + attribute, <literal>availablePlugins</literal> will be used automatically. </para> <para> @@ -704,6 +706,55 @@ overrides = self: super: rec { }; } </programlisting> </para> + <para> + WeeChat allows to set defaults on startup using the <literal>--run-command</literal>. + The <literal>configure</literal> method can be used to pass commands to the program: +<programlisting>weechat.override { + configure = { availablePlugins, ... }: { + init = '' + /set foo bar + /server add freenode chat.freenode.org + ''; + }; +}</programlisting> + Further values can be added to the list of commands when running + <literal>weechat --run-command "your-commands"</literal>. + </para> + <para> + Additionally it's possible to specify scripts to be loaded when starting <literal>weechat</literal>. + These will be loaded before the commands from <literal>init</literal>: +<programlisting>weechat.override { + configure = { availablePlugins, ... }: { + scripts = with pkgs.weechatScripts; [ + weechat-xmpp weechat-matrix-bridge wee-slack + ]; + init = '' + /set plugins.var.python.jabber.key "val" + '': + }; +}</programlisting> + </para> + <para> + In <literal>nixpkgs</literal> there's a subpackage which contains derivations for + WeeChat scripts. Such derivations expect a <literal>passthru.scripts</literal> attribute + which contains a list of all scripts inside the store path. Furthermore all scripts + have to live in <literal>$out/share</literal>. An exemplary derivation looks like this: +<programlisting>{ stdenv, fetchurl }: + +stdenv.mkDerivation { + name = "exemplary-weechat-script"; + src = fetchurl { + url = "https://scripts.tld/your-scripts.tar.gz"; + sha256 = "..."; + }; + passthru.scripts = [ "foo.py" "bar.lua" ]; + installPhase = '' + mkdir $out/share + cp foo.py $out/share + cp bar.lua $out/share + ''; +}</programlisting> + </para> </section> <section xml:id="sec-citrix"> <title>Citrix Receiver</title> @@ -763,4 +814,64 @@ citrix_receiver.override { </para> </section> </section> + <section xml:id="sec-ibus-typing-booster"> + <title>ibus-engines.typing-booster</title> + + <para>This package is an ibus-based completion method to speed up typing.</para> + + <section xml:id="sec-ibus-typing-booster-activate"> + <title>Activating the engine</title> + + <para> + IBus needs to be configured accordingly to activate <literal>typing-booster</literal>. The configuration + depends on the desktop manager in use. For detailed instructions, please refer to the + <link xlink:href="https://mike-fabian.github.io/ibus-typing-booster/documentation.html">upstream docs</link>. + </para> + <para> + On NixOS you need to explicitly enable <literal>ibus</literal> with given engines + before customizing your desktop to use <literal>typing-booster</literal>. This can be achieved + using the <literal>ibus</literal> module: +<programlisting>{ pkgs, ... }: { + i18n.inputMethod = { + enabled = "ibus"; + ibus.engines = with pkgs.ibus-engines; [ typing-booster ]; + }; +}</programlisting> + </para> + </section> + + <section xml:id="sec-ibus-typing-booster-customize-hunspell"> + <title>Using custom hunspell dictionaries</title> + + <para> + The IBus engine is based on <literal>hunspell</literal> to support completion in many languages. + By default the dictionaries <literal>de-de</literal>, <literal>en-us</literal>, <literal>es-es</literal>, + <literal>it-it</literal>, <literal>sv-se</literal> and <literal>sv-fi</literal> + are in use. To add another dictionary, the package can be overridden like this: +<programlisting>ibus-engines.typing-booster.override { + langs = [ "de-at" "en-gb" ]; +}</programlisting> + </para> + <para> + <emphasis>Note: each language passed to <literal>langs</literal> must be an attribute name in + <literal>pkgs.hunspellDicts</literal>.</emphasis> + </para> + </section> + + <section xml:id="sec-ibus-typing-booster-emoji-picker"> + <title>Built-in emoji picker</title> + + <para> + The <literal>ibus-engines.typing-booster</literal> package contains a program + named <literal>emoji-picker</literal>. To display all emojis correctly, + a special font such as <literal>noto-fonts-emoji</literal> is needed: + </para> + <para> + On NixOS it can be installed using the following expression: +<programlisting>{ pkgs, ... }: { + fonts.fonts = with pkgs; [ noto-fonts-emoji ]; +}</programlisting> + </para> + </section> + </section> </chapter> |