treewide: Fix indentation in strings

The indentation stripping semantics of strings are fairly bad and have a
few gotchas where the resulting string has not the intended indentation.
This commit fixes most if not all such instances in Nixpkgs.

I tried to strive a balance between keeping the diff small and
reformatting/refactoring the code to look better. In general,
reformatting should be left to Nixfmt.

Note that this causes a lot of rebuilds by design. All changes need to
be thoroughly vetted and reviewed for correctness. There is no automatic
way to prove correctness.

List of files to fix generated by running
https://gerrit.lix.systems/c/lix/+/2092 on Nixpkgs and looking at the
warnings.
This commit is contained in:
piegames 2024-10-21 19:58:13 +02:00
parent d5627dfcd4
commit 68927918d0
82 changed files with 551 additions and 512 deletions

View File

@ -49,8 +49,7 @@ stdenv.mkDerivation rec {
'';
meta = with lib; {
description = ''A real-time graphical programming environment for
audio, video, and graphical processing'';
description = ''A real-time graphical programming environment for audio, video, and graphical processing'';
homepage = "http://puredata.info";
license = licenses.bsd3;
platforms = platforms.linux ++ platforms.darwin;

View File

@ -36,10 +36,12 @@ stdenv.mkDerivation rec {
doInstallCheck = true;
installCheckPhase = ''(
set -x
installCheckPhase = ''
(
set -x;
test -e $out/bin/setBfreeUI
)'';
)
'';
enableParallelBuilding = true;

View File

@ -99,8 +99,8 @@ stdenv.mkDerivation (finalAttrs: {
homepage = "https://libresprite.github.io/";
description = "Animated sprite editor & pixel art tool, fork of Aseprite";
license = licenses.gpl2Only;
longDescription =
''LibreSprite is a program to create animated sprites. Its main features are:
longDescription = ''
LibreSprite is a program to create animated sprites. Its main features are:
- Sprites are composed by layers & frames (as separated concepts).
- Supported color modes: RGBA, Indexed (palettes up to 256 colors), and Grayscale.

View File

@ -43,8 +43,8 @@ rec {
meta = {
description = "WYSIWYW editing platform with special features for scientists";
longDescription =
'' GNU TeXmacs is a free wysiwyw (what you see is what you want)
longDescription = ''
GNU TeXmacs is a free wysiwyw (what you see is what you want)
editing platform with special features for scientists. The software
aims to provide a unified and user friendly framework for editing
structured documents with different types of content (text,

View File

@ -16,8 +16,8 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Optical character recognition (OCR) program & library";
longDescription =
'' GNU Ocrad is an OCR (Optical Character Recognition) program based on
longDescription = ''
GNU Ocrad is an OCR (Optical Character Recognition) program based on
a feature extraction method. It reads images in pbm (bitmap), pgm
(greyscale) or ppm (color) formats and produces text in byte (8-bit)
or UTF-8 formats.

View File

@ -47,8 +47,8 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Fast and simple image viewer";
longDescription =
'' Viewnior is insipred by big projects like Eye of Gnome, because of it's
longDescription = ''
Viewnior is insipred by big projects like Eye of Gnome, because of it's
usability and richness,and by GPicView, because of it's lightweight design and
minimal interface. So here comes Viewnior - small and light, with no compromise
with the quality of it's functions. The program is made with better integration

View File

@ -9,7 +9,8 @@ mkDerivation {
homepage = "https://apps.kde.org/picmi/";
description = "Nonogram game";
mainProgram = "picmi";
longDescription = ''The goal is to reveal the hidden pattern in the board by coloring or
longDescription = ''
The goal is to reveal the hidden pattern in the board by coloring or
leaving blank the cells in a grid according to numbers given at the side of the grid.
'';
maintainers = with maintainers; [ freezeboy ];

View File

@ -34,8 +34,8 @@ stdenv.mkDerivation rec {
meta = {
description = "Lexical database for the English language";
longDescription =
'' WordNet® is a large lexical database of English. Nouns, verbs,
longDescription = ''
WordNet® is a large lexical database of English. Nouns, verbs,
adjectives and adverbs are grouped into sets of cognitive synonyms
(synsets), each expressing a distinct concept. Synsets are
interlinked by means of conceptual-semantic and lexical relations.

View File

@ -16,8 +16,8 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Amateur radio logging program";
longDescription =
'' Xlog is an amateur radio logging program.
longDescription = ''
Xlog is an amateur radio logging program.
It supports cabrillo, ADIF, trlog (format also used by tlf),
and EDI (ARRL VHF/UHF contest format) and can import twlog, editest and OH1AA logbook files.
Xlog is able to do DXCC lookups and will display country information, CQ and ITU zone,

View File

@ -19,8 +19,8 @@ stdenv.mkDerivation rec {
description = "sets the X root window to an image of the Earth";
mainProgram = "xearth";
homepage = "https://xearth.org";
longDescription =
'' Xearth sets the X root window to an image of the Earth, as seen from your favorite vantage point in space,
longDescription = ''
Xearth sets the X root window to an image of the Earth, as seen from your favorite vantage point in space,
correctly shaded for the current position of the Sun.
By default, xearth updates the displayed image every five minutes.
'';

View File

@ -96,8 +96,7 @@ stdenv.mkDerivation rec {
doCheck = false;
meta = with lib; {
description = ''Basic Local Alignment Search Tool (BLAST) finds regions of
similarity between biological sequences'';
description = ''Basic Local Alignment Search Tool (BLAST) finds regions of similarity between biological sequences'';
homepage = "https://blast.ncbi.nlm.nih.gov/Blast.cgi";
license = licenses.publicDomain;

View File

@ -43,9 +43,11 @@ stdenv.mkDerivation (finalAttrs: {
meta = with lib; {
description = "Computational Morphometry Toolkit";
mainProgram = "cmtk";
longDescription = ''A software toolkit for computational morphometry of
longDescription = ''
A software toolkit for computational morphometry of
biomedical images, CMTK comprises a set of command line tools and a
back-end general-purpose library for processing and I/O'';
back-end general-purpose library for processing and I/O
'';
maintainers = with maintainers; [ tbenst ];
platforms = platforms.all;
license = licenses.gpl3Plus;

View File

@ -19,11 +19,13 @@ stdenv.mkDerivation rec {
meta = {
description = "European Molecular Biology Open Software Suite";
longDescription = ''EMBOSS is a free Open Source software analysis package
longDescription = ''
EMBOSS is a free Open Source software analysis package
specially developed for the needs of the molecular biology (e.g. EMBnet)
user community, including libraries. The software automatically copes with
data in a variety of formats and even allows transparent retrieval of
sequence data from the web.'';
sequence data from the web.
'';
license = lib.licenses.gpl2;
homepage = "https://emboss.sourceforge.net/";
};

View File

@ -33,8 +33,8 @@ stdenv.mkDerivation rec {
meta = {
description = "Visualization framework for the analysis and visualization of relational data";
longDescription =
'' Tulip is an information visualization framework dedicated to the
longDescription = ''
Tulip is an information visualization framework dedicated to the
analysis and visualization of relational data. Tulip aims to
provide the developer with a complete library, supporting the design
of interactive information visualization applications for relational

View File

@ -26,8 +26,8 @@ stdenv.mkDerivation rec {
meta = {
homepage = "https://www.gnu.org/software/rcs/";
description = "Revision control system";
longDescription =
'' The GNU Revision Control System (RCS) manages multiple revisions of
longDescription = ''
The GNU Revision Control System (RCS) manages multiple revisions of
files. RCS automates the storing, retrieval, logging,
identification, and merging of revisions. RCS is useful for text
that is revised frequently, including source code, programs,

View File

@ -49,7 +49,7 @@ let
# feature, but rather to make the program more robustly self-
# contained.
postInstall = ''${o.postInstall or ""}
postInstall = o.postInstall or "" + ''
mkdir -p $out/libexec
mv $out/bin/arion $out/libexec
makeWrapper $out/libexec/arion $out/bin/arion \

View File

@ -289,6 +289,7 @@ lib.warnIf (buildFlags != "" || buildFlagsArray != "")
"`buildFlags`/`buildFlagsArray` are deprecated and will be removed in the 24.11 release. Use the `ldflags` and/or `tags` attributes instead"
lib.warnIf (builtins.elem "-buildid=" ldflags) "`-buildid=` is set by default as ldflag by buildGoModule"
lib.warnIf (builtins.elem "-trimpath" GOFLAGS) "`-trimpath` is added by default to GOFLAGS by buildGoModule when allowGoReference isn't set to true"
lib.warn '''buildGoPackage' is deprecated and will be removed for the 25.05 release.
lib.warn ''
'buildGoPackage' is deprecated and will be removed for the 25.05 release.
Please use 'buildGoModule' instead. Tips for migration can be found in the Go section of the nixpkgs manual.''
package

View File

@ -51,9 +51,7 @@ let
lib.pipe attrs [
(lib.mapAttrsToList renderFunc)
(builtins.filter (v: v != ""))
(builtins.concatStringsSep "\n")
(section: ''${section}
'')
(lib.concatLines)
];
variablesSectionRendered = renderSomething renderVariable variables;

View File

@ -160,7 +160,8 @@ stdenv.mkDerivation (
# Build out of source tree and make the source tree read-only. This
# helps catch violations of the GNU Coding Standards (info
# "(standards) Configuration"), like `make distcheck' does.
'' mkdir "../build"
''
mkdir "../build"
cd "../build"
configureScript="../$sourceRoot/configure"
chmod -R a-w "../$sourceRoot"

View File

@ -86,9 +86,11 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
env.NIX_CFLAGS_COMPILE = '' -I${librem}/include/rem -I${gsm}/include/gsm
env.NIX_CFLAGS_COMPILE = ''
-I${librem}/include/rem -I${gsm}/include/gsm
-DHAVE_INTTYPES_H -D__GLIBC__
-D__need_timeval -D__need_timespec -D__need_time_t '';
-D__need_timeval -D__need_timespec -D__need_time_t
'';
doInstallCheck = true;
# CMake feature detection is prone to breakage between upgrades:

View File

@ -27,14 +27,16 @@ stdenv.mkDerivation (finalAttrs: {
description = "Collection of computer vision methods for solving geometric vision problems";
homepage = "https://github.com/laurentkneip/opengv";
license = lib.licenses.bsd2;
longDescription = ''OpenGV is a collection of computer vision methods for solving
longDescription = ''
OpenGV is a collection of computer vision methods for solving
geometric vision problems. It contains absolute-pose, relative-pose,
triangulation, and point-cloud alignment methods for the calibrated
case. All problems can be solved with central or non-central cameras,
and embedded into a random sample consensus or nonlinear optimization
context. Matlab and Python interfaces are implemented as well. The link
to the above pages also shows links to precompiled Matlab mex-libraries.
Please consult the documentation for more information.'';
Please consult the documentation for more information.
'';
maintainers = [ lib.maintainers.locochoco ];
platforms = lib.platforms.all;
};

View File

@ -19,8 +19,7 @@ stdenvNoCC.mkDerivation rec {
'';
meta = with lib; {
description = ''Typeface designed to mimic the national park service
signs that are carved using a router bit'';
description = ''Typeface designed to mimic the national park service signs that are carved using a router bit'';
homepage = "https://nationalparktypeface.com/";
license = licenses.ofl;
maintainers = [ ];

View File

@ -36,7 +36,8 @@ in stdenv.mkDerivation {
meta = with lib; {
description = "Monospace bitmap font aimed at programmers";
longDescription = ''Tamsyn is a monospace bitmap font, primarily aimed at
longDescription = ''
Tamsyn is a monospace bitmap font, primarily aimed at
programmers. It was derived from Gilles Boccon-Gibod's MonteCarlo. Tamsyn
font was further inspired by Gohufont, Terminus, Dina, Proggy, Fixedsys, and
Consolas.

View File

@ -24,9 +24,9 @@ stdenv.mkDerivation rec {
# For libuv on darwin
lib.optionalString stdenv.hostPlatform.isDarwin ''
export LIBTOOLIZE=libtoolize
'' +
'' + ''
# Help libgc's configure.
'' export CXXCPP="$CXX -E"
export CXXCPP="$CXX -E"
'';
patchPhase = ''

View File

@ -93,8 +93,8 @@ stdenv.mkDerivation {
meta = with lib; {
description = "MIT/GNU Scheme, a native code Scheme compiler";
longDescription =
'' MIT/GNU Scheme is an implementation of the Scheme programming
longDescription = ''
MIT/GNU Scheme is an implementation of the Scheme programming
language, providing an interpreter, compiler, source-code debugger,
integrated Emacs-like editor, and a large runtime library. MIT/GNU
Scheme is best suited to programming large applications with a rapid

View File

@ -39,14 +39,16 @@ stdenv.mkDerivation rec {
];
# tinycc configure flags copied from the tinycc derivation.
postConfigure = ''(
cd contrib/tinycc
postConfigure = ''
(
cd contrib/tinycc;
./configure --cc=cc \
--elfinterp=$(< $NIX_CC/nix-support/dynamic-linker) \
--crtprefix=${lib.getLib stdenv.cc.libc}/lib \
--sysincludepaths=${lib.getDev stdenv.cc.libc}/include:{B}/include \
--libpaths=${lib.getLib stdenv.cc.libc}/lib
)'';
)
'';
postInstall = ''
wrapProgram $out/bin/mkcl --prefix PATH : "${gcc}/bin"

View File

@ -118,10 +118,12 @@ let
platformDir = "linux64ARMv8";
vmName = "squeak.cog.spur";
scriptName = "squeak";
configureFlagsArray = ''(
configureFlagsArray = ''
(
CFLAGS="-DNDEBUG -DDEBUGVM=0 -DMUSL -D_GNU_SOURCE -DUSEEVDEV -DCOGMTVM=0 -DDUAL_MAPPED_CODE_ZONE=1"
LIBS="-lrt"
)'';
)
'';
configureFlags = [
"--with-vmversion=5.0"
"--with-src=src/spur64.cog"
@ -134,9 +136,11 @@ let
platformDir = "linux64ARMv8";
vmName = "squeak.stack.spur";
scriptName = "squeak";
configureFlagsArray = ''(
configureFlagsArray = ''
(
CFLAGS="-DNDEBUG -DDEBUGVM=0 -DMUSL -D_GNU_SOURCE -DUSEEVDEV -D__ARM_ARCH_ISA_A64 -DARM64 -D__arm__ -D__arm64__ -D__aarch64__"
)'';
)
'';
configureFlags = [
"--with-vmversion=5.0"
"--with-src=src/spur64.stack"
@ -151,9 +155,11 @@ let
platformDir = "linux64x64";
vmName = "newspeak.cog.spur";
scriptName = "newspeak";
configureFlagsArray = ''(
configureFlagsArray = ''
(
CFLAGS="-DNDEBUG -DDEBUGVM=0"
)'';
)
'';
configureFlags = [
"--with-vmversion=5.0"
"--with-src=src/spur64.cog.newspeak"
@ -166,9 +172,11 @@ let
platformDir = "linux64x64";
vmName = "squeak.cog.spur";
scriptName = "squeak";
configureFlagsArray = ''(
configureFlagsArray = ''
(
CFLAGS="-DNDEBUG -DDEBUGVM=0 -DCOGMTVM=0"
)'';
)
'';
configureFlags = [
"--with-vmversion=5.0"
"--with-src=src/spur64.cog"

View File

@ -92,9 +92,10 @@ stdenv.mkDerivation (rec {
# make: *** [Makefile:222: test-full-programs-release] Killed: 9
doCheck = !stdenv.hostPlatform.isDarwin;
installPhase = "make config=release prefix=$out "
+ lib.optionalString stdenv.hostPlatform.isDarwin ("bits=64 " + (lib.optionalString (!lto) "lto=no "))
+ '' install
installPhase = ''
make config=release prefix=$out ${
lib.optionalString stdenv.hostPlatform.isDarwin ("bits=64 " + (lib.optionalString (!lto) "lto=no "))
} install
wrapProgram $out/bin/ponyc \
--prefix PATH ":" "${stdenv.cc}/bin" \
--set-default CC "$CC" \

View File

@ -20,8 +20,8 @@ stdenv.mkDerivation rec {
homepage = "https://rgbds.gbdev.io/";
description = "Free assembler/linker package for the Game Boy and Game Boy Color";
license = licenses.mit;
longDescription =
''RGBDS (Rednex Game Boy Development System) is a free assembler/linker package for the Game Boy and Game Boy Color. It consists of:
longDescription = ''
RGBDS (Rednex Game Boy Development System) is a free assembler/linker package for the Game Boy and Game Boy Color. It consists of:
- rgbasm (assembler)
- rgblink (linker)

View File

@ -71,8 +71,8 @@ let
extraLibraries' = if extraLibraries == [] then [] else throw
"option 'extraLibraries' removed - use 'with*' options (e.g., 'withJava'), or overrideAttrs to inject extra build dependencies";
packInstall = swiplPath: pack:
''${swiplPath}/bin/swipl -g "pack_install(${pack}, [package_directory(\"${swiplPath}/lib/swipl/extra-pack\"), silent(true), interactive(false), git(false)])." -t "halt."
packInstall = swiplPath: pack: ''
${swiplPath}/bin/swipl -g "pack_install(${pack}, [package_directory(\"${swiplPath}/lib/swipl/extra-pack\"), silent(true), interactive(false), git(false)])." -t "halt."
'';
withGui' = withGui && !stdenv.hostPlatform.isDarwin;
optionalDependencies = []

View File

@ -62,8 +62,8 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "GNU Linear Programming Kit";
longDescription =
'' The GNU Linear Programming Kit is intended for solving large
longDescription = ''
The GNU Linear Programming Kit is intended for solving large
scale linear programming problems by means of the revised
simplex method. It is a set of routines written in the ANSI C
programming language and organized in the form of a library.

View File

@ -26,8 +26,8 @@ stdenv.mkDerivation (finalAttrs: {
description = "GNU SASL, Simple Authentication and Security Layer library";
mainProgram = "gsasl";
longDescription =
'' GNU SASL is a library that implements the IETF Simple
longDescription = ''
GNU SASL is a library that implements the IETF Simple
Authentication and Security Layer (SASL) framework and
some SASL mechanisms. SASL is used in network servers
(e.g. IMAP, SMTP, etc.) to authenticate peers.

View File

@ -24,8 +24,8 @@ stdenv.mkDerivation rec {
description = "Image viewer widget for GTK";
longDescription =
'' GtkImageView is a simple image viewer widget for GTK. Similar to
longDescription = ''
GtkImageView is a simple image viewer widget for GTK. Similar to
the image viewer panes in gThumb or Eye of Gnome. It makes writing
image viewing and editing applications easy. Among its features
are: mouse and keyboard zooming; scrolling and dragging; adjustable

View File

@ -44,8 +44,8 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Implementation of JavaScript written in Java";
longDescription =
'' Rhino is an open-source implementation of JavaScript written
longDescription = ''
Rhino is an open-source implementation of JavaScript written
entirely in Java. It is typically embedded into Java applications
to provide scripting to end users.
'';

View File

@ -36,8 +36,8 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Tools & library for data backup and distributed storage";
longDescription =
'' Libchop is a set of utilities and library for data backup and
longDescription = ''
Libchop is a set of utilities and library for data backup and
distributed storage. Its main application is chop-backup, an
encrypted backup program that supports data integrity checks,
versioning at little cost, distribution among several sites,

View File

@ -44,8 +44,8 @@ stdenv.mkDerivation rec {
})
];
preConfigure =
'' echo "patching installation directory in \`extractor.c'..."
preConfigure = ''
echo "patching installation directory in \`extractor.c'..."
sed -i "src/main/extractor.c" \
-e "s|pexe[[:blank:]]*=.*$|pexe = strdup(\"$out/lib/\");|g"
'';
@ -71,8 +71,8 @@ stdenv.mkDerivation rec {
description = "Simple library for keyword extraction";
mainProgram = "extract";
longDescription =
'' GNU libextractor is a library used to extract meta-data from files
longDescription = ''
GNU libextractor is a library used to extract meta-data from files
of arbitrary type. It is designed to use helper-libraries to perform
the actual extraction, and to be trivially extendable by linking
against external extractors for additional file types.

View File

@ -16,11 +16,13 @@ stdenv.mkDerivation rec {
meta = with lib; {
homepage = "https://xiph.org/fishsound/";
description = "Simple programming interface for decoding and encoding audio data using Xiph.org codecs (FLAC, Speex and Vorbis)";
longDescription = ''libfishsound by itself is designed to handle raw codec streams from a lower level layer such as UDP datagrams. When these codecs are used in files, they are commonly encapsulated in Ogg to produce Ogg FLAC, Speex and Ogg Vorbis files.
longDescription = ''
libfishsound by itself is designed to handle raw codec streams from a lower level layer such as UDP datagrams. When these codecs are used in files, they are commonly encapsulated in Ogg to produce Ogg FLAC, Speex and Ogg Vorbis files.
libfishsound is a wrapper around the existing codec libraries and provides a consistent, higher-level programming interface. It has been designed for use in a wide variety of applications; it has no direct dependencies on Ogg encapsulation, though it is most commonly used in conjunction with liboggz to decode or encode FLAC, Speex or Vorbis audio tracks in Ogg files, including Ogg Theora and Annodex.
FishSound has been developed and tested on GNU/Linux, Darwin/MacOSX and Win32. It probably also works on other Unix-like systems via GNU autoconf. For Win32: nmake Makefiles, Visual Studio .NET 2003 solution files and Visual C++ 6.0 workspace files are all provided in the source distribution.'';
FishSound has been developed and tested on GNU/Linux, Darwin/MacOSX and Win32. It probably also works on other Unix-like systems via GNU autoconf. For Win32: nmake Makefiles, Visual Studio .NET 2003 solution files and Visual C++ 6.0 workspace files are all provided in the source distribution.
'';
platforms = platforms.unix;
license = licenses.bsd3;
};

View File

@ -50,12 +50,13 @@ stdenv.mkDerivation rec {
homepage = "http://www.clutter-project.org/";
description = "Clutter-based toolkit";
mainProgram = "mx-create-image-cache";
longDescription =
''Mx is a widget toolkit using Clutter that provides a set of standard
longDescription = ''
Mx is a widget toolkit using Clutter that provides a set of standard
interface elements, including buttons, progress bars, scroll bars and
others. It also implements some standard managers. One other interesting
feature is the possibility setting style properties from a CSS format
file.'';
file.
'';
license = licenses.lgpl21;
maintainers = [ ];
platforms = with platforms; linux;

View File

@ -31,8 +31,8 @@ stdenv.mkDerivation rec {
homepage = "https://web.archive.org/web/20161204100704/http://etla.net/libstroke/";
license = lib.licenses.gpl2;
longDescription =
'' libstroke, last updated in 2001, still successfully provides a basic
longDescription = ''
libstroke, last updated in 2001, still successfully provides a basic
gesture recognition engine based around a 3x3 grid. It's simple and
easy to work with, and notably used by FVWM.
'';

View File

@ -20,7 +20,8 @@ stdenv.mkDerivation {
--replace g++ c++
'';
env.NIX_CFLAGS_COMPILE = ''-I${ilmbase.dev}/include/OpenEXR
env.NIX_CFLAGS_COMPILE = ''
-I${ilmbase.dev}/include/OpenEXR
-I${openexr.dev}/include/OpenEXR
-I${openfx.dev}/include/OpenFX
'';

View File

@ -11,8 +11,8 @@ stdenv.mkDerivation rec {
buildInputs = [ zlib bzip2 ];
postInstall =
'' sed -i "$out/lib/pkgconfig/tokyocabinet.pc" \
postInstall = ''
sed -i "$out/lib/pkgconfig/tokyocabinet.pc" \
-e 's|-lz|-L${zlib.out}/lib -lz|g;
s|-lbz2|-L${bzip2.out}/lib -lbz2|g'
'';
@ -20,8 +20,8 @@ stdenv.mkDerivation rec {
meta = {
description = "Tokyo Cabinet: a modern implementation of DBM";
longDescription =
'' Tokyo Cabinet is a library of routines for managing a database. The
longDescription = ''
Tokyo Cabinet is a library of routines for managing a database. The
database is a simple data file containing records, each is a pair of
a key and a value. Every key and value is serial bytes with
variable length. Both binary data and character string can be used

View File

@ -17,8 +17,8 @@ stdenv.mkDerivation rec {
meta = {
description = "Network interface of the Tokyo Cabinet DBM";
longDescription =
'' Tokyo Tyrant is a package of network interface to the DBM called
longDescription = ''
Tokyo Tyrant is a package of network interface to the DBM called
Tokyo Cabinet. Though the DBM has high performance, you might
bother in case that multiple processes share the same database, or
remote processes access the database. Thus, Tokyo Tyrant is

View File

@ -29,12 +29,14 @@ stdenv.mkDerivation rec {
broken = stdenv.hostPlatform.isDarwin;
description = "Vector and matrix math library implemented using C++ templates";
longDescription = ''vmmlib is a vector and matrix math library implemented
longDescription = ''
vmmlib is a vector and matrix math library implemented
using C++ templates. Its basic functionality includes a vector
and a matrix class, with additional functionality for the
often-used 3d and 4d vectors and 3x3 and 4x4 matrices.
More advanced functionality include solvers, frustum
computations and frustum culling classes, and spatial data structures'';
computations and frustum culling classes, and spatial data structures
'';
license = licenses.bsd2;
homepage = "https://github.com/VMML/vmmlib/";

View File

@ -54,7 +54,8 @@ buildDunePackage rec {
homepage = "http://ocsigen.org/eliom/";
description = "OCaml Framework for programming Web sites and client/server Web applications";
longDescription = ''Eliom is a framework for programming Web sites
longDescription = ''
Eliom is a framework for programming Web sites
and client/server Web applications. It introduces new concepts to
simplify programming common behaviours and uses advanced static
typing features of OCaml to check many properties of the Web site
@ -62,7 +63,8 @@ buildDunePackage rec {
makes possible to write the whole application as a single program
(client and server parts). A syntax extension is used to
distinguish both parts and the client side is compiled to JS using
Ocsigen Js_of_ocaml.'';
Ocsigen Js_of_ocaml.
'';
license = lib.licenses.lgpl21;

View File

@ -16,8 +16,8 @@ stdenv.mkDerivation rec {
meta = {
description = "C code complexity measurement tool";
longDescription =
'' GNU Complexity is a tool designed for analyzing the complexity of C
longDescription = ''
GNU Complexity is a tool designed for analyzing the complexity of C
program functions. It is very similar to the McCabe scoring, but
addresses several issues not considered in that scoring scheme.
'';

View File

@ -17,8 +17,8 @@ stdenv.mkDerivation rec {
description = "C preprocessor directive indenter";
mainProgram = "cppi";
longDescription =
'' GNU cppi indents C preprocessor directives to reflect their nesting
longDescription = ''
GNU cppi indents C preprocessor directives to reflect their nesting
and ensure that there is exactly one space character between each #if,
#elif, #define directive and the following token. The number of
spaces between the `#' and the following directive must correspond

View File

@ -11,7 +11,8 @@ stdenv.mkDerivation rec {
rev = "VERSION_${underscoreVersion}";
sha256 = "0ha6r7bcgf6pcn5gbd2sl7835givhda1jql49c232f1iair1yqyp";
};
patchPhase = ''substituteInPlace configure \
patchPhase = ''
substituteInPlace configure \
--replace /usr/local /
'';

View File

@ -34,8 +34,10 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Simple retro style arcade side-scroller game";
longDescription = '' FLTrator is a simple retro style arcade side-scroller game in which you steer a spaceship through a landscape with hostile rockets and other obstacles.
It has ten different levels and a level editor to create new levels or modify the existing.''; # from https://libregamewiki.org/FLTrator
longDescription = ''
FLTrator is a simple retro style arcade side-scroller game in which you steer a spaceship through a landscape with hostile rockets and other obstacles.
It has ten different levels and a level editor to create new levels or modify the existing.
''; # from https://libregamewiki.org/FLTrator
homepage = "https://fltrator.sourceforge.net/";
platforms = platforms.linux;
maintainers = [ maintainers.marius851000 ];

View File

@ -189,10 +189,10 @@ stdenv.mkDerivation {
--add-flags "-jar $out/share/mindustry.jar" \
${lib.optionalString stdenv.hostPlatform.isLinux "--suffix PATH : ${lib.makeBinPath [zenity]}"} \
--suffix LD_LIBRARY_PATH : ${lib.makeLibraryPath [libpulseaudio alsa-lib libjack2]} \
--set ALSA_PLUGIN_DIR ${alsa-plugins}/lib/alsa-lib/'' + lib.optionalString enableWayland '' \
--set ALSA_PLUGIN_DIR ${alsa-plugins}/lib/alsa-lib/ ${lib.optionalString enableWayland ''
--set SDL_VIDEODRIVER wayland \
--set SDL_VIDEO_WAYLAND_WMCLASS Mindustry
'' + ''
''}
# Retain runtime depends to prevent them from being cleaned up.
# Since a jar is a compressed archive, nix can't figure out that the dependency is actually in there,

View File

@ -22,8 +22,7 @@ stdenv.mkDerivation {
preConfigure = "substituteInPlace Makefile --replace /usr/local $out";
meta = with lib; {
description = ''A FUSE filesystem intended to be used
like Apache mod_rewrite'';
description = "A FUSE filesystem intended to be used like Apache mod_rewrite";
homepage = "https://github.com/sloonz/rewritefs";
license = licenses.gpl2Only;
maintainers = with maintainers; [ rnhmjoj ];

View File

@ -24,10 +24,11 @@ stdenv.mkDerivation rec {
meta = {
description = "dictd-compatible version of WordNet";
longDescription =
'' WordNet® is a large lexical database of English. This package makes
longDescription = ''
WordNet® is a large lexical database of English. This package makes
the wordnet data available to dictd and by extension for lookup with
the dict command. '';
the dict command.
'';
homepage = "https://wordnet.princeton.edu/";

View File

@ -20,8 +20,8 @@ stdenv.mkDerivation rec {
meta = {
description = "Program invocation and execution supervisor";
longDescription =
'' The name Pies (pronounced "p-yes") stands for Program Invocation and
longDescription = ''
The name Pies (pronounced "p-yes") stands for Program Invocation and
Execution Supervisor. This utility starts and controls execution of
external programs, called components. Each component is a
stand-alone program, which is executed in the foreground. Upon

View File

@ -30,8 +30,8 @@ stdenv.mkDerivation rec {
meta = {
description = "User-space NFSv3 file system server";
longDescription =
'' UNFS3 is a user-space implementation of the NFSv3 server
longDescription = ''
UNFS3 is a user-space implementation of the NFSv3 server
specification. It provides a daemon for the MOUNT and NFS
protocols, which are used by NFS clients for accessing files on the
server.

View File

@ -23,8 +23,8 @@ stdenv.mkDerivation rec {
broken = stdenv.hostPlatform.isDarwin;
description = "Restricted User Shell";
longDescription =
'' GNU Rush is a Restricted User Shell, designed for sites
longDescription = ''
GNU Rush is a Restricted User Shell, designed for sites
providing limited remote access to their resources, such as
svn or git repositories, scp, or the like. Using a
sophisticated configuration file, Rush gives you complete

View File

@ -83,7 +83,8 @@ multiStdenv.mkDerivation (finalAttrs: {
};
# Unpack subproject sources
postUnpack = ''(
postUnpack = ''
(
cd "$sourceRoot/subprojects"
cp -R --no-preserve=mode,ownership ${asio} asio
cp -R --no-preserve=mode,ownership ${bitsery} bitsery
@ -92,7 +93,8 @@ multiStdenv.mkDerivation (finalAttrs: {
cp -R --no-preserve=mode,ownership ${ghc_filesystem} ghc_filesystem
cp -R --no-preserve=mode,ownership ${tomlplusplus} tomlplusplus
cp -R --no-preserve=mode,ownership ${vst3} vst3
)'';
)
'';
patches = [
# Hard code bitbridge & runtime dependencies

View File

@ -16,8 +16,8 @@ stdenv.mkDerivation rec {
asciidoc docbook_xml_dtd_45 docbook_xsl libxml2 libxslt
];
installPhase =
'' mkdir -p "$out/bin"
installPhase = ''
mkdir -p "$out/bin"
cp -v httpfs2 "$out/bin"
mkdir -p "$out/share/man/man1"

View File

@ -107,7 +107,8 @@ stdenv.mkDerivation (finalAttrs: {
outputs = [ "out" "doc" "man" ];
# Unpack subproject sources
postUnpack = ''(
postUnpack = ''
(
cd "$sourceRoot/subprojects"
${lib.optionalString finalAttrs.finalPackage.doCheck ''
cp -R --no-preserve=mode,ownership ${cmocka.src} cmocka
@ -115,7 +116,8 @@ stdenv.mkDerivation (finalAttrs: {
cp -R --no-preserve=mode,ownership ${implot.src} implot-${implot.version}
cp -R --no-preserve=mode,ownership ${imgui.src} imgui-${imgui.version}
cp -R --no-preserve=mode,ownership ${vulkan-headers.src} Vulkan-Headers-${vulkan-headers.version}
)'';
)
'';
patches = [
# Add @libraryPath@ template variable to fix loading the preload

View File

@ -37,8 +37,8 @@ stdenv.mkDerivation rec {
meta = {
description = "Powerful C/C++ library for exporting 2D vector graphics";
longDescription =
'' The GNU plotutils package contains software for both programmers and
longDescription = ''
The GNU plotutils package contains software for both programmers and
technical users. Its centerpiece is libplot, a powerful C/C++
function library for exporting 2-D vector graphics in many file
formats, both vector and raster. It can also do vector graphics

View File

@ -46,7 +46,8 @@ stdenv.mkDerivation (finalAttrs: {
# the installPhase wants to put files into $HOME. I let it put the files
# to $TMPDIR, so they don't get into the $out
postPatch = '' cd unix
postPatch = ''
cd unix
./prebuild.sh
cd ..
sed -i -e 's/^povconfuser.*/povconfuser=$(TMPDIR)\/povray/' Makefile.{am,in}

View File

@ -97,8 +97,8 @@ stdenv.mkDerivation rec {
separateDebugInfo = !xenSupport;
preConfigure =
'' for i in "tests/util/"*.in
preConfigure = ''
for i in "tests/util/"*.in
do
sed -i "$i" -e's|/bin/bash|${stdenv.shell}|g'
done
@ -184,8 +184,8 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "GNU GRUB, the Grand Unified Boot Loader";
longDescription =
'' GNU GRUB is a Multiboot boot loader. It was derived from GRUB, GRand
longDescription = ''
GNU GRUB is a Multiboot boot loader. It was derived from GRUB, GRand
Unified Bootloader, which was originally designed and implemented by
Erich Stefan Boleyn.

View File

@ -34,8 +34,8 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "PvGrub image for use for booting PV Xen guests";
longDescription =
'' This package provides a PvGrub image for booting Para-Virtualized (PV)
longDescription = ''
This package provides a PvGrub image for booting Para-Virtualized (PV)
Xen guests
'';

View File

@ -32,8 +32,8 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Shell tool for executing jobs in parallel";
longDescription =
'' GNU Parallel is a shell tool for executing jobs in parallel. A job
longDescription = ''
GNU Parallel is a shell tool for executing jobs in parallel. A job
is typically a single command or a small script that has to be run
for each of the lines in the input. The typical input is a list of
files, a list of hosts, a list of users, or a list of tables.

View File

@ -41,8 +41,8 @@ stdenv.mkDerivation rec {
description = "Window manager that multiplexes a physical terminal";
license = licenses.gpl3Plus;
longDescription =
'' GNU Screen is a full-screen window manager that multiplexes a physical
longDescription = ''
GNU Screen is a full-screen window manager that multiplexes a physical
terminal between several processes, typically interactive shells.
Each virtual terminal provides the functions of the DEC VT100
terminal and, in addition, several control functions from the ANSI

View File

@ -32,8 +32,8 @@ stdenv.mkDerivation rec {
description = "Display serial port modem status lines";
license = licenses.gpl2Plus;
longDescription =
'' Statserial displays a table of the signals on a standard 9-pin or
longDescription = ''
Statserial displays a table of the signals on a standard 9-pin or
25-pin serial port, and indicates the status of the handshaking lines. It
can be useful for debugging problems with serial ports or modems.
'';

View File

@ -36,8 +36,8 @@ stdenv.mkDerivation (finalAttrs: {
description = "Unix-unix cp over serial line, also includes cu program";
mainProgram = "uucp";
longDescription =
'' Taylor UUCP is a free implementation of UUCP and is the standard
longDescription = ''
Taylor UUCP is a free implementation of UUCP and is the standard
UUCP used on the GNU system. If you don't know what UUCP is chances
are, nowadays, that you won't need it. If you do need it, you've
just found one of the finest UUCP implementations available.

View File

@ -25,7 +25,8 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Clients for ARGUS";
longDescription = ''Clients for Audit Record Generation and
longDescription = ''
Clients for Audit Record Generation and
Utilization System (ARGUS). The Argus Project is focused on developing all
aspects of large scale network situtational awareness derived from
network activity audit. Argus, itself, is next-generation network
@ -34,7 +35,8 @@ stdenv.mkDerivation rec {
formats, and attributes are designed to support Network
Operations, Performance and Security Management. If you need to
know what is going on in your network, right now or historically,
you will find Argus a useful tool. '';
you will find Argus a useful tool.
'';
homepage = "http://qosient.com/argus";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ leenaars ];

View File

@ -29,7 +29,8 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Audit Record Generation and Utilization System for networks";
longDescription = ''The Argus Project is focused on developing all
longDescription = ''
The Argus Project is focused on developing all
aspects of large scale network situtational awareness derived from
network activity audit. Argus, itself, is next-generation network
flow technology, processing packets, either on the wire or in
@ -37,7 +38,8 @@ stdenv.mkDerivation rec {
formats, and attributes are designed to support Network
Operations, Performance and Security Management. If you need to
know what is going on in your network, right now or historically,
you will find Argus a useful tool. '';
you will find Argus a useful tool.
'';
homepage = "http://qosient.com/argus";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ leenaars ];

View File

@ -103,8 +103,8 @@ in buildGoModule rec {
cp -R $src/pkg/status/templates $out/share/datadog-agent
wrapProgram "$out/bin/agent" \
--set PYTHONPATH "$out/${python.sitePackages}"'' + lib.optionalString withSystemd '' \
--prefix LD_LIBRARY_PATH : '' + lib.makeLibraryPath [ (lib.getLib systemd) rtloader ];
--set PYTHONPATH "$out/${python.sitePackages}"''
+ lib.optionalString withSystemd " --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ (lib.getLib systemd) rtloader ]}";
passthru.tests.version = testers.testVersion {
package = datadog-agent;

View File

@ -24,8 +24,8 @@ stdenv.mkDerivation rec {
meta = {
description = "Command-line RTMP client";
longDescription =
'' flvstreamer is an open source command-line RTMP client intended to
longDescription = ''
flvstreamer is an open source command-line RTMP client intended to
stream audio or video content from all types of flash or rtmp servers.
'';

View File

@ -76,8 +76,8 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Collection of common network programs";
longDescription =
'' The GNU network utilities suite provides the
longDescription = ''
The GNU network utilities suite provides the
following tools: ftp(d), hostname, ifconfig, inetd, logger, ping, rcp,
rexec(d), rlogin(d), rsh(d), syslogd, talk(d), telnet(d), tftp(d),
traceroute, uucpd, and whois.

View File

@ -75,8 +75,8 @@ stdenv.mkDerivation rec {
description = "Tool for retrieving files using HTTP, HTTPS, and FTP";
homepage = "https://www.gnu.org/software/wget/";
license = licenses.gpl3Plus;
longDescription =
'' GNU Wget is a free software package for retrieving files using HTTP,
longDescription = ''
GNU Wget is a free software package for retrieving files using HTTP,
HTTPS and FTP, the most widely-used Internet protocols. It is a
non-interactive commandline tool, so it may easily be called from
scripts, cron jobs, terminals without X-Windows support, etc.

View File

@ -23,8 +23,8 @@ stdenv.mkDerivation {
meta = with lib; {
description = "PC/SC IFD Handler based on libnfc";
mainProgram = "ifdnfc-activate";
longDescription =
'' libnfc Interface Plugin to be used in <code>services.pcscd.plugins</code>.
longDescription = ''
libnfc Interface Plugin to be used in <code>services.pcscd.plugins</code>.
It provides support for all readers which are not supported by ccid but by libnfc.
For activating your reader you need to run

View File

@ -26,8 +26,8 @@ python3Packages.buildPythonApplication {
description = "PGP Individual UID Signer (PIUS), quickly and easily sign UIDs on a set of PGP keys";
longDescription =
'' This software will allow you to quickly and easily sign each UID on
longDescription = ''
This software will allow you to quickly and easily sign each UID on
a set of PGP keys. It is designed to take the pain out of the
sign-all-the-keys part of PGP Keysigning Party while adding security
to the process.

View File

@ -19,8 +19,8 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "GNU ddrescue, a data recovery tool";
longDescription =
'' GNU ddrescue is a data recovery tool. It copies data from one file
longDescription = ''
GNU ddrescue is a data recovery tool. It copies data from one file
or block device (hard disc, cdrom, etc) to another, trying hard to
rescue data in case of read errors.

View File

@ -21,8 +21,8 @@ stdenv.mkDerivation rec {
meta = {
description = "Implementation of the Intelligent Platform Management Interface";
longDescription =
'' GNU FreeIPMI provides in-band and out-of-band IPMI software based on
longDescription = ''
GNU FreeIPMI provides in-band and out-of-band IPMI software based on
the IPMI v1.5/2.0 specification. The IPMI specification defines a
set of interfaces for platform management and is implemented by a
number vendors for system management. The features of IPMI that

View File

@ -12,8 +12,8 @@ stdenv.mkDerivation rec {
meta = {
description = "Data recovery tool for damaged hardware";
longDescription =
'' Safecopy is a data recovery tool which tries to extract as much data as possible from a
longDescription = ''
Safecopy is a data recovery tool which tries to extract as much data as possible from a
problematic (i.e. damaged sectors) source - like floppy drives, hard disk partitions, CDs,
tape devices, etc, where other tools like dd would fail due to I/O errors.

View File

@ -31,8 +31,8 @@ stdenv.mkDerivation rec {
meta = {
description = "Converter from ASCII to PostScript, HTML, or RTF";
longDescription =
'' GNU Enscript converts ASCII files to PostScript, HTML, or RTF and
longDescription = ''
GNU Enscript converts ASCII files to PostScript, HTML, or RTF and
stores generated output to a file or sends it directly to the
printer. It includes features for `pretty-printing'
(language-sensitive code highlighting) in several programming

View File

@ -47,8 +47,8 @@ stdenv.mkDerivation rec {
description = "GNU Patch, a program to apply differences to files";
mainProgram = "patch";
longDescription =
'' GNU Patch takes a patch file containing a difference listing
longDescription = ''
GNU Patch takes a patch file containing a difference listing
produced by the diff program and applies those differences to one or
more original files, producing patched versions.
'';

View File

@ -66,10 +66,9 @@ rec {
echo "Compiling a custom test"
set -x
emcc -O2 -s EMULATE_FUNCTION_POINTER_CASTS=1 xmllint.o \
./.libs/''
+ pkgs.lib.optionalString pkgs.stdenv.hostPlatform.isDarwin "libxml2.dylib "
+ pkgs.lib.optionalString (!pkgs.stdenv.hostPlatform.isDarwin) "libxml2.a "
+ '' `pkg-config zlib --cflags` `pkg-config zlib --libs` -o ./xmllint.test.js \
./.libs/${
if pkgs.stdenv.hostPlatform.isDarwin then "libxml2.dylib" else "libxml2.a"
} `pkg-config zlib --cflags` `pkg-config zlib --libs` -o ./xmllint.test.js \
--embed-file ./test/xmlid/id_err1.xml
echo "Using node to execute the test which basically outputs an error on stderr which we grep for"