Merge staging into staging-next
This commit is contained in:
commit
68a6c04783
|
@ -30,7 +30,7 @@
|
|||
<section xml:id="sec-cross-packaging">
|
||||
<title>Packaging in a cross-friendly manner</title>
|
||||
|
||||
<section>
|
||||
<section xml:id="sec-cross-platform-parameters">
|
||||
<title>Platform parameters</title>
|
||||
|
||||
<para>
|
||||
|
@ -219,7 +219,7 @@
|
|||
</variablelist>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="sec-cross-specifying-dependencies">
|
||||
<title>Specifying Dependencies</title>
|
||||
|
||||
<para>
|
||||
|
@ -304,7 +304,7 @@
|
|||
</note>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="sec-cross-cookbook">
|
||||
<title>Cross packaging cookbook</title>
|
||||
|
||||
<para>
|
||||
|
@ -317,7 +317,7 @@
|
|||
</para>
|
||||
|
||||
<qandaset>
|
||||
<qandaentry>
|
||||
<qandaentry xml:id="cross-qa-build-c-program-in-build-environment">
|
||||
<question>
|
||||
<para>
|
||||
What if my package's build system needs to build a C program to be run
|
||||
|
@ -331,7 +331,7 @@
|
|||
</para>
|
||||
</answer>
|
||||
</qandaentry>
|
||||
<qandaentry>
|
||||
<qandaentry xml:id="cross-qa-fails-to-find-ar">
|
||||
<question>
|
||||
<para>
|
||||
My package fails to find <command>ar</command>.
|
||||
|
@ -347,7 +347,7 @@
|
|||
</para>
|
||||
</answer>
|
||||
</qandaentry>
|
||||
<qandaentry>
|
||||
<qandaentry xml:id="cross-testsuite-runs-host-code">
|
||||
<question>
|
||||
<para>
|
||||
My package's testsuite needs to run host platform code.
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
under attribute <varname>texlive</varname>.
|
||||
</para>
|
||||
|
||||
<section>
|
||||
<section xml:id="sec-language-texlive-users-guide">
|
||||
<title>User's guide</title>
|
||||
|
||||
<itemizedlist>
|
||||
|
@ -68,7 +68,7 @@ nix-repl> texlive.collection-<TAB>
|
|||
</itemizedlist>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="sec-language-texlive-known-problems">
|
||||
<title>Known problems</title>
|
||||
|
||||
<itemizedlist>
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xml:id="chap-multiple-output">
|
||||
<title>Multiple-output packages</title>
|
||||
<section>
|
||||
<section xml:id="sec-multiple-outputs-introduction">
|
||||
<title>Introduction</title>
|
||||
|
||||
<para>
|
||||
|
@ -38,7 +38,7 @@
|
|||
</para>
|
||||
</note>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="sec-multiple-outputs-installing">
|
||||
<title>Installing a split package</title>
|
||||
|
||||
<para>
|
||||
|
@ -84,7 +84,7 @@
|
|||
</listitem>
|
||||
</itemizedlist>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="sec-multiple-outputs-using-split-packages">
|
||||
<title>Using a split package</title>
|
||||
|
||||
<para>
|
||||
|
@ -102,7 +102,7 @@
|
|||
also added. (See <xref linkend="multiple-output-file-type-groups" />.)
|
||||
</para>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="sec-multiple-outputs-">
|
||||
<title>Writing a split derivation</title>
|
||||
|
||||
<para>
|
||||
|
@ -283,7 +283,7 @@
|
|||
</variablelist>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="sec-multiple-outputs-caveats">
|
||||
<title>Common caveats</title>
|
||||
|
||||
<itemizedlist>
|
||||
|
|
|
@ -181,7 +181,7 @@ $ cat $(PRINT_PATH=1 nix-prefetch-url $i | tail -n 1) \
|
|||
</section>
|
||||
<!--============================================================-->
|
||||
<!--
|
||||
<section>
|
||||
<section xml:id="sec-package-notes-gnome">
|
||||
<title>Gnome</title>
|
||||
<para>* Expression is auto-generated</para>
|
||||
<para>* How to update</para>
|
||||
|
@ -189,7 +189,7 @@ $ cat $(PRINT_PATH=1 nix-prefetch-url $i | tail -n 1) \
|
|||
-->
|
||||
<!--============================================================-->
|
||||
<!--
|
||||
<section>
|
||||
<section xml:id="sec-package-notes-gcc">
|
||||
<title>GCC</title>
|
||||
<para>…</para>
|
||||
</section>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<article xmlns="http://docbook.org/ns/docbook"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<title>Nixpkgs Release Notes</title>
|
||||
<section>
|
||||
<section xml:id="release-notes-0.14">
|
||||
<title>Release 0.14 (June 4, 2012)</title>
|
||||
|
||||
<para>
|
||||
|
@ -17,7 +17,7 @@
|
|||
packages by numerous contributors. For details, see the commit logs.
|
||||
</para>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="release-notes-0.13">
|
||||
<title>Release 0.13 (February 5, 2010)</title>
|
||||
|
||||
<para>
|
||||
|
@ -51,7 +51,7 @@
|
|||
</itemizedlist>
|
||||
</para>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="release-notes-0.12">
|
||||
<title>Release 0.12 (April 24, 2009)</title>
|
||||
|
||||
<para>
|
||||
|
@ -145,7 +145,7 @@
|
|||
<literal>nix-dev</literal> mailing list.
|
||||
</para>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="release-notes-0.11">
|
||||
<title>Release 0.11 (September 11, 2007)</title>
|
||||
|
||||
<para>
|
||||
|
@ -344,7 +344,7 @@ export NIX_MIRRORS_sourceforge=http://osdn.dl.sourceforge.net/sourceforge/</prog
|
|||
Bravenboer, Michael Raskin, Wouter den Breejen and Yury G. Kudryashov.
|
||||
</para>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="release-notes-0.10">
|
||||
<title>Release 0.10 (October 12, 2006)</title>
|
||||
|
||||
<note>
|
||||
|
@ -547,7 +547,7 @@ stdenv.mkDerivation {
|
|||
Bravenboer, Merijn de Jonge, Rob Vermaas and Roy van den Broek.
|
||||
</para>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="release-notes-0.9">
|
||||
<title>Release 0.9 (January 31, 2006)</title>
|
||||
|
||||
<para>
|
||||
|
@ -676,7 +676,7 @@ stdenv.mkDerivation {
|
|||
Martin Bravenboer, Rob Vermaas and Roy van den Broek.
|
||||
</para>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="release-notes-0.8">
|
||||
<title>Release 0.8 (April 11, 2005)</title>
|
||||
|
||||
<para>
|
||||
|
@ -700,7 +700,7 @@ stdenv.mkDerivation {
|
|||
</itemizedlist>
|
||||
</para>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="release-notes-0.7">
|
||||
<title>Release 0.7 (March 14, 2005)</title>
|
||||
|
||||
<itemizedlist>
|
||||
|
|
|
@ -56,7 +56,7 @@
|
|||
meant as examples. Their usage is optional and the reviewer is free to adapt
|
||||
them to their liking.
|
||||
</para>
|
||||
<section>
|
||||
<section xml:id="reviewing-contributions-package-updates">
|
||||
<title>Package updates</title>
|
||||
|
||||
<para>
|
||||
|
@ -208,7 +208,7 @@ $ nix-shell -p nox --run "nox-review -k pr PRNUMBER"
|
|||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<example>
|
||||
<example xml:id="reviewing-contributions-sample-package-update">
|
||||
<title>Sample template for a package update review</title>
|
||||
<screen>
|
||||
##### Reviewed points
|
||||
|
@ -226,7 +226,7 @@ $ nix-shell -p nox --run "nox-review -k pr PRNUMBER"
|
|||
</screen>
|
||||
</example>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="reviewing-contributions-new-packages">
|
||||
<title>New packages</title>
|
||||
|
||||
<para>
|
||||
|
@ -320,7 +320,7 @@ $ nix-shell -p nox --run "nox-review -k pr PRNUMBER"
|
|||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<example>
|
||||
<example xml:id="reviewing-contributions-sample-new-package">
|
||||
<title>Sample template for a new package review</title>
|
||||
<screen>
|
||||
##### Reviewed points
|
||||
|
@ -346,7 +346,7 @@ $ nix-shell -p nox --run "nox-review -k pr PRNUMBER"
|
|||
</screen>
|
||||
</example>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="reviewing-contributions-module-updates">
|
||||
<title>Module updates</title>
|
||||
|
||||
<para>
|
||||
|
@ -443,7 +443,7 @@ $ nix-shell -p nox --run "nox-review -k pr PRNUMBER"
|
|||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<example>
|
||||
<example xml:id="reviewing-contributions-sample-module-update">
|
||||
<title>Sample template for a module update review</title>
|
||||
<screen>
|
||||
##### Reviewed points
|
||||
|
@ -464,7 +464,7 @@ $ nix-shell -p nox --run "nox-review -k pr PRNUMBER"
|
|||
</screen>
|
||||
</example>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="reviewing-contributions-new-modules">
|
||||
<title>New modules</title>
|
||||
|
||||
<para>
|
||||
|
@ -542,7 +542,7 @@ $ nix-shell -p nox --run "nox-review -k pr PRNUMBER"
|
|||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<example>
|
||||
<example xml:id="reviewing-contributions-sample-new-module">
|
||||
<title>Sample template for a new module review</title>
|
||||
<screen>
|
||||
##### Reviewed points
|
||||
|
@ -564,7 +564,7 @@ $ nix-shell -p nox --run "nox-review -k pr PRNUMBER"
|
|||
</screen>
|
||||
</example>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="reviewing-contributions-other-submissions">
|
||||
<title>Other submissions</title>
|
||||
|
||||
<para>
|
||||
|
@ -585,7 +585,7 @@ $ nix-shell -p nox --run "nox-review -k pr PRNUMBER"
|
|||
pull requests fitting this category.
|
||||
</para>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="reviewing-contributions--merging-pull-requests">
|
||||
<title>Merging pull-requests</title>
|
||||
|
||||
<para>
|
||||
|
|
|
@ -212,7 +212,7 @@ genericBuild
|
|||
platforms relative to the new derivation's, and whether they are propagated.
|
||||
The platform distinctions are motivated by cross compilation; see
|
||||
<xref linkend="chap-cross"/> for exactly what each platform means.
|
||||
<footnote>
|
||||
<footnote xml:id="footnote-stdenv-ignored-build-platform">
|
||||
<para>
|
||||
The build platform is ignored because it is a mere implementation detail
|
||||
of the package satisfying the dependency: As a general programming
|
||||
|
@ -233,7 +233,7 @@ genericBuild
|
|||
out only for dependencies whose host platform matches the new derivation's
|
||||
build platform–i.e. which run on the platform where the new derivation
|
||||
will be built.
|
||||
<footnote>
|
||||
<footnote xml:id="footnote-stdenv-native-dependencies-in-path">
|
||||
<para>
|
||||
Currently, that means for native builds all dependencies are put on the
|
||||
<envar>PATH</envar>. But in the future that may not be the case for sake
|
||||
|
@ -280,7 +280,7 @@ genericBuild
|
|||
<link xlink:href="https://en.wikipedia.org/wiki/Natural_deduction">Natural
|
||||
Deduction</link> using the inference rules. This probably seems a bit
|
||||
obtuse, but so is the bash code that actually implements it!
|
||||
<footnote>
|
||||
<footnote xml:id="footnote-stdenv-find-inputs-location">
|
||||
<para>
|
||||
The <function>findInputs</function> function, currently residing in
|
||||
<filename>pkgs/stdenv/generic/setup.sh</filename>, implements the
|
||||
|
@ -1112,7 +1112,7 @@ passthru = {
|
|||
By default, the configure phase applies some special hackery to all
|
||||
files called <filename>ltmain.sh</filename> before running the configure
|
||||
script in order to improve the purity of Libtool-based packages
|
||||
<footnote>
|
||||
<footnote xml:id="footnote-stdenv-sys-lib-search-path">
|
||||
<para>
|
||||
It clears the
|
||||
<varname>sys_lib_<replaceable>*</replaceable>search_path</varname>
|
||||
|
@ -1151,7 +1151,7 @@ passthru = {
|
|||
or a subset to control exactly which platform flags are passed.
|
||||
Compilers and other tools should use this to also pass the target
|
||||
platform, for example.
|
||||
<footnote>
|
||||
<footnote xml:id="footnote-stdenv-build-time-guessing-impurity">
|
||||
<para>
|
||||
Eventually these will be passed when in native builds too, to improve
|
||||
determinism: build-time guessing, as is done today, is a risk of
|
||||
|
@ -1732,7 +1732,7 @@ set debug-file-directory ~/.nix-profile/lib/debug
|
|||
Controls whether the installCheck phase is executed. By default it is
|
||||
skipped, but if <varname>doInstallCheck</varname> is set to true, the
|
||||
installCheck phase is usually executed. Thus you should set
|
||||
<programlisting>doInstallCheck = true;</programlisting>
|
||||
<programlisting>doInstallCheck = true;</programlisting>
|
||||
in the derivation to enable install checks. The exception is cross
|
||||
compilation. Cross compiled builds never run tests, no matter how
|
||||
<varname>doInstallCheck</varname> is set, as the newly-built program
|
||||
|
@ -2213,7 +2213,7 @@ addEnvHooks "$hostOffset" myBashFunction
|
|||
<command>clang</command> is to be used. Secondly, this helps packages
|
||||
not get confused when cross-compiling, in which case multiple Bintools
|
||||
Wrappers may simultaneously be in use.
|
||||
<footnote>
|
||||
<footnote xml:id="footnote-stdenv-per-platform-wrapper">
|
||||
<para>
|
||||
Each wrapper targets a single platform, so if binaries for multiple
|
||||
platforms are needed, the underlying binaries must be wrapped multiple
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xml:id="chap-submitting-changes">
|
||||
<title>Submitting changes</title>
|
||||
<section>
|
||||
<section xml:id="submitting-changes-making-patches">
|
||||
<title>Making patches</title>
|
||||
|
||||
<itemizedlist>
|
||||
|
@ -205,7 +205,7 @@ Additional information.
|
|||
</listitem>
|
||||
</itemizedlist>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="submitting-changes-submitting-changes">
|
||||
<title>Submitting changes</title>
|
||||
|
||||
<itemizedlist>
|
||||
|
@ -253,7 +253,7 @@ Additional information.
|
|||
</listitem>
|
||||
</itemizedlist>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="submitting-changes-pull-request-template">
|
||||
<title>Pull Request Template</title>
|
||||
|
||||
<para>
|
||||
|
@ -269,7 +269,7 @@ Additional information.
|
|||
below:
|
||||
</para>
|
||||
|
||||
<section>
|
||||
<section xml:id="submitting-changes-tested-with-sandbox">
|
||||
<title>Tested using sandboxing</title>
|
||||
|
||||
<para>
|
||||
|
@ -322,7 +322,7 @@ Additional information.
|
|||
</para>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="submitting-changes-platform-diversity">
|
||||
<title>Built on platform(s)</title>
|
||||
|
||||
<para>
|
||||
|
@ -334,7 +334,7 @@ Additional information.
|
|||
</para>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="submitting-changes-nixos-tests">
|
||||
<title>Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)</title>
|
||||
|
||||
<para>
|
||||
|
@ -350,7 +350,7 @@ Additional information.
|
|||
</para>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="submitting-changes-tested-compilation">
|
||||
<title>Tested compilation of all pkgs that depend on this change using <command>nox-review</command></title>
|
||||
|
||||
<para>
|
||||
|
@ -373,7 +373,7 @@ Additional information.
|
|||
</para>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="submitting-changes-tested-execution">
|
||||
<title>Tested execution of all binary files (usually in <filename>./result/bin/</filename>)</title>
|
||||
|
||||
<para>
|
||||
|
@ -387,8 +387,8 @@ Additional information.
|
|||
</para>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<title>Meets nixpkgs contribution standards</title>
|
||||
<section xml:id="submitting-changes-contribution-standards">
|
||||
<title>Meets Nixpkgs contribution standards</title>
|
||||
|
||||
<para>
|
||||
The last checkbox is fits
|
||||
|
@ -402,7 +402,7 @@ Additional information.
|
|||
</para>
|
||||
</section>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="submitting-changes-hotfixing-pull-requests">
|
||||
<title>Hotfixing pull requests</title>
|
||||
|
||||
<itemizedlist>
|
||||
|
@ -430,7 +430,7 @@ Additional information.
|
|||
</listitem>
|
||||
</itemizedlist>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="submitting-changes-commit-policy">
|
||||
<title>Commit policy</title>
|
||||
|
||||
<itemizedlist>
|
||||
|
@ -456,7 +456,7 @@ Additional information.
|
|||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<section>
|
||||
<section xml:id="submitting-changes-master-branch">
|
||||
<title>Master branch</title>
|
||||
|
||||
<itemizedlist>
|
||||
|
@ -468,7 +468,7 @@ Additional information.
|
|||
</itemizedlist>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="submitting-changes-staging-branch">
|
||||
<title>Staging branch</title>
|
||||
|
||||
<itemizedlist>
|
||||
|
@ -493,7 +493,7 @@ Additional information.
|
|||
</itemizedlist>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="submitting-changes-stable-release-branches">
|
||||
<title>Stable release branches</title>
|
||||
|
||||
<itemizedlist>
|
||||
|
|
|
@ -1570,6 +1570,11 @@
|
|||
github = "grburst";
|
||||
name = "Julius Elias";
|
||||
};
|
||||
greydot = {
|
||||
email = "lanablack@amok.cc";
|
||||
github = "greydot";
|
||||
name = "Lana Black";
|
||||
};
|
||||
gridaphobe = {
|
||||
email = "eric@seidel.io";
|
||||
github = "gridaphobe";
|
||||
|
|
|
@ -11,7 +11,7 @@ manual-combined.xml: generated *.xml
|
|||
|
||||
.PHONY: format
|
||||
format:
|
||||
find . -iname '*.xml' -type f -print0 | xargs -0 -I{} -n1 \
|
||||
find ../../ -iname '*.xml' -type f -print0 | xargs -0 -I{} -n1 \
|
||||
xmlformat --config-file "../xmlformat.conf" -i {}
|
||||
|
||||
.PHONY: fix-misc-xml
|
||||
|
|
|
@ -66,14 +66,15 @@ nixpkgs.config.packageOverrides = pkgs:
|
|||
sets the kernel’s TCP keepalive time to 120 seconds. To see the available
|
||||
parameters, run <command>sysctl -a</command>.
|
||||
</para>
|
||||
<section>
|
||||
<section xml:id="sec-linux-config-customizing">
|
||||
<title>Customize your kernel</title>
|
||||
|
||||
<para>
|
||||
The first step before compiling the kernel is to generate an appropriate
|
||||
<literal>.config</literal> configuration. Either you pass your own config via
|
||||
the <literal>configfile</literal> setting of <literal>linuxManualConfig</literal>:
|
||||
<screen><![CDATA[
|
||||
<literal>.config</literal> configuration. Either you pass your own config
|
||||
via the <literal>configfile</literal> setting of
|
||||
<literal>linuxManualConfig</literal>:
|
||||
<screen><![CDATA[
|
||||
custom-kernel = super.linuxManualConfig {
|
||||
inherit (super) stdenv hostPlatform;
|
||||
inherit (linux_4_9) src;
|
||||
|
@ -117,7 +118,7 @@ You can edit the config with this snippet (by default <command>make menuconfig</
|
|||
]]></screen>
|
||||
</para>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="sec-linux-config-developing-modules">
|
||||
<title>Developing kernel modules</title>
|
||||
|
||||
<para>
|
||||
|
|
|
@ -74,7 +74,7 @@ The unique option `services.httpd.adminAddr' is defined multiple times, in `/etc
|
|||
argument is for: it contains the complete, merged system configuration. That
|
||||
is, <varname>config</varname> is the result of combining the configurations
|
||||
returned by every module
|
||||
<footnote>
|
||||
<footnote xml:id="footnote-nix-is-lazy">
|
||||
<para>
|
||||
If you’re wondering how it’s possible that the (indirect)
|
||||
<emphasis>result</emphasis> of a function is passed as an
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
NixOS module system.
|
||||
</para>
|
||||
|
||||
<section>
|
||||
<section xml:id="sec-assertions-warnings">
|
||||
<title>Warnings</title>
|
||||
|
||||
<para>
|
||||
|
@ -44,7 +44,7 @@
|
|||
</programlisting>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="sec-assertions-assertions">
|
||||
<title>Assertions</title>
|
||||
|
||||
<para>
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
value definitions.
|
||||
</para>
|
||||
|
||||
<section>
|
||||
<section xml:id="sec-option-types-basic">
|
||||
<title>Basic Types</title>
|
||||
|
||||
<para>
|
||||
|
@ -196,7 +196,7 @@
|
|||
</variablelist>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="sec-option-types-value">
|
||||
<title>Value Types</title>
|
||||
|
||||
<para>
|
||||
|
@ -257,7 +257,7 @@
|
|||
</variablelist>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="sec-option-types-composed">
|
||||
<title>Composed Types</title>
|
||||
|
||||
<para>
|
||||
|
@ -483,7 +483,7 @@ config.mod.two = { foo = 2; bar = "two"; };</screen>
|
|||
</example>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="sec-option-types-extending">
|
||||
<title>Extending types</title>
|
||||
|
||||
<para>
|
||||
|
@ -543,14 +543,14 @@ nixThings = mkOption {
|
|||
</variablelist>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="sec-option-types-custom">
|
||||
<title>Custom Types</title>
|
||||
|
||||
<para>
|
||||
Custom types can be created with the <literal>mkOptionType</literal>
|
||||
function. As type creation includes some more complex topics such as
|
||||
submodule handling, it is recommended to get familiar with
|
||||
<filename
|
||||
<filename
|
||||
xlink:href="https://github.com/NixOS/nixpkgs/blob/master/lib/types.nix">types.nix</filename>
|
||||
code before creating a new type.
|
||||
</para>
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
sources and presenting it in an accessible style would be a worthy
|
||||
contribution to the project.
|
||||
</para>
|
||||
<section>
|
||||
<section xml:id="sec-writing-docs-building-the-manual">
|
||||
<title>Building the Manual</title>
|
||||
|
||||
<para>
|
||||
|
@ -42,7 +42,7 @@
|
|||
<filename>./result/share/doc/nixos/index.html</filename>.
|
||||
</para>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="sec-writing-docs-editing-docbook-xml">
|
||||
<title>Editing DocBook XML</title>
|
||||
|
||||
<para>
|
||||
|
@ -76,7 +76,7 @@
|
|||
Issue</link> and someone will handle the conversion to XML for you.
|
||||
</para>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="sec-writing-docs-creating-a-topic">
|
||||
<title>Creating a Topic</title>
|
||||
|
||||
<para>
|
||||
|
@ -128,7 +128,7 @@
|
|||
</itemizedlist>
|
||||
</para>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="sec-writing-docs-adding-a-topic">
|
||||
<title>Adding a Topic to the Book</title>
|
||||
|
||||
<para>
|
||||
|
|
47
nixos/doc/manual/installation/installing-behind-a-proxy.xml
Normal file
47
nixos/doc/manual/installation/installing-behind-a-proxy.xml
Normal file
|
@ -0,0 +1,47 @@
|
|||
<section xmlns="http://docbook.org/ns/docbook"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||
version="5.0"
|
||||
xml:id="sec-installing-behind-proxy">
|
||||
<title>Installing behind a proxy</title>
|
||||
|
||||
<para>
|
||||
To install NixOS behind a proxy, do the following before running
|
||||
<literal>nixos-install</literal>.
|
||||
</para>
|
||||
<orderedlist numeration="arabic">
|
||||
<listitem>
|
||||
<para>
|
||||
Update proxy configuration in
|
||||
<literal>/mnt/etc/nixos/configuration.nix</literal> to keep the
|
||||
internet accessible after reboot.
|
||||
</para>
|
||||
<programlisting>
|
||||
networking.proxy.default = "http://user:password@proxy:port/";
|
||||
networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
||||
</programlisting>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Setup the proxy environment variables in the shell where you are
|
||||
running <literal>nixos-install</literal>.
|
||||
</para>
|
||||
<programlisting>
|
||||
# proxy_url="http://user:password@proxy:port/"
|
||||
# export http_proxy="$proxy_url"
|
||||
# export HTTP_PROXY="$proxy_url"
|
||||
# export https_proxy="$proxy_url"
|
||||
# export HTTPS_PROXY="$proxy_url"
|
||||
</programlisting>
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
|
||||
<note>
|
||||
<para>
|
||||
If you are switching networks with different proxy configurations, use the
|
||||
<literal>nesting.clone</literal> option in
|
||||
<literal>configuration.nix</literal> to switch proxies at runtime.
|
||||
Refer to <xref linkend="ch-options" /> for more information.
|
||||
</para>
|
||||
</note>
|
||||
</section>
|
|
@ -443,4 +443,5 @@ $ nix-env -i w3m</screen>
|
|||
<xi:include href="installing-pxe.xml" />
|
||||
<xi:include href="installing-virtualbox-guest.xml" />
|
||||
<xi:include href="installing-from-other-distro.xml" />
|
||||
<xi:include href="installing-behind-a-proxy.xml" />
|
||||
</chapter>
|
||||
|
|
|
@ -109,7 +109,7 @@ nixos https://nixos.org/channels/nixos-unstable
|
|||
so in that case you will not be able to go back to your original channel.
|
||||
</para>
|
||||
</warning>
|
||||
<section>
|
||||
<section xml:id="sec-upgrading-automatic">
|
||||
<title>Automatic Upgrades</title>
|
||||
|
||||
<para>
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
<subtitle>Version <xi:include href="./generated/version" parse="text" />
|
||||
</subtitle>
|
||||
</info>
|
||||
<preface>
|
||||
<preface xml:id="preface">
|
||||
<title>Preface</title>
|
||||
<para>
|
||||
This manual describes how to install, use and extend NixOS, a Linux
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
|
||||
|
||||
<xsl:template match="/expr/list">
|
||||
<appendix>
|
||||
<appendix xml:id="appendix-configuration-options">
|
||||
<title>Configuration Options</title>
|
||||
<variablelist xml:id="configuration-variable-list">
|
||||
<xsl:for-each select="attrs">
|
||||
|
|
|
@ -91,7 +91,7 @@ $ nix-instantiate -E '(import <nixpkgsunstable> {}).gitFull'
|
|||
<para>
|
||||
When enabled the <literal>iproute2</literal> will copy the files expected
|
||||
by ip route (e.g., <filename>rt_tables</filename>) in
|
||||
<filename>/run/iproute2</filename>. This allows to write aliases for
|
||||
<filename>/etc/iproute2</filename>. This allows to write aliases for
|
||||
routing tables for instance.
|
||||
</para>
|
||||
</listitem>
|
||||
|
@ -521,6 +521,13 @@ inherit (pkgs.nixos {
|
|||
all user units for each authenticated user.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
The default display manager is now LightDM.
|
||||
To use SLiM set <literal>services.xserver.displayManager.slim.enable</literal>
|
||||
to <literal>true</literal>.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</section>
|
||||
</section>
|
||||
|
|
|
@ -4,20 +4,29 @@ with lib;
|
|||
|
||||
let
|
||||
cfg = config.networking.iproute2;
|
||||
confDir = "/run/iproute2";
|
||||
in
|
||||
{
|
||||
options.networking.iproute2.enable = mkEnableOption "copy IP route configuration files";
|
||||
|
||||
config = mkMerge [
|
||||
({ nixpkgs.config.iproute2.confDir = confDir; })
|
||||
|
||||
(mkIf cfg.enable {
|
||||
system.activationScripts.iproute2 = ''
|
||||
cp -R ${pkgs.iproute}/etc/iproute2 ${confDir}
|
||||
chmod -R 664 ${confDir}
|
||||
chmod +x ${confDir}
|
||||
options.networking.iproute2 = {
|
||||
enable = mkEnableOption "copy IP route configuration files";
|
||||
rttablesExtraConfig = mkOption {
|
||||
type = types.lines;
|
||||
default = "";
|
||||
description = ''
|
||||
Verbatim lines to add to /etc/iproute2/rt_tables
|
||||
'';
|
||||
})
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
environment.etc."iproute2/bpf_pinning" = { mode = "0644"; text = fileContents "${pkgs.iproute}/etc/iproute2/bpf_pinning"; };
|
||||
environment.etc."iproute2/ematch_map" = { mode = "0644"; text = fileContents "${pkgs.iproute}/etc/iproute2/ematch_map"; };
|
||||
environment.etc."iproute2/group" = { mode = "0644"; text = fileContents "${pkgs.iproute}/etc/iproute2/group"; };
|
||||
environment.etc."iproute2/nl_protos" = { mode = "0644"; text = fileContents "${pkgs.iproute}/etc/iproute2/nl_protos"; };
|
||||
environment.etc."iproute2/rt_dsfield" = { mode = "0644"; text = fileContents "${pkgs.iproute}/etc/iproute2/rt_dsfield"; };
|
||||
environment.etc."iproute2/rt_protos" = { mode = "0644"; text = fileContents "${pkgs.iproute}/etc/iproute2/rt_protos"; };
|
||||
environment.etc."iproute2/rt_realms" = { mode = "0644"; text = fileContents "${pkgs.iproute}/etc/iproute2/rt_realms"; };
|
||||
environment.etc."iproute2/rt_scopes" = { mode = "0644"; text = fileContents "${pkgs.iproute}/etc/iproute2/rt_scopes"; };
|
||||
environment.etc."iproute2/rt_tables" = { mode = "0644"; text = (fileContents "${pkgs.iproute}/etc/iproute2/rt_tables")
|
||||
+ (optionalString (cfg.rttablesExtraConfig != "") "\n\n${cfg.rttablesExtraConfig}"); };
|
||||
};
|
||||
}
|
||||
|
|
|
@ -13,7 +13,7 @@ let
|
|||
pkgs.attr
|
||||
pkgs.bashInteractive # bash with ncurses support
|
||||
pkgs.bzip2
|
||||
pkgs.coreutils
|
||||
pkgs.coreutils-full
|
||||
pkgs.cpio
|
||||
pkgs.curl
|
||||
pkgs.diffutils
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
bridge.</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<section><title>IBus</title>
|
||||
<section xml:id="module-services-input-methods-ibus"><title>IBus</title>
|
||||
|
||||
<para>IBus is an Intelligent Input Bus. It provides full featured and user
|
||||
friendly input method user interface.</para>
|
||||
|
@ -82,7 +82,7 @@ ibus.engines = with pkgs.ibus-engines; [ table table-others ];
|
|||
</simplesect>
|
||||
</section>
|
||||
|
||||
<section><title>Fcitx</title>
|
||||
<section xml:id="module-services-input-methods-fcitx"><title>Fcitx</title>
|
||||
|
||||
<para>Fcitx is an input method framework with extension support. It has three
|
||||
built-in Input Method Engine, Pinyin, QuWei and Table-based input
|
||||
|
@ -122,7 +122,7 @@ i18n.inputMethod = {
|
|||
</itemizedlist>
|
||||
</section>
|
||||
|
||||
<section><title>Nabi</title>
|
||||
<section xml:id="module-services-input-methods-nabi"><title>Nabi</title>
|
||||
|
||||
<para>Nabi is an easy to use Korean X input method. It allows you to enter
|
||||
phonetic Korean characters (hangul) and pictographic Korean characters
|
||||
|
@ -136,7 +136,7 @@ i18n.inputMethod = {
|
|||
</programlisting>
|
||||
</section>
|
||||
|
||||
<section><title>Uim</title>
|
||||
<section xml:id="module-services-input-methods-uim"><title>Uim</title>
|
||||
|
||||
<para>Uim (short for "universal input method") is a multilingual input method
|
||||
framework. Applications can use it through so-called bridges.</para>
|
||||
|
|
|
@ -233,7 +233,7 @@ let
|
|||
"
|
||||
# Make our own efi program, we can't rely on "grub-install" since it seems to
|
||||
# probe for devices, even with --skip-fs-probe.
|
||||
${pkgs.grub2_efi}/bin/grub-mkimage -o $out/EFI/boot/bootx64.efi -p /EFI/boot -O x86_64-efi \
|
||||
${pkgs.grub2_efi}/bin/grub-mkimage -o $out/EFI/boot/${if targetArch == "x64" then "bootx64" else "bootx32"}.efi -p /EFI/boot -O ${if targetArch == "x64" then "x86_64" else "i386"}-efi \
|
||||
$MODULES
|
||||
cp ${pkgs.grub2_efi}/share/grub/unicode.pf2 $out/EFI/boot/
|
||||
|
||||
|
|
|
@ -574,6 +574,10 @@ $bootLoaderConfig
|
|||
# networking.hostName = "nixos"; # Define your hostname.
|
||||
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
|
||||
|
||||
# Configure network proxy if necessary
|
||||
# networking.proxy.default = "http://user:password\@proxy:port/";
|
||||
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
||||
|
||||
# Select internationalisation properties.
|
||||
# i18n = {
|
||||
# consoleFont = "Lat2-Terminus16";
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
to manage your <link xlink:href="https://www.zsh.org/">ZSH</link> configuration
|
||||
including completion scripts for several CLI tools or custom prompt themes.</para>
|
||||
|
||||
<section><title>Basic usage</title>
|
||||
<section xml:id="module-programs-oh-my-zsh-usage"><title>Basic usage</title>
|
||||
<para>The module uses the <literal>oh-my-zsh</literal> package with all available features. The
|
||||
initial setup using Nix expressions is fairly similar to the configuration format
|
||||
of <literal>oh-my-zsh</literal>.
|
||||
|
@ -32,7 +32,7 @@ For a detailed explanation of these arguments please refer to the
|
|||
configuration and writes it into your <literal>/etc/zshrc</literal>.
|
||||
</para></section>
|
||||
|
||||
<section><title>Custom additions</title>
|
||||
<section xml:id="module-programs-oh-my-zsh-additions"><title>Custom additions</title>
|
||||
|
||||
<para>Sometimes third-party or custom scripts such as a modified theme may be needed.
|
||||
<literal>oh-my-zsh</literal> provides the
|
||||
|
@ -48,7 +48,7 @@ environment variable for this which points to a directory with additional script
|
|||
</programlisting>
|
||||
</para></section>
|
||||
|
||||
<section><title>Custom environments</title>
|
||||
<section xml:id="module-programs-oh-my-zsh-environments"><title>Custom environments</title>
|
||||
|
||||
<para>There are several extensions for <literal>oh-my-zsh</literal> packaged in <literal>nixpkgs</literal>.
|
||||
One of them is <link xlink:href="https://github.com/spwhitt/nix-zsh-completions">nix-zsh-completions</link>
|
||||
|
@ -77,7 +77,7 @@ as it requires an immutable store path while <literal>custom</literal> shall rem
|
|||
will be thrown if both <literal>custom</literal> and <literal>customPkgs</literal> are set.</emphasis>
|
||||
</para></section>
|
||||
|
||||
<section><title>Package your own customizations</title>
|
||||
<section xml:id="module-programs-oh-my-zsh-packaging-customizations"><title>Package your own customizations</title>
|
||||
|
||||
<para>If third-party customizations (e.g. new themes) are supposed to be added to <literal>oh-my-zsh</literal>
|
||||
there are several pitfalls to keep in mind:</para>
|
||||
|
|
|
@ -11,7 +11,7 @@ retrieval and renewal using the ACME protocol. This is currently only
|
|||
implemented by and for Let's Encrypt. The alternative ACME client
|
||||
<literal>simp_le</literal> is used under the hood.</para>
|
||||
|
||||
<section><title>Prerequisites</title>
|
||||
<section xml:id="module-security-acme-prerequisites"><title>Prerequisites</title>
|
||||
|
||||
<para>You need to have a running HTTP server for verification. The server must
|
||||
have a webroot defined that can serve
|
||||
|
@ -41,7 +41,7 @@ http {
|
|||
|
||||
</section>
|
||||
|
||||
<section><title>Configuring</title>
|
||||
<section xml:id="module-security-acme-configuring"><title>Configuring</title>
|
||||
|
||||
<para>To enable ACME certificate retrieval & renewal for a certificate for
|
||||
<literal>foo.example.com</literal>, add the following in your
|
||||
|
@ -66,7 +66,7 @@ options for the <link linkend="opt-security.acme.certs">security.acme</link> mod
|
|||
|
||||
</section>
|
||||
|
||||
<section><title>Using ACME certificates in Nginx</title>
|
||||
<section xml:id="module-security-acme-nginx"><title>Using ACME certificates in Nginx</title>
|
||||
<para>NixOS supports fetching ACME certificates for you by setting
|
||||
<literal><link linkend="opt-services.nginx.virtualHosts._name_.enableACME">enableACME</link> = true;</literal> in a virtualHost config. We
|
||||
first create self-signed placeholder certificates in place of the
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
<para>FoundationDB (or "FDB") is an open source, distributed, transactional
|
||||
key-value store.</para>
|
||||
|
||||
<section><title>Configuring and basic setup</title>
|
||||
<section xml:id="module-services-foundationdb-configuring"><title>Configuring and basic setup</title>
|
||||
|
||||
<para>To enable FoundationDB, add the following to your
|
||||
<filename>configuration.nix</filename>:
|
||||
|
@ -133,7 +133,7 @@ corresponding <option>services.foundationdb.logDir</option> as well.</para>
|
|||
|
||||
</section>
|
||||
|
||||
<section><title>Scaling processes and backup agents</title>
|
||||
<section xml:id="module-services-foundationdb-scaling"><title>Scaling processes and backup agents</title>
|
||||
|
||||
<para>Scaling the number of server processes is quite easy; simply specify
|
||||
<option>services.foundationdb.serverProcesses</option> to be the number of
|
||||
|
@ -151,7 +151,7 @@ available backup processes.</para>
|
|||
|
||||
</section>
|
||||
|
||||
<section><title>Clustering</title>
|
||||
<section xml:id="module-services-foundationdb-clustering"><title>Clustering</title>
|
||||
|
||||
<para>FoundationDB on NixOS works similarly to other Linux systems, so this
|
||||
section will be brief. Please refer to the full FoundationDB documentation for
|
||||
|
@ -221,7 +221,7 @@ informing all client processes to do the same.</para>
|
|||
|
||||
</section>
|
||||
|
||||
<section><title>Client connectivity</title>
|
||||
<section xml:id="module-services-foundationdb-connectivity"><title>Client connectivity</title>
|
||||
|
||||
<para>By default, all clients must use the current
|
||||
<command>fdb.cluster</command> file to access a given FoundationDB cluster.
|
||||
|
@ -232,7 +232,7 @@ to a new node in order to connect, if it is not part of the cluster.</para>
|
|||
|
||||
</section>
|
||||
|
||||
<section><title>Client authorization and TLS</title>
|
||||
<section xml:id="module-services-foundationdb-authorization"><title>Client authorization and TLS</title>
|
||||
|
||||
<para>By default, any user who can connect to a FoundationDB process with the
|
||||
correct cluster configuration can access anything. FoundationDB uses a
|
||||
|
@ -270,7 +270,7 @@ on.</para>
|
|||
|
||||
</section>
|
||||
|
||||
<section><title>Backups and Disaster Recovery</title>
|
||||
<section xml:id="module-services-foundationdb-disaster-recovery"><title>Backups and Disaster Recovery</title>
|
||||
|
||||
<para>The usual rules for doing FoundationDB backups apply on NixOS as written
|
||||
in the FoundationDB manual. However, one important difference is the security
|
||||
|
@ -316,7 +316,7 @@ $ sudo -u foundationdb fdbbackup status -t default
|
|||
|
||||
</section>
|
||||
|
||||
<section><title>Known limitations</title>
|
||||
<section xml:id="module-services-foundationdb-limitations"><title>Known limitations</title>
|
||||
|
||||
<para>The FoundationDB setup for NixOS should currently be considered beta.
|
||||
FoundationDB is not new software, but the NixOS compilation and integration has
|
||||
|
@ -333,7 +333,7 @@ only undergone fairly basic testing of all the available functionality.</para>
|
|||
|
||||
</section>
|
||||
|
||||
<section><title>Options</title>
|
||||
<section xml:id="module-services-foundationdb-options"><title>Options</title>
|
||||
|
||||
<para>NixOS's FoundationDB module allows you to configure all of the most
|
||||
relevant configuration options for <command>fdbmonitor</command>, matching it
|
||||
|
@ -343,7 +343,7 @@ also read the FoundationDB documentation as well.</para>
|
|||
|
||||
</section>
|
||||
|
||||
<section><title>Full documentation</title>
|
||||
<section xml:id="module-services-foundationdb-full-docs"><title>Full documentation</title>
|
||||
|
||||
<para>FoundationDB is a complex piece of software, and requires careful
|
||||
administration to properly use. Full documentation for administration can be
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
|
||||
<para>PostgreSQL is an advanced, free relational database.<!-- MORE --></para>
|
||||
|
||||
<section><title>Configuring</title>
|
||||
<section xml:id="module-services-postgres-configuring"><title>Configuring</title>
|
||||
|
||||
<para>To enable PostgreSQL, add the following to your
|
||||
<filename>configuration.nix</filename>:
|
||||
|
@ -60,14 +60,14 @@ alice=>
|
|||
</section>
|
||||
|
||||
|
||||
<section><title>Upgrading</title>
|
||||
<section xml:id="module-services-postgres-upgrading"><title>Upgrading</title>
|
||||
|
||||
<para>FIXME: document dump/upgrade/load cycle.</para>
|
||||
|
||||
</section>
|
||||
|
||||
|
||||
<section><title>Options</title>
|
||||
<section xml:id="module-services-postgres-options"><title>Options</title>
|
||||
|
||||
<para>A complete list of options for the PostgreSQL module may be found <link linkend="opt-services.postgresql.enable">here</link>.</para>
|
||||
|
||||
|
|
|
@ -39,7 +39,7 @@
|
|||
starting the Emacs daemon.
|
||||
</para>
|
||||
|
||||
<section>
|
||||
<section xml:id="module-services-emacs-installing">
|
||||
<title>Installing <application>Emacs</application></title>
|
||||
|
||||
<para>
|
||||
|
@ -49,7 +49,7 @@
|
|||
can be enabled.
|
||||
</para>
|
||||
|
||||
<section>
|
||||
<section xml:id="module-services-emacs-releases">
|
||||
<title>The Different Releases of Emacs</title>
|
||||
|
||||
<para>
|
||||
|
@ -100,7 +100,7 @@
|
|||
</para>
|
||||
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="module-services-emacs-adding-packages">
|
||||
<title>Adding Packages to Emacs</title>
|
||||
<para>
|
||||
Emacs includes an entire ecosystem of functionality beyond
|
||||
|
@ -339,7 +339,7 @@ https://nixos.org/nixpkgs/manual/#sec-modify-via-packageOverrides
|
|||
</para>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="module-services-emacs-advanced">
|
||||
<title>Advanced Emacs Configuration</title>
|
||||
|
||||
<para>
|
||||
|
@ -380,7 +380,7 @@ in [...]
|
|||
</section>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="module-services-emacs-running">
|
||||
<title>Running Emacs as a Service</title>
|
||||
<para>
|
||||
<productname>NixOS</productname> provides an optional
|
||||
|
@ -396,7 +396,7 @@ in [...]
|
|||
<filename>modules/services/editors/emacs.nix</filename>
|
||||
</para>
|
||||
|
||||
<section>
|
||||
<section xml:id="module-services-emacs-enabling">
|
||||
<title>Enabling the Service</title>
|
||||
|
||||
<para>
|
||||
|
@ -438,7 +438,7 @@ $ systemctl --user start emacs.service # to start the Emacs daemon
|
|||
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="module-services-emacs-starting-client">
|
||||
<title>Starting the client</title>
|
||||
<para>
|
||||
Ensure that the emacs server is enabled, either by customizing
|
||||
|
@ -457,7 +457,7 @@ emacsclient --create-frame --tty # opens a new frame on the current terminal
|
|||
</para>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="module-services-emacs-editor-variable">
|
||||
<title>Configuring the <varname>EDITOR</varname> variable</title>
|
||||
<!--<title><command>emacsclient</command> as the Default Editor</title>-->
|
||||
|
||||
|
@ -487,7 +487,7 @@ emacsclient --create-frame --tty # opens a new frame on the current terminal
|
|||
</para>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="module-services-emacs-per-user">
|
||||
<title>Per-User Enabling of the Service</title>
|
||||
|
||||
<para>
|
||||
|
@ -515,7 +515,7 @@ emacsclient --create-frame --tty # opens a new frame on the current terminal
|
|||
</section>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="module-services-emacs-configuring">
|
||||
<title>Configuring Emacs</title>
|
||||
|
||||
<para>
|
||||
|
@ -548,7 +548,7 @@ emacsclient --create-frame --tty # opens a new frame on the current terminal
|
|||
server-switch-hook, server-done-hook?
|
||||
-->
|
||||
|
||||
<section>
|
||||
<section xml:id="module-services-emacs-major-mode">
|
||||
<title>A Major Mode for Nix Expressions</title>
|
||||
|
||||
<para>
|
||||
|
@ -558,7 +558,7 @@ emacsclient --create-frame --tty # opens a new frame on the current terminal
|
|||
</para>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="module-services-emacs-man-pages">
|
||||
<title>Accessing man pages</title>
|
||||
<para>
|
||||
You can use <function>woman</function> to get completion of all
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
<para>Gitlab is a feature-rich git hosting service.</para>
|
||||
|
||||
<section><title>Prerequisites</title>
|
||||
<section xml:id="module-services-gitlab-prerequisites"><title>Prerequisites</title>
|
||||
|
||||
<para>The gitlab service exposes only an Unix socket at
|
||||
<literal>/run/gitlab/gitlab-workhorse.socket</literal>. You need to configure a
|
||||
|
@ -35,7 +35,7 @@ webserver to proxy HTTP requests to the socket.</para>
|
|||
|
||||
</section>
|
||||
|
||||
<section><title>Configuring</title>
|
||||
<section xml:id="module-services-gitlab-configuring"><title>Configuring</title>
|
||||
|
||||
<para>Gitlab depends on both PostgreSQL and Redis and will automatically enable
|
||||
both services. In the case of PostgreSQL, a database and a role will be created.
|
||||
|
@ -119,7 +119,7 @@ options for the <link linkend="opt-services.gitlab.enable">services.gitlab</link
|
|||
|
||||
</section>
|
||||
|
||||
<section><title>Maintenance</title>
|
||||
<section xml:id="module-services-gitlab-maintenance"><title>Maintenance</title>
|
||||
|
||||
<para>You can run Gitlab's rake tasks with <literal>gitlab-rake</literal>
|
||||
which will be available on the system when gitlab is enabled. You will
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
<link xlink:href="https://taskwarrior.org/docs/#taskd"/>
|
||||
</para>
|
||||
|
||||
<section>
|
||||
<section xml:id="module-services-taskserver-configuration">
|
||||
<title>Configuration</title>
|
||||
|
||||
<para>
|
||||
|
@ -48,7 +48,7 @@
|
|||
</para>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<section xml:id="module-services-taskserver-nixos-taskserver-tool">
|
||||
<title>The nixos-taskserver tool</title>
|
||||
|
||||
<para>
|
||||
|
@ -78,7 +78,7 @@
|
|||
<option>--help</option> switch.
|
||||
</para>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="module-services-taskserver-declarative-ca-management">
|
||||
<title>Declarative/automatic CA management</title>
|
||||
|
||||
<para>
|
||||
|
@ -131,7 +131,7 @@ $ ssh server nixos-taskserver user export my-company alice | sh
|
|||
<command>task sync</command> after that stage.
|
||||
</para>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="module-services-taskserver-manual-ca-management">
|
||||
<title>Manual CA management</title>
|
||||
|
||||
<para>
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
<para>Prometheus exporters provide metrics for the <link xlink:href="https://prometheus.io">prometheus monitoring system</link>.</para>
|
||||
|
||||
<section><title>Configuration</title>
|
||||
<section xml:id="module-services-prometheus-exporters-configuration"><title>Configuration</title>
|
||||
<para>One of the most common exporters is the <link xlink:href="https://github.com/prometheus/node_exporter">node exporter</link>, it provides hardware and OS metrics from the host it's running on. The exporter could be configured as follows:
|
||||
<programlisting>
|
||||
services.promtheus.exporters.node = {
|
||||
|
@ -33,7 +33,7 @@ For more information about configuration see <literal>man configuration.nix</lit
|
|||
search through the <link xlink:href="https://nixos.org/nixos/options.html#prometheus.exporters">available options</link>.
|
||||
</para>
|
||||
</section>
|
||||
<section><title>Adding a new exporter</title>
|
||||
<section xml:id="module-services-prometheus-exporters-new-exporter"><title>Adding a new exporter</title>
|
||||
<para>To add a new exporter, it has to be packaged first (see <literal>nixpkgs/pkgs/servers/monitoring/prometheus/</literal> for examples), then a module can be added. The postfix exporter is used in this example:</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
|
|
|
@ -44,6 +44,7 @@ let
|
|||
systemd.services.${variant} = {
|
||||
description = "BIRD Internet Routing Daemon (${descr})";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
reloadIfChanged = true;
|
||||
serviceConfig = {
|
||||
Type = "forking";
|
||||
Restart = "on-failure";
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
upstream is trustworthy).
|
||||
</para>
|
||||
|
||||
<sect1><title>Basic configuration</title>
|
||||
<sect1 xml:id="sec-dnscrypt-proxy-configuration"><title>Basic configuration</title>
|
||||
|
||||
<para>
|
||||
To enable the client proxy, set
|
||||
|
@ -31,7 +31,7 @@
|
|||
|
||||
</sect1>
|
||||
|
||||
<sect1><title>As a forwarder for another DNS client</title>
|
||||
<sect1 xml:id="sec-dnscrypt-proxy-forwarder"><title>As a forwarder for another DNS client</title>
|
||||
|
||||
<para>
|
||||
To run the DNSCrypt proxy client as a forwarder for another
|
||||
|
@ -42,7 +42,7 @@
|
|||
</programlisting>
|
||||
</para>
|
||||
|
||||
<sect2><title>dnsmasq</title>
|
||||
<sect2 xml:id="sec-dnscrypt-proxy-forwarder-dsnmasq"><title>dnsmasq</title>
|
||||
<para>
|
||||
<programlisting>
|
||||
{
|
||||
|
@ -53,7 +53,7 @@
|
|||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2><title>unbound</title>
|
||||
<sect2 xml:id="sec-dnscrypt-proxy-forwarder-unbound"><title>unbound</title>
|
||||
<para>
|
||||
<programlisting>
|
||||
{
|
||||
|
|
|
@ -289,7 +289,7 @@ in {
|
|||
source = mkOption {
|
||||
type = types.path;
|
||||
description = ''
|
||||
A script.
|
||||
Path to the hook script.
|
||||
'';
|
||||
};
|
||||
|
||||
|
@ -297,12 +297,28 @@ in {
|
|||
type = types.enum (attrNames dispatcherTypesSubdirMap);
|
||||
default = "basic";
|
||||
description = ''
|
||||
Dispatcher hook type. Only basic hooks are currently available.
|
||||
Dispatcher hook type. Look up the hooks described at
|
||||
<link xlink:href="https://developer.gnome.org/NetworkManager/stable/NetworkManager.html">https://developer.gnome.org/NetworkManager/stable/NetworkManager.html</link>
|
||||
and choose the type depending on the output folder.
|
||||
You should then filter the event type (e.g., "up"/"down") from within your script.
|
||||
'';
|
||||
};
|
||||
};
|
||||
});
|
||||
default = [];
|
||||
example = literalExample ''
|
||||
[ {
|
||||
source = pkgs.writeText "upHook" '''
|
||||
|
||||
if [ "$2" != "up" ]; then
|
||||
logger "exit: event $2 != up"
|
||||
fi
|
||||
|
||||
# coreutils and iproute are in PATH too
|
||||
logger "Device $DEVICE_IFACE coming up"
|
||||
''';
|
||||
type = "basic";
|
||||
} ]'';
|
||||
description = ''
|
||||
A list of scripts which will be executed in response to network events.
|
||||
'';
|
||||
|
@ -418,6 +434,7 @@ in {
|
|||
++ lib.imap1 (i: s: {
|
||||
inherit (s) source;
|
||||
target = "NetworkManager/dispatcher.d/${dispatcherTypesSubdirMap.${s.type}}03userscript${lib.fixedWidthNumber 4 i}";
|
||||
mode = "0544";
|
||||
}) cfg.dispatcherScripts
|
||||
++ optional (dynamicHostsEnabled)
|
||||
{ target = "NetworkManager/dnsmasq.d/dyndns.conf";
|
||||
|
@ -475,6 +492,14 @@ in {
|
|||
};
|
||||
};
|
||||
|
||||
systemd.services."NetworkManager-dispatcher" = {
|
||||
wantedBy = [ "network.target" ];
|
||||
restartTriggers = [ configFile ];
|
||||
|
||||
# useful binaries for user-specified hooks
|
||||
path = [ pkgs.iproute pkgs.utillinux pkgs.coreutils ];
|
||||
};
|
||||
|
||||
# Turn off NixOS' network management
|
||||
networking = {
|
||||
useDHCP = false;
|
||||
|
|
|
@ -142,6 +142,7 @@ in
|
|||
${getLib pkgs.attr}/lib/libattr*.so* mr,
|
||||
${getLib pkgs.lz4}/lib/liblz4*.so* mr,
|
||||
${getLib pkgs.libkrb5}/lib/lib*.so* mr,
|
||||
${getLib pkgs.keyutils}/lib/libkeyutils*.so* mr,
|
||||
|
||||
@{PROC}/sys/kernel/random/uuid r,
|
||||
@{PROC}/sys/vm/overcommit_memory r,
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
</para>
|
||||
|
||||
|
||||
<section>
|
||||
<section xml:id="module-services-matomo-database-setup">
|
||||
<title>Database Setup</title>
|
||||
|
||||
<para>
|
||||
|
@ -51,7 +51,7 @@
|
|||
</section>
|
||||
|
||||
|
||||
<section>
|
||||
<section xml:id="module-services-matomo-backups">
|
||||
<title>Backup</title>
|
||||
<para>
|
||||
You only need to take backups of your MySQL database and the
|
||||
|
@ -62,7 +62,7 @@
|
|||
</section>
|
||||
|
||||
|
||||
<section>
|
||||
<section xml:id="module-services-matomo-issues">
|
||||
<title>Issues</title>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
|
@ -83,7 +83,7 @@
|
|||
</section>
|
||||
|
||||
|
||||
<section>
|
||||
<section xml:id="module-services-matomo-other-web-servers">
|
||||
<title>Using other Web Servers than nginx</title>
|
||||
|
||||
<para>
|
||||
|
|
|
@ -130,7 +130,7 @@ with lib;
|
|||
};
|
||||
|
||||
sslTrustedCertificate = mkOption {
|
||||
type = types.path;
|
||||
type = types.nullOr types.path;
|
||||
default = null;
|
||||
example = "/var/root.cert";
|
||||
description = "Path to root SSL certificate for stapling and client certificates.";
|
||||
|
|
|
@ -33,10 +33,10 @@ let
|
|||
chmod -R a+w $out/share/gsettings-schemas/nixos-gsettings-overrides
|
||||
cat - > $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas/nixos-defaults.gschema.override <<- EOF
|
||||
[org.gnome.desktop.background]
|
||||
picture-uri='${pkgs.nixos-artwork.wallpapers.gnome-dark}/share/artwork/gnome/Gnome_Dark.png'
|
||||
picture-uri='${pkgs.nixos-artwork.wallpapers.simple-dark-gray}/share/artwork/gnome/nix-wallpaper-simple-dark-gray.png'
|
||||
|
||||
[org.gnome.desktop.screensaver]
|
||||
picture-uri='${pkgs.nixos-artwork.wallpapers.gnome-dark}/share/artwork/gnome/Gnome_Dark.png'
|
||||
picture-uri='${pkgs.nixos-artwork.wallpapers.simple-dark-gray-bottom}/share/artwork/gnome/nix-wallpaper-simple-dark-gray_bottom.png'
|
||||
|
||||
${cfg.extraGSettingsOverrides}
|
||||
EOF
|
||||
|
@ -132,6 +132,7 @@ in {
|
|||
|
||||
fonts.fonts = [ pkgs.dejavu_fonts pkgs.cantarell-fonts ];
|
||||
|
||||
services.xserver.displayManager.gdm.enable = mkDefault true;
|
||||
services.xserver.displayManager.extraSessionFilePackages = [ pkgs.gnome3.gnome-session ];
|
||||
|
||||
services.xserver.displayManager.sessionCommands = ''
|
||||
|
@ -161,6 +162,8 @@ in {
|
|||
# TODO: Create nautilus-with-extensions package
|
||||
environment.variables.NAUTILUS_EXTENSION_DIR = "${config.system.path}/lib/nautilus/extensions-3.0";
|
||||
|
||||
services.xserver.updateDbusEnvironment = true;
|
||||
|
||||
environment.variables.GIO_EXTRA_MODULES = [ "${lib.getLib pkgs.gnome3.dconf}/lib/gio/modules"
|
||||
"${pkgs.gnome3.glib-networking.out}/lib/gio/modules"
|
||||
"${pkgs.gnome3.gvfs}/lib/gio/modules" ];
|
||||
|
|
|
@ -41,12 +41,28 @@ in
|
|||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
services.xserver.displayManager.slim = {
|
||||
services.xserver.displayManager.lightdm = {
|
||||
enable = true;
|
||||
autoLogin = true;
|
||||
defaultUser = cfg.user;
|
||||
autoLogin = {
|
||||
enable = true;
|
||||
user = cfg.user;
|
||||
};
|
||||
};
|
||||
|
||||
# lightdm by default doesn't allow auto login for root, which is
|
||||
# required by some nixos tests. Override it here.
|
||||
security.pam.services.lightdm-autologin.text = lib.mkForce ''
|
||||
auth requisite pam_nologin.so
|
||||
auth required pam_succeed_if.so quiet
|
||||
auth required pam_permit.so
|
||||
|
||||
account include lightdm
|
||||
|
||||
password include lightdm
|
||||
|
||||
session include lightdm
|
||||
'';
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -27,6 +27,15 @@ let
|
|||
Xft.hintstyle: hintslight
|
||||
'';
|
||||
|
||||
mkCases = session:
|
||||
concatStrings (
|
||||
mapAttrsToList (name: starts: ''
|
||||
(${name})
|
||||
${concatMapStringsSep "\n " (n: n.start) starts}
|
||||
;;
|
||||
'') (lib.groupBy (n: n.name) session)
|
||||
);
|
||||
|
||||
# file provided by services.xserver.displayManager.session.wrapper
|
||||
xsessionWrapper = pkgs.writeScript "xsession-wrapper"
|
||||
''
|
||||
|
@ -139,21 +148,13 @@ let
|
|||
|
||||
# Start the window manager.
|
||||
case "$windowManager" in
|
||||
${concatMapStrings (s: ''
|
||||
(${s.name})
|
||||
${s.start}
|
||||
;;
|
||||
'') wm}
|
||||
${mkCases wm}
|
||||
(*) echo "$0: Window manager '$windowManager' not found.";;
|
||||
esac
|
||||
|
||||
# Start the desktop manager.
|
||||
case "$desktopManager" in
|
||||
${concatMapStrings (s: ''
|
||||
(${s.name})
|
||||
${s.start}
|
||||
;;
|
||||
'') dm}
|
||||
${mkCases dm}
|
||||
(*) echo "$0: Desktop manager '$desktopManager' not found.";;
|
||||
esac
|
||||
|
||||
|
|
|
@ -87,7 +87,7 @@ in
|
|||
}
|
||||
];
|
||||
|
||||
services.xserver.displayManager.slim.enable = false;
|
||||
services.xserver.displayManager.lightdm.enable = false;
|
||||
|
||||
users.users.gdm =
|
||||
{ name = "gdm";
|
||||
|
|
|
@ -115,7 +115,7 @@ in
|
|||
|
||||
background = mkOption {
|
||||
type = types.str;
|
||||
default = "${pkgs.nixos-artwork.wallpapers.gnome-dark}/share/artwork/gnome/Gnome_Dark.png";
|
||||
default = "${pkgs.nixos-artwork.wallpapers.simple-dark-gray-bottom}/share/artwork/gnome/nix-wallpaper-simple-dark-gray_bottom.png";
|
||||
description = ''
|
||||
The background image or color to use.
|
||||
'';
|
||||
|
@ -191,8 +191,6 @@ in
|
|||
}
|
||||
];
|
||||
|
||||
services.xserver.displayManager.slim.enable = false;
|
||||
|
||||
services.xserver.displayManager.job = {
|
||||
logToFile = true;
|
||||
|
||||
|
|
|
@ -206,8 +206,6 @@ in
|
|||
}
|
||||
];
|
||||
|
||||
services.xserver.displayManager.slim.enable = false;
|
||||
|
||||
services.xserver.displayManager.job = {
|
||||
logToFile = true;
|
||||
|
||||
|
|
|
@ -49,7 +49,7 @@ in
|
|||
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
default = config.services.xserver.enable;
|
||||
default = false;
|
||||
description = ''
|
||||
Whether to enable SLiM as the display manager.
|
||||
'';
|
||||
|
|
|
@ -205,7 +205,7 @@ in {
|
|||
})
|
||||
];
|
||||
|
||||
services.udev.packages = [ pkgs.libinput ];
|
||||
services.udev.packages = [ pkgs.libinput.out ];
|
||||
|
||||
services.xserver.config =
|
||||
''
|
||||
|
|
|
@ -535,6 +535,15 @@ in
|
|||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
services.xserver.displayManager.lightdm.enable =
|
||||
let dmconf = cfg.displayManager;
|
||||
default = !( dmconf.auto.enable
|
||||
|| dmconf.gdm.enable
|
||||
|| dmconf.sddm.enable
|
||||
|| dmconf.slim.enable
|
||||
|| dmconf.xpra.enable );
|
||||
in mkIf (default) true;
|
||||
|
||||
hardware.opengl.enable = mkDefault true;
|
||||
|
||||
services.xserver.videoDrivers = mkIf (cfg.videoDriver != null) [ cfg.videoDriver ];
|
||||
|
|
|
@ -162,6 +162,13 @@ in
|
|||
description = ''
|
||||
Additional configurations to build based on the current
|
||||
configuration which then has a lower priority.
|
||||
|
||||
To switch to a cloned configuration (e.g. <literal>child-1</literal>)
|
||||
at runtime, run
|
||||
|
||||
<programlisting>
|
||||
# sudo /run/current-system/fine-tune/child-1/bin/switch-to-configuration test
|
||||
</programlisting>
|
||||
'';
|
||||
};
|
||||
|
||||
|
|
|
@ -38,6 +38,8 @@ let
|
|||
in
|
||||
pkgs.writeText "grub-config.xml" (builtins.toXML
|
||||
{ splashImage = f cfg.splashImage;
|
||||
splashMode = f cfg.splashMode;
|
||||
backgroundColor = f cfg.backgroundColor;
|
||||
grub = f grub;
|
||||
grubTarget = f (grub.grubTarget or "");
|
||||
shell = "${pkgs.runtimeShell}";
|
||||
|
@ -80,6 +82,8 @@ let
|
|||
"--output" "$out"
|
||||
] ++ (optional (cfg.fontSize!=null) "--size ${toString cfg.fontSize}")))
|
||||
);
|
||||
|
||||
defaultSplash = "${pkgs.nixos-artwork.wallpapers.simple-dark-gray-bootloader}/share/artwork/gnome/nix-wallpaper-simple-dark-gray_bootloader.png";
|
||||
in
|
||||
|
||||
{
|
||||
|
@ -328,6 +332,31 @@ in
|
|||
'';
|
||||
};
|
||||
|
||||
backgroundColor = mkOption {
|
||||
type = types.nullOr types.string;
|
||||
example = "#7EBAE4";
|
||||
default = null;
|
||||
description = ''
|
||||
Background color to be used for GRUB to fill the areas the image isn't filling.
|
||||
|
||||
<note><para>
|
||||
This options has no effect for GRUB 1.
|
||||
</para></note>
|
||||
'';
|
||||
};
|
||||
|
||||
splashMode = mkOption {
|
||||
type = types.enum [ "normal" "stretch" ];
|
||||
default = "stretch";
|
||||
description = ''
|
||||
Whether to stretch the image or show the image in the top-left corner unstretched.
|
||||
|
||||
<note><para>
|
||||
This options has no effect for GRUB 1.
|
||||
</para></note>
|
||||
'';
|
||||
};
|
||||
|
||||
font = mkOption {
|
||||
type = types.nullOr types.path;
|
||||
default = "${realGrub}/share/grub/unicode.pf2";
|
||||
|
@ -531,9 +560,14 @@ in
|
|||
sha256 = "14kqdx2lfqvh40h6fjjzqgff1mwk74dmbjvmqphi6azzra7z8d59";
|
||||
}
|
||||
# GRUB 1.97 doesn't support gzipped XPMs.
|
||||
else "${pkgs.nixos-artwork.wallpapers.gnome-dark}/share/artwork/gnome/Gnome_Dark.png");
|
||||
else defaultSplash);
|
||||
}
|
||||
|
||||
(mkIf (cfg.splashImage == defaultSplash) {
|
||||
boot.loader.grub.backgroundColor = mkDefault "#2F302F";
|
||||
boot.loader.grub.splashMode = mkDefault "normal";
|
||||
})
|
||||
|
||||
(mkIf cfg.enable {
|
||||
|
||||
boot.loader.grub.devices = optional (cfg.device != "") cfg.device;
|
||||
|
|
|
@ -51,6 +51,8 @@ my $extraEntries = get("extraEntries");
|
|||
my $extraEntriesBeforeNixOS = get("extraEntriesBeforeNixOS") eq "true";
|
||||
my $extraInitrd = get("extraInitrd");
|
||||
my $splashImage = get("splashImage");
|
||||
my $splashMode = get("splashMode");
|
||||
my $backgroundColor = get("backgroundColor");
|
||||
my $configurationLimit = int(get("configurationLimit"));
|
||||
my $copyKernels = get("copyKernels") eq "true";
|
||||
my $timeout = int(get("timeout"));
|
||||
|
@ -307,10 +309,15 @@ else {
|
|||
if ($suffix eq ".jpg") {
|
||||
$suffix = ".jpeg";
|
||||
}
|
||||
if ($backgroundColor) {
|
||||
$conf .= "
|
||||
background_color '$backgroundColor'
|
||||
";
|
||||
}
|
||||
copy $splashImage, "$bootPath/background$suffix" or die "cannot copy $splashImage to $bootPath\n";
|
||||
$conf .= "
|
||||
insmod " . substr($suffix, 1) . "
|
||||
if background_image " . $grubBoot->path . "/background$suffix; then
|
||||
if background_image --mode '$splashMode' " . $grubBoot->path . "/background$suffix; then
|
||||
set color_normal=white/black
|
||||
set color_highlight=black/white
|
||||
else
|
||||
|
|
|
@ -263,6 +263,13 @@ checkFS() {
|
|||
return 0
|
||||
fi
|
||||
|
||||
# Device might be already mounted manually
|
||||
# e.g. NBD-device or the host filesystem of the file which contains encrypted root fs
|
||||
if mount | grep -q "^$device on "; then
|
||||
echo "skip checking already mounted $device"
|
||||
return 0
|
||||
fi
|
||||
|
||||
# Optionally, skip fsck on journaling filesystems. This option is
|
||||
# a hack - it's mostly because e2fsck on ext3 takes much longer to
|
||||
# recover the journal than the ext3 implementation in the kernel
|
||||
|
|
|
@ -473,7 +473,12 @@ let
|
|||
# Remove Dead Interfaces
|
||||
ip link show "${n}" >/dev/null 2>&1 && ip link delete "${n}"
|
||||
ip link add link "${v.interface}" name "${n}" type vlan id "${toString v.id}"
|
||||
ip link set "${n}" up
|
||||
|
||||
# We try to bring up the logical VLAN interface. If the master
|
||||
# interface the logical interface is dependent upon is not up yet we will
|
||||
# fail to immediately bring up the logical interface. The resulting logical
|
||||
# interface will brought up later when the master interface is up.
|
||||
ip link set "${n}" up || true
|
||||
'';
|
||||
postStop = ''
|
||||
ip link delete "${n}" || true
|
||||
|
|
|
@ -249,7 +249,7 @@ in rec {
|
|||
tests.beegfs = callTest tests/beegfs.nix {};
|
||||
tests.bittorrent = callTest tests/bittorrent.nix {};
|
||||
tests.bind = callTest tests/bind.nix {};
|
||||
tests.blivet = callTest tests/blivet.nix {};
|
||||
#tests.blivet = callTest tests/blivet.nix {}; # broken since 2017-07024
|
||||
tests.boot = callSubTests tests/boot.nix {};
|
||||
tests.boot-stage1 = callTest tests/boot-stage1.nix {};
|
||||
tests.borgbackup = callTest tests/borgbackup.nix {};
|
||||
|
@ -422,6 +422,7 @@ in rec {
|
|||
tests.yabar = callTest tests/yabar.nix {};
|
||||
tests.zookeeper = callTest tests/zookeeper.nix {};
|
||||
tests.morty = callTest tests/morty.nix { };
|
||||
tests.bcachefs = callTest tests/bcachefs.nix { };
|
||||
|
||||
/* Build a bunch of typical closures so that Hydra can keep track of
|
||||
the evolution of closure sizes. */
|
||||
|
|
38
nixos/tests/bcachefs.nix
Normal file
38
nixos/tests/bcachefs.nix
Normal file
|
@ -0,0 +1,38 @@
|
|||
import ./make-test.nix ({ pkgs, ... }: {
|
||||
name = "bcachefs";
|
||||
meta.maintainers = with pkgs.stdenv.lib.maintainers; [ chiiruno ];
|
||||
|
||||
machine = { pkgs, ... }: {
|
||||
virtualisation.emptyDiskImages = [ 4096 ];
|
||||
networking.hostId = "deadbeef";
|
||||
boot.supportedFilesystems = [ "bcachefs" ];
|
||||
environment.systemPackages = with pkgs; [ parted ];
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
$machine->succeed("modprobe bcachefs");
|
||||
$machine->succeed("bcachefs version");
|
||||
$machine->succeed("ls /dev");
|
||||
|
||||
$machine->succeed(
|
||||
"mkdir /tmp/mnt",
|
||||
|
||||
"udevadm settle",
|
||||
"parted --script /dev/vdb mklabel msdos",
|
||||
"parted --script /dev/vdb -- mkpart primary 1024M -1s",
|
||||
"udevadm settle",
|
||||
|
||||
# Due to #32279, we cannot use encryption for this test yet
|
||||
# "echo password | bcachefs format --encrypted /dev/vdb1",
|
||||
# "echo password | bcachefs unlock /dev/vdb1",
|
||||
"bcachefs format /dev/vdb1",
|
||||
"mount -t bcachefs /dev/vdb1 /tmp/mnt",
|
||||
"udevadm settle",
|
||||
|
||||
"bcachefs fs usage /tmp/mnt",
|
||||
|
||||
"umount /tmp/mnt",
|
||||
"udevadm settle"
|
||||
);
|
||||
'';
|
||||
})
|
|
@ -10,6 +10,8 @@ import ./make-test.nix ({ pkgs, ... }:
|
|||
machine = { pkgs, ... }: {
|
||||
imports = [ ./common/x11.nix ];
|
||||
services.xserver.desktopManager.gnome3.enable = true; # TODO: figure out minimal environment where the tests work
|
||||
# common/x11.nix enables the auto display manager (lightdm)
|
||||
services.xserver.displayManager.gdm.enable = false;
|
||||
environment.gnome3.excludePackages = pkgs.gnome3.optionalPackages;
|
||||
services.flatpak.enable = true;
|
||||
environment.systemPackages = with pkgs; [ gnupg gnome-desktop-testing ostree python2 ];
|
||||
|
|
|
@ -11,7 +11,6 @@ import ./make-test.nix ({ pkgs, ...} : {
|
|||
|
||||
services.xserver.enable = true;
|
||||
|
||||
services.xserver.displayManager.slim.enable = false;
|
||||
services.xserver.displayManager.gdm = {
|
||||
enable = true;
|
||||
autoLogin = {
|
||||
|
|
|
@ -11,6 +11,7 @@ import ./make-test.nix ({ pkgs, ...} : {
|
|||
|
||||
services.xserver.enable = true;
|
||||
|
||||
services.xserver.displayManager.gdm.enable = false;
|
||||
services.xserver.displayManager.lightdm.enable = true;
|
||||
services.xserver.displayManager.lightdm.autoLogin.enable = true;
|
||||
services.xserver.displayManager.lightdm.autoLogin.user = "alice";
|
||||
|
|
|
@ -233,13 +233,16 @@ let
|
|||
[ sudo
|
||||
libxml2.bin
|
||||
libxslt.bin
|
||||
desktop-file-utils
|
||||
docbook5
|
||||
docbook_xsl_ns
|
||||
unionfs-fuse
|
||||
ntp
|
||||
nixos-artwork.wallpapers.gnome-dark
|
||||
nixos-artwork.wallpapers.simple-dark-gray-bottom
|
||||
perlPackages.XMLLibXML
|
||||
perlPackages.ListCompare
|
||||
shared-mime-info
|
||||
texinfo
|
||||
xorg.lndir
|
||||
|
||||
# add curl so that rather than seeing the test attempt to download
|
||||
|
|
|
@ -17,10 +17,11 @@ buildRustPackage rec {
|
|||
|
||||
cargoBuildFlags = ["--features cli"];
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "Ethereum function call encoding (ABI) utility";
|
||||
homepage = https://github.com/ethcore/ethabi/;
|
||||
maintainers = [stdenv.lib.maintainers.dbrock];
|
||||
maintainers = [ maintainers.dbrock ];
|
||||
license = licenses.gpl3;
|
||||
inherit version;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -15,10 +15,11 @@ buildRustPackage rec {
|
|||
|
||||
cargoSha256 = "14x8pbjgkz0g724lnvd9mi2alqd6fipjljw6xsraf9gqwijn1kn0";
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "Directly run Ethereum bytecode";
|
||||
homepage = https://github.com/dapphub/ethrun/;
|
||||
maintainers = [stdenv.lib.maintainers.dbrock];
|
||||
maintainers = [ maintainers.dbrock ];
|
||||
license = licenses.gpl3;
|
||||
broken = true; # mark temporary as broken
|
||||
inherit version;
|
||||
};
|
||||
|
|
|
@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
|
|||
phones. With dfu-util you are able to download firmware to your device or
|
||||
upload firmware from it.
|
||||
'';
|
||||
homepage = http://dfu-util.gnumonks.org/;
|
||||
homepage = http://dfu-util.sourceforge.net;
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.unix;
|
||||
maintainers = [ ];
|
||||
|
|
|
@ -29,10 +29,10 @@ stdenv.mkDerivation rec {
|
|||
sed 's,-ludev,-L${systemd.lib}/lib -ludev,' -i $out/lib/libusb-1.0.la
|
||||
'';
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://www.libusb.info;
|
||||
description = "User-space USB library";
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
maintainers = [ ];
|
||||
platforms = platforms.unix;
|
||||
license = licenses.lgpl21;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -46,6 +46,7 @@ stdenv.mkDerivation rec {
|
|||
TAL-Filter-2 TAL-NoiseMaker TAL-Reverb TAL-Reverb-2 TAL-Reverb-3
|
||||
TAL-Vocoder-2 TheFunction ThePilgrim Vex Wolpertinger
|
||||
'';
|
||||
license = with licenses; [ gpl2 gpl3 gpl2Plus lgpl3 mit ];
|
||||
maintainers = [ maintainers.goibhniu ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
|
|
|
@ -56,7 +56,7 @@ in stdenv.mkDerivation rec {
|
|||
|
||||
enableParallelBuilding = true;
|
||||
postInstall = ''
|
||||
${glib.dev}/bin/glib-compile-schemas $out/share/glib-2.0/schemas
|
||||
glib-compile-schemas "$out"/share/glib-2.0/schemas
|
||||
'';
|
||||
|
||||
patches = [ ./0001-Remove-post-install-script-that-hardcodes-paths.patch ];
|
||||
|
|
|
@ -9,11 +9,11 @@
|
|||
stdenv.mkDerivation rec {
|
||||
|
||||
name = "kid3-${version}";
|
||||
version = "3.6.1";
|
||||
version = "3.6.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/project/kid3/kid3/${version}/${name}.tar.gz";
|
||||
sha256 = "1bbnd6jgahdiqmsbw6c3x4h517m50db592fnq1w0v4k5aaav4i26";
|
||||
sha256 = "19yq39fqj19g98cxd4cdgv0f935ckfw0c43cxaxbf27x5f5dj0yz";
|
||||
};
|
||||
|
||||
buildInputs = with stdenv.lib;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ fetchurl, pythonPackages }:
|
||||
{ lib, fetchurl, pythonPackages }:
|
||||
|
||||
pythonPackages.buildPythonApplication rec {
|
||||
pname = "lastfmsubmitd";
|
||||
|
@ -15,6 +15,7 @@ pythonPackages.buildPythonApplication rec {
|
|||
|
||||
meta = {
|
||||
homepage = https://www.red-bean.com/decklin/lastfmsubmitd/;
|
||||
license = lib.licenses.mit;
|
||||
description = "An last.fm audio scrobbler and daemon";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
{ stdenv, fetchFromGitHub, chromaprint, fetchpatch, fftw, flac, faad2, mp4v2
|
||||
{ stdenv, fetchFromGitHub, makeWrapper, chromaprint, fetchpatch
|
||||
, fftw, flac, faad2, glibcLocales, mp4v2
|
||||
, libid3tag, libmad, libopus, libshout, libsndfile, libusb1, libvorbis
|
||||
, pkgconfig, portaudio, portmidi, protobuf, qt4, rubberband, scons, sqlite
|
||||
, taglib, upower, vampSDK
|
||||
|
@ -15,8 +16,10 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "1fm8lkbnxka4haidf6yr8mb3r6vaxmc97hhrp8pcx0fvq2mnzvy2";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
buildInputs = [
|
||||
chromaprint fftw flac faad2 mp4v2 libid3tag libmad libopus libshout libsndfile
|
||||
chromaprint fftw flac faad2 glibcLocales mp4v2 libid3tag libmad libopus libshout libsndfile
|
||||
libusb1 libvorbis pkgconfig portaudio portmidi protobuf qt4
|
||||
rubberband scons sqlite taglib upower vampSDK
|
||||
];
|
||||
|
@ -42,6 +45,11 @@ stdenv.mkDerivation rec {
|
|||
runHook postInstall
|
||||
'';
|
||||
|
||||
fixupPhase = ''
|
||||
wrapProgram $out/bin/mixxx \
|
||||
--set LOCALE_ARCHIVE ${glibcLocales}/lib/locale/locale-archive;
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://mixxx.org;
|
||||
description = "Digital DJ mixing software";
|
||||
|
|
|
@ -1,16 +1,16 @@
|
|||
{ fetchurl, stdenv, pkgconfig, libao, json_c, libgcrypt, libav, curl }:
|
||||
{ fetchurl, stdenv, pkgconfig, libao, json_c, libgcrypt, ffmpeg, curl }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "pianobar-2016.06.02";
|
||||
name = "pianobar-2018.06.22";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://6xq.net/projects/pianobar/${name}.tar.bz2";
|
||||
sha256 = "0n9544bfsdp04xqcjm4nhfvp357dx0c3gpys0rjkq09nzv8b1vy6";
|
||||
sha256 = "1hnlif62vsxgh8j9mcibxwj4gybpgqc11ba729kflpvvi9qmfqwl";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [
|
||||
libao json_c libgcrypt libav curl
|
||||
libao json_c libgcrypt ffmpeg curl
|
||||
];
|
||||
|
||||
makeFlags="PREFIX=$(out)";
|
||||
|
|
|
@ -43,13 +43,13 @@ let
|
|||
];
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "pulseeffects-${version}";
|
||||
version = "4.3.3";
|
||||
version = "4.3.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "wwmm";
|
||||
repo = "pulseeffects";
|
||||
rev = "v${version}";
|
||||
sha256 = "1krfxvwqimfcsv7f2l722ivzz0qdf5h0pmb702mg65qb160zn065";
|
||||
sha256 = "0gyyqxfmmp6hbwc10i48sxrgdxansm3vsbwgc6rh89clxwcnfiml";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
description = "WYSIWYG PostScript annotator";
|
||||
homepage = http://http://flpsed.org/flpsed.html;
|
||||
homepage = http://flpsed.org/flpsed.html;
|
||||
license = licenses.gpl3;
|
||||
platforms = platforms.mesaPlatforms;
|
||||
maintainers = with maintainers; [ fuuzetsu ];
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl, gdal, cmake, qt4, flex, bison, proj, geos, xlibsWrapper, sqlite, gsl
|
||||
{ stdenv, fetchurl, fetchpatch, gdal, cmake, qt4, flex, bison, proj, geos, xlibsWrapper, sqlite, gsl
|
||||
, qwt, fcgi, python2Packages, libspatialindex, libspatialite, qscintilla, postgresql, makeWrapper
|
||||
, qjson, qca2, txt2tags, openssl, darwin, pkgconfig
|
||||
, withGrass ? true, grass, IOKit, ApplicationServices
|
||||
|
@ -37,6 +37,14 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "00b3a2hfn3i7bdx7x96vz2nj0976vpkhid4ss7n8c33fdvw3k82a";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# https://github.com/qgis/QGIS/pull/7765
|
||||
(fetchpatch {
|
||||
url = "https://github.com/qgis/QGIS/commit/6b61ef361a77f057dc29eb07463007bd9012b253.patch";
|
||||
sha256 = "1xibcahm18n7nxff1xvwwzjf505hvhiw5dk12is7aclv49h0rdf7";
|
||||
})
|
||||
];
|
||||
|
||||
# CMAKE_FIND_FRAMEWORK=never stops the installer choosing system
|
||||
# installed frameworks
|
||||
# QGIS_MACAPP_BUNDLE=0 stops the installer copying the Qt binaries into the
|
||||
|
|
|
@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = {
|
||||
description = "Bitmap paint program inspired by the Amiga programs Deluxe Paint and Brilliance";
|
||||
homepage = http://code.google.co/p/grafx2/;
|
||||
homepage = http://pulkomandy.tk/projects/GrafX2;
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
platforms = [ "x86_64-linux" "i686-linux" ];
|
||||
maintainers = [ stdenv.lib.maintainers.zoomulator ];
|
||||
|
|
|
@ -39,12 +39,11 @@ stdenv.mkDerivation rec {
|
|||
|
||||
#doCheck = false;
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "A 3D editor with support for procedural editing";
|
||||
homepage = http://www.k-3d.org/;
|
||||
platforms = with stdenv.lib.platforms;
|
||||
linux;
|
||||
maintainers = with stdenv.lib.maintainers;
|
||||
[raskin];
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.raskin ];
|
||||
license = licenses.gpl2;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ mkDerivation, lib, fetchurl, cmake, extra-cmake-modules
|
||||
{ mkDerivation, lib, stdenv, fetchurl, cmake, extra-cmake-modules
|
||||
, karchive, kconfig, kwidgetsaddons, kcompletion, kcoreaddons
|
||||
, kguiaddons, ki18n, kitemmodels, kitemviews, kwindowsystem
|
||||
, kio, kcrash
|
||||
|
@ -23,10 +23,10 @@ mkDerivation rec {
|
|||
karchive kconfig kwidgetsaddons kcompletion kcoreaddons kguiaddons
|
||||
ki18n kitemmodels kitemviews kwindowsystem kio kcrash
|
||||
boost libraw fftw eigen exiv2 lcms2 gsl openexr libheif giflib
|
||||
openjpeg opencolorio vc poppler_qt5 curl ilmbase
|
||||
openjpeg opencolorio poppler_qt5 curl ilmbase
|
||||
qtmultimedia qtx11extras
|
||||
python3
|
||||
];
|
||||
] ++ lib.optional (stdenv.hostPlatform.isi686 || stdenv.hostPlatform.isx86_64) vc;
|
||||
|
||||
NIX_CFLAGS_COMPILE = [ "-I${ilmbase.dev}/include/OpenEXR" ];
|
||||
|
||||
|
|
|
@ -2,17 +2,22 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
version = "2017-01-12";
|
||||
version = "2018-08-15";
|
||||
name = "pbrt-v3-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
rev = "35b6da3429526f2026fe5e5ebaf36d593e113028";
|
||||
rev = "86b5821308088deea70b207bc8c22219d0103d65";
|
||||
owner = "mmp";
|
||||
repo = "pbrt-v3";
|
||||
sha256 = "10lvbph13p6ilzqb8sgrvn9gg1zmi8wpy3hhjbqp8dnsa4x0mhj7";
|
||||
sha256 = "0f7ivsczba6zfk5f0bba1js6dcwf6w6jrkiby147qp1sx5k35cv8";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
patches = [
|
||||
# https://github.com/mmp/pbrt-v3/issues/196
|
||||
./openexr-cmake-3.12.patch
|
||||
];
|
||||
|
||||
buildInputs = [ git flex bison cmake zlib ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
|
26
pkgs/applications/graphics/pbrt/openexr-cmake-3.12.patch
Normal file
26
pkgs/applications/graphics/pbrt/openexr-cmake-3.12.patch
Normal file
|
@ -0,0 +1,26 @@
|
|||
diff -ur a/src/ext/openexr/CMakeLists.txt b/src/ext/openexr/CMakeLists.txt
|
||||
--- a/src/ext/openexr/CMakeLists.txt 1970-01-01 09:00:01.000000000 +0900
|
||||
+++ b/src/ext/openexr/CMakeLists.txt 2018-08-31 21:44:56.490714484 +0900
|
||||
@@ -26,22 +26,4 @@
|
||||
${CMAKE_CURRENT_BINARY_DIR}/IlmBase/config
|
||||
)
|
||||
|
||||
-add_custom_target(CopyIlmBaseLibs
|
||||
- COMMAND ${CMAKE_COMMAND} -E copy_directory
|
||||
- ${CMAKE_CURRENT_BINARY_DIR}/IlmBase/Half/$<CONFIGURATION>
|
||||
- ${CMAKE_CURRENT_BINARY_DIR}/OpenEXR/IlmImf/$<CONFIGURATION>
|
||||
- COMMAND ${CMAKE_COMMAND} -E copy_directory
|
||||
- ${CMAKE_CURRENT_BINARY_DIR}/IlmBase/IlmThread/$<CONFIGURATION>
|
||||
- ${CMAKE_CURRENT_BINARY_DIR}/OpenEXR/IlmImf/$<CONFIGURATION>
|
||||
- COMMAND ${CMAKE_COMMAND} -E copy_directory
|
||||
- ${CMAKE_CURRENT_BINARY_DIR}/IlmBase/Iex/$<CONFIGURATION>
|
||||
- ${CMAKE_CURRENT_BINARY_DIR}/OpenEXR/IlmImf/$<CONFIGURATION>
|
||||
- COMMAND ${CMAKE_COMMAND} -E copy_directory
|
||||
- ${CMAKE_CURRENT_BINARY_DIR}/IlmBase/Imath/$<CONFIGURATION>
|
||||
- ${CMAKE_CURRENT_BINARY_DIR}/OpenEXR/IlmImf/$<CONFIGURATION>
|
||||
-)
|
||||
-add_dependencies(CopyIlmBaseLibs Iex Imath IlmThread Half)
|
||||
-
|
||||
add_subdirectory(OpenEXR OpenEXR)
|
||||
-add_dependencies(b44ExpLogTable CopyIlmBaseLibs)
|
||||
-add_dependencies(dwaLookups CopyIlmBaseLibs)
|
43
pkgs/applications/graphics/qcomicbook/default.nix
Normal file
43
pkgs/applications/graphics/qcomicbook/default.nix
Normal file
|
@ -0,0 +1,43 @@
|
|||
{ stdenv, fetchFromGitHub, pkgconfig, cmake, qtbase, qttools, qtx11extras, poppler_qt5 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "qcomicbook-${version}";
|
||||
version = "0.9.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "stolowski";
|
||||
repo = "QComicBook";
|
||||
rev = version;
|
||||
sha256 = "1b769lp6gfwds4jb2g7ymhdm9c06zg57zpyz3zpdb40w07zfsjzv";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake pkgconfig
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
qtbase qttools qtx11extras poppler_qt5
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
substituteInPlace $out/share/applications/*.desktop \
|
||||
--replace "Exec=qcomicbook" "Exec=$out/bin/qcomicbook"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/stolowski/QComicBook;
|
||||
description = "Comic book reader in Qt5";
|
||||
license = licenses.gpl2;
|
||||
|
||||
longDescription = ''
|
||||
QComicBook is a viewer for PDF files and comic book archives containing
|
||||
jpeg/png/xpm/gif/bmp images, which aims at convenience and simplicity.
|
||||
Features include: automatic unpacking of archive files, full-screen mode, continuous
|
||||
scrolling mode, double-pages viewing, manga mode, thumbnails view, page scaling,
|
||||
mouse or keyboard navigation etc.
|
||||
'';
|
||||
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ greydot ];
|
||||
};
|
||||
}
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchFromGitHub, cmake, libarcus, stb }:
|
||||
{ stdenv, fetchFromGitHub, fetchpatch, cmake, libarcus, stb }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "curaengine-${version}";
|
||||
|
@ -11,6 +11,14 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "083jmhzmb60rmqw0fhbnlxyblzkmpn3k6zc75xq90x5g3h60wib4";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Fixed upstream, but not yet released
|
||||
(fetchpatch {
|
||||
url = "https://github.com/Ultimaker/CuraEngine/commit/5aad55bf67e52ce5bdb27a3925af8a4cab441b38.patch";
|
||||
sha256 = "1hxbslzhkvdg8p33mvlbrpw62gwfqpsdbfca6yhdng9hifl86j3f";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = [ libarcus stb ];
|
||||
|
||||
|
|
|
@ -34,9 +34,10 @@ stdenv.mkDerivation rec {
|
|||
# RCC: Error in 'Resources/application.qrc': Cannot find file 'translations/gc_fr.qm'
|
||||
enableParallelBuilding = false;
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "Performance software for cyclists, runners and triathletes";
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
maintainers = [ stdenv.lib.maintainers.ocharles ];
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.ocharles ];
|
||||
license = licenses.gpl3;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -19,11 +19,11 @@ stdenv.mkDerivation rec {
|
|||
|
||||
qmakeFlags = [ "CONFIG+=zim_support" ];
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://goldendict.org/;
|
||||
description = "A feature-rich dictionary lookup program";
|
||||
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
maintainers = with stdenv.lib.maintainers; [ gebner astsmtl ];
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ gebner astsmtl ];
|
||||
license = licenses.gpl3Plus;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -13,11 +13,11 @@ stdenv.mkDerivation rec {
|
|||
libgphoto2 fuse glib libtool
|
||||
];
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "Fuse FS to mount a digital camera";
|
||||
maintainers = [
|
||||
stdenv.lib.maintainers.raskin
|
||||
];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
homepage = http://www.gphoto.org/;
|
||||
maintainers = [ maintainers.raskin ];
|
||||
platforms = platforms.linux;
|
||||
license = with licenses; [ lgpl2 gpl2 ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gpsprune-${version}";
|
||||
version = "19";
|
||||
version = "19.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://activityworkshop.net/software/gpsprune/gpsprune_${version}.jar";
|
||||
sha256 = "0n08fg55zgpfg1f6lq0n3ngi0n8af1r0rhmbnpik5mjng4m9g3x5";
|
||||
sha256 = "1drw30z21sdzjc2mcm13yqb5aipvcxmslb2yn6xs3b6b2mx3h2zy";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
|
|
@ -14,8 +14,9 @@ stdenv.mkDerivation {
|
|||
libglade GConf pcre libappindicator-gtk2
|
||||
];
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "GUI for XNEUR keyboard layout switcher";
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
platforms = platforms.linux;
|
||||
license = with licenses; [ gpl2 gpl3 ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -20,6 +20,7 @@ in mkDerivation rec {
|
|||
meta = with lib; {
|
||||
homepage = http://www.krename.net;
|
||||
description = "A powerful batch renamer for KDE";
|
||||
license = licenses.gpl2;
|
||||
inherit (kconfig.meta) platforms;
|
||||
maintainers = with maintainers; [ peterhoeg ];
|
||||
};
|
||||
|
|
|
@ -22,9 +22,10 @@ buildGoPackage rec {
|
|||
sha256 = "0zp51g9i8rw6acs4vnrxclbxa5z1v0a0m1xx27szszp0rphcczkx";
|
||||
};
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "Simple stock tracker implemented in go";
|
||||
homepage = https://github.com/mop-tracker/mop;
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
license = licenses.mit;
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -18,13 +18,13 @@ assert speechdSupport -> speechd != null;
|
|||
with stdenv.lib;
|
||||
stdenv.mkDerivation rec {
|
||||
name = "navit-${version}";
|
||||
version = "0.5.1";
|
||||
version = "0.5.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "navit-gps";
|
||||
repo = "navit";
|
||||
rev = "v${version}";
|
||||
sha256 = "0jf2gjh2sszr5y5c2wvamfj2qggi2y5k3ynb32pak9vhf5xyl5xj";
|
||||
sha256 = "071drvqzxpxbfh0lf0lra5a97rv8ny40l96n9xl0dx0s8w30j61i";
|
||||
};
|
||||
|
||||
sample_map = fetchurl {
|
||||
|
@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
|
|||
# we choose only cmdline and speech-dispatcher speech options.
|
||||
# espeak builtins is made for non-cmdline OS as winCE
|
||||
cmakeFlags = [
|
||||
"-DSAMPLE_MAP=n " "-DCMAKE_BUILD_TYPE=RelWithDebInfo"
|
||||
"-DSAMPLE_MAP=n " "-DCMAKE_BUILD_TYPE=Release"
|
||||
"-Dspeech/qt5_espeak=FALSE" "-Dsupport/espeak=FALSE"
|
||||
];
|
||||
|
||||
|
@ -68,10 +68,11 @@ stdenv.mkDerivation rec {
|
|||
'';
|
||||
|
||||
# TODO: fix upstream?
|
||||
postFixup = ''
|
||||
for lib in $(find "$out/lib/navit/" -iname "*.so" ); do
|
||||
patchelf --set-rpath ${makeLibraryPath buildInputs} $lib
|
||||
done
|
||||
libPath = stdenv.lib.makeLibraryPath ([ stdenv.cc.libc ] ++ buildInputs );
|
||||
postFixup =
|
||||
''
|
||||
find "$out/lib" -type f -name "*.so" -exec patchelf --set-rpath $libPath {} \;
|
||||
|
||||
wrapProgram $out/bin/navit \
|
||||
--prefix PATH : ${makeBinPath (
|
||||
optional xkbdSupport xkbd
|
||||
|
|
|
@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
|
|||
"$out/lib:${neon}/lib:${libusb.out}/lib:${avahi}/lib:${freeipmi}/lib"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "Network UPS Tools";
|
||||
longDescription = ''
|
||||
Network UPS Tools is a collection of programs which provide a common
|
||||
|
@ -41,8 +41,9 @@ stdenv.mkDerivation rec {
|
|||
'';
|
||||
homepage = http://www.networkupstools.org/;
|
||||
repositories.git = https://github.com/networkupstools/nut.git;
|
||||
platforms = with stdenv.lib.platforms; linux;
|
||||
maintainers = with stdenv.lib.maintainers; [ pierron ];
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.pierron ];
|
||||
license = with licenses; [ gpl1Plus gpl2Plus gpl3Plus ];
|
||||
priority = 10;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
|
|||
buildInputs = [ ncurses gsl ] ++ (with ocamlPackages; [ ocaml camlp4 ]);
|
||||
|
||||
meta = {
|
||||
homepage = http://pessimization.com/software/orpie/;
|
||||
homepage = https://github.com/pelzlpj/orpie;
|
||||
description = "A fullscreen RPN calculator for the console";
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
|
|
|
@ -31,6 +31,7 @@ pythonPackages.buildPythonApplication rec {
|
|||
homepage = https://github.com/linuxerwang/pdf-quench;
|
||||
description = "A visual tool for cropping pdf files";
|
||||
platforms = platforms.linux;
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ flokli ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -32,7 +32,7 @@ python3Packages.buildPythonApplication rec {
|
|||
doCheck = false; # no tests
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://gna.org/projects/pdfshuffler/;
|
||||
homepage = https://sourceforge.net/p/pdfshuffler/wiki/Home;
|
||||
description = "Merge or split pdf documents and rotate, crop and rearrange their pages";
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ mic92 ];
|
||||
|
|
|
@ -17,7 +17,6 @@ stdenv.mkDerivation {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A viewer for info files";
|
||||
homepage = https://alioth.debian.org/projects/pinfo/;
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
|
|
|
@ -28,10 +28,11 @@ stdenv.mkDerivation rec {
|
|||
cp PosteRazor $out/bin
|
||||
'';
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://posterazor.sourceforge.net/;
|
||||
description = "Cuts a raster image into pieces which can afterwards be printed out and assembled to a poster";
|
||||
maintainers = [ stdenv.lib.maintainers.madjar ];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
maintainers = [ maintainers.madjar ];
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -27,6 +27,8 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with lib; {
|
||||
maintainers = with maintainers; [ cstrahan ];
|
||||
platforms = platforms.darwin;
|
||||
homepage = https://github.com/julienXX/terminal-notifier;
|
||||
license = licenses.mit;
|
||||
platforms = platforms.darwin;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A command-line time tracker";
|
||||
homepage = https://tasktools.org/projects/timewarrior.html;
|
||||
homepage = https://taskwarrior.org/docs/timewarrior;
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ mrVanDalo ];
|
||||
platforms = platforms.linux ++ platforms.darwin;
|
||||
|
|
|
@ -42,7 +42,10 @@ stdenv.mkDerivation rec {
|
|||
'';
|
||||
|
||||
homepage = https://wordnet.princeton.edu/;
|
||||
|
||||
license = {
|
||||
fullName = "WordNet 3.0 license";
|
||||
url = https://wordnet.princeton.edu/license-and-commercial-use;
|
||||
};
|
||||
maintainers = [ ];
|
||||
platforms = with stdenv.lib.platforms; linux ++ darwin;
|
||||
};
|
||||
|
|
|
@ -23,7 +23,10 @@ stdenv.mkDerivation rec {
|
|||
addToSearchPath PATH .bin
|
||||
'';
|
||||
|
||||
meta = {
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
meta = with stdenv.lib; {
|
||||
description = "Autoclicker application, which enables you to automatically click the left mousebutton";
|
||||
homepage = http://xautoclick.sourceforge.net;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -13,9 +13,10 @@ stdenv.mkDerivation {
|
|||
echo $NIX_LDFLAGS
|
||||
'';
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "A viewer for Microsoft HTML Help files";
|
||||
homepage = http://xchm.sourceforge.net;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -41,11 +41,11 @@ stdenv.mkDerivation {
|
|||
--set QT_PLUGIN_PATH ${qtbase.bin}/${qtbase.qtPluginPrefix}:${qtsvg.bin}/${qtbase.qtPluginPrefix}
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = http://www.foolabs.com/xpdf/;
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://www.xpdfreader.com;
|
||||
description = "Viewer for Portable Document Format (PDF) files";
|
||||
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
maintainers = [ stdenv.lib.maintainers.peti ];
|
||||
license = with licenses; [ gpl2 gpl3 ];
|
||||
platforms = platforms.unix;
|
||||
maintainers = [ maintainers.peti ];
|
||||
};
|
||||
}
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue