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
test -e $out/bin/setBfreeUI
)'';
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,25 +43,25 @@ 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)
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,
graphics, mathematics, interactive content, etc.). The rendering
engine uses high-quality typesetting algorithms so as to produce
professionally looking documents, which can either be printed out or
presented from a laptop.
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,
graphics, mathematics, interactive content, etc.). The rendering
engine uses high-quality typesetting algorithms so as to produce
professionally looking documents, which can either be printed out or
presented from a laptop.
The software includes a text editor with support for mathematical
formulas, a small technical picture editor and a tool for making
presentations from a laptop. Moreover, TeXmacs can be used as an
interface for many external systems for computer algebra, numerical
analysis, statistics, etc. New presentation styles can be written
by the user and new features can be added to the editor using the
Scheme extension language. A native spreadsheet and tools for
collaborative authoring are planned for later.
'';
The software includes a text editor with support for mathematical
formulas, a small technical picture editor and a tool for making
presentations from a laptop. Moreover, TeXmacs can be used as an
interface for many external systems for computer algebra, numerical
analysis, statistics, etc. New presentation styles can be written
by the user and new features can be added to the editor using the
Scheme extension language. A native spreadsheet and tools for
collaborative authoring are planned for later.
'';
homepage = "http://texmacs.org/";
license = lib.licenses.gpl2Plus;
};

View File

@ -16,18 +16,18 @@ 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
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.
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.
Also includes a layout analyser able to separate the columns or
blocks of text normally found on printed pages.
Also includes a layout analyser able to separate the columns or
blocks of text normally found on printed pages.
Ocrad can be used as a stand-alone console application, or as a
backend to other programs.
'';
Ocrad can be used as a stand-alone console application, or as a
backend to other programs.
'';
license = licenses.gpl3Plus;
maintainers = with maintainers; [ pSub ];

View File

@ -47,13 +47,13 @@ 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
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
in mind (follows Gnome HIG2).
'';
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
in mind (follows Gnome HIG2).
'';
license = licenses.gpl3;
homepage = "https://siyanpanayotov.com/project/viewnior/";
maintainers = with maintainers; [ smironov artturin ];

View File

@ -9,9 +9,10 @@ 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 ];
license = licenses.gpl2Plus;
platforms = platforms.linux;

View File

@ -34,16 +34,16 @@ stdenv.mkDerivation rec {
meta = {
description = "Lexical database for the English language";
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.
The resulting network of meaningfully related words and concepts can
be navigated with the browser. WordNet is also freely and publicly
available for download. WordNet's structure makes it a useful tool
for computational linguistics and natural language processing.
'';
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.
The resulting network of meaningfully related words and concepts can
be navigated with the browser. WordNet is also freely and publicly
available for download. WordNet's structure makes it a useful tool
for computational linguistics and natural language processing.
'';
homepage = "https://wordnet.princeton.edu/";
license = {

View File

@ -16,14 +16,14 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "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,
location in latitude and longitude and distance and heading in kilometers or miles,
both for short and long path.
'';
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,
location in latitude and longitude and distance and heading in kilometers or miles,
both for short and long path.
'';
homepage = "https://www.nongnu.org/xlog";
maintainers = [ maintainers.mafo ];
license = licenses.gpl3;

View File

@ -19,11 +19,11 @@ 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,
correctly shaded for the current position of the Sun.
By default, xearth updates the displayed image every five minutes.
'';
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.
'';
maintainers = [ maintainers.mafo ];
license = {
fullName = "xearth license";

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
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.'';
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.
'';
license = lib.licenses.gpl2;
homepage = "https://emboss.sourceforge.net/";
};

View File

@ -33,13 +33,13 @@ 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
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
data that can be tailored to the problems he or she is addressing.
'';
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
data that can be tailored to the problems he or she is addressing.
'';
homepage = "http://tulip.labri.fr/";

View File

@ -26,13 +26,13 @@ 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
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,
documentation, graphics, papers, and form letters.
'';
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,
documentation, graphics, papers, and form letters.
'';
license = lib.licenses.gpl3Plus;
maintainers = [ ];

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.
Please use 'buildGoModule' instead. Tips for migration can be found in the Go section of the nixpkgs manual.''
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,10 +36,11 @@ in stdenv.mkDerivation {
meta = with lib; {
description = "Monospace bitmap font aimed at programmers";
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.
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.
'';
homepage = "http://www.fial.com/~scott/tamsyn-font/";
downloadPage = "http://www.fial.com/~scott/tamsyn-font/download";

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"
'' + ''
# Help libgc's configure.
export CXXCPP="$CXX -E"
'';
patchPhase = ''

View File

@ -93,13 +93,13 @@ 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
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
development cycle.
'';
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
development cycle.
'';
homepage = "https://www.gnu.org/software/mit-scheme/";

View File

@ -39,14 +39,16 @@ stdenv.mkDerivation rec {
];
# tinycc configure flags copied from the tinycc derivation.
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
)'';
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 = ''(
CFLAGS="-DNDEBUG -DDEBUGVM=0 -DMUSL -D_GNU_SOURCE -DUSEEVDEV -DCOGMTVM=0 -DDUAL_MAPPED_CODE_ZONE=1"
LIBS="-lrt"
)'';
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 = ''(
CFLAGS="-DNDEBUG -DDEBUGVM=0 -DMUSL -D_GNU_SOURCE -DUSEEVDEV -D__ARM_ARCH_ISA_A64 -DARM64 -D__arm__ -D__arm64__ -D__aarch64__"
)'';
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 = ''(
CFLAGS="-DNDEBUG -DDEBUGVM=0"
)'';
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 = ''(
CFLAGS="-DNDEBUG -DDEBUGVM=0 -DCOGMTVM=0"
)'';
configureFlagsArray = ''
(
CFLAGS="-DNDEBUG -DDEBUGVM=0 -DCOGMTVM=0"
)
'';
configureFlags = [
"--with-vmversion=5.0"
"--with-src=src/spur64.cog"

View File

@ -92,14 +92,15 @@ 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" \
--prefix PONYPATH : "${lib.makeLibraryPath [ pcre2 openssl (placeholder "out") ]}"
'';
--prefix PATH ":" "${stdenv.cc}/bin" \
--set-default CC "$CC" \
--prefix PONYPATH : "${lib.makeLibraryPath [ pcre2 openssl (placeholder "out") ]}"
'';
# Stripping breaks linking for ponyc
dontStrip = true;

View File

@ -20,16 +20,16 @@ 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)
- rgbfix (checksum/header fixer)
- rgbgfx (PNGtoGame Boy graphics converter)
- rgbasm (assembler)
- rgblink (linker)
- rgbfix (checksum/header fixer)
- rgbgfx (PNGtoGame Boy graphics converter)
This is a fork of the original RGBDS which aims to make the programs more like other UNIX tools.
'';
This is a fork of the original RGBDS which aims to make the programs more like other UNIX tools.
'';
maintainers = with maintainers; [ matthewbauer NieDzejkob ];
platforms = platforms.all;
};

View File

@ -71,9 +71,9 @@ 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 = []
++ (lib.optional withDb db)

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,12 +26,12 @@ 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
Authentication and Security Layer (SASL) framework and
some SASL mechanisms. SASL is used in network servers
(e.g. IMAP, SMTP, etc.) to authenticate peers.
'';
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.
'';
homepage = "https://www.gnu.org/software/gsasl/";
license = lib.licenses.gpl3Plus;

View File

@ -24,13 +24,13 @@ stdenv.mkDerivation rec {
description = "Image viewer widget for GTK";
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
interpolation; GIF animation support.
'';
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
interpolation; GIF animation support.
'';
license = lib.licenses.lgpl2Plus;

View File

@ -44,11 +44,11 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Implementation of JavaScript written in Java";
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.
'';
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.
'';
homepage = "http://www.mozilla.org/rhino/";

View File

@ -36,20 +36,20 @@ 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
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,
selective sharing of stored data, adaptive compression, and more.
The library itself, which chop-backup builds upon, implements
storage techniques such as content-based addressing, content hash
keys, Merkle trees, similarity detection, and lossless compression.
It makes it easy to combine them in different ways. The
chop-archiver and chop-block-server tools, illustrated in the
manual, provide direct access to these facilities from the command
line. It is written in C and has Guile (Scheme) bindings.
'';
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,
selective sharing of stored data, adaptive compression, and more.
The library itself, which chop-backup builds upon, implements
storage techniques such as content-based addressing, content hash
keys, Merkle trees, similarity detection, and lossless compression.
It makes it easy to combine them in different ways. The
chop-archiver and chop-block-server tools, illustrated in the
manual, provide direct access to these facilities from the command
line. It is written in C and has Guile (Scheme) bindings.
'';
homepage = "https://www.nongnu.org/libchop/";
license = licenses.gpl3Plus;

View File

@ -44,11 +44,11 @@ stdenv.mkDerivation rec {
})
];
preConfigure =
'' echo "patching installation directory in \`extractor.c'..."
sed -i "src/main/extractor.c" \
-e "s|pexe[[:blank:]]*=.*$|pexe = strdup(\"$out/lib/\");|g"
'';
preConfigure = ''
echo "patching installation directory in \`extractor.c'..."
sed -i "src/main/extractor.c" \
-e "s|pexe[[:blank:]]*=.*$|pexe = strdup(\"$out/lib/\");|g"
'';
nativeBuildInputs = [ pkg-config ];
@ -71,26 +71,26 @@ stdenv.mkDerivation rec {
description = "Simple library for keyword extraction";
mainProgram = "extract";
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.
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.
The goal is to provide developers of file-sharing networks or
WWW-indexing bots with a universal library to obtain simple keywords
to match against queries. libextractor contains a shell-command
extract that, similar to the well-known file command, can extract
meta-data from a file an print the results to stdout.
The goal is to provide developers of file-sharing networks or
WWW-indexing bots with a universal library to obtain simple keywords
to match against queries. libextractor contains a shell-command
extract that, similar to the well-known file command, can extract
meta-data from a file an print the results to stdout.
Currently, libextractor supports the following formats: HTML, PDF,
PS, OLE2 (DOC, XLS, PPT), OpenOffice (sxw), StarOffice (sdw), DVI,
MAN, FLAC, MP3 (ID3v1 and ID3v2), NSF(E) (NES music), SID (C64
music), OGG, WAV, EXIV2, JPEG, GIF, PNG, TIFF, DEB, RPM, TAR(.GZ),
ZIP, ELF, S3M (Scream Tracker 3), XM (eXtended Module), IT (Impulse
Tracker), FLV, REAL, RIFF (AVI), MPEG, QT and ASF. Also, various
additional MIME types are detected.
'';
Currently, libextractor supports the following formats: HTML, PDF,
PS, OLE2 (DOC, XLS, PPT), OpenOffice (sxw), StarOffice (sdw), DVI,
MAN, FLAC, MP3 (ID3v1 and ID3v2), NSF(E) (NES music), SID (C64
music), OGG, WAV, EXIV2, JPEG, GIF, PNG, TIFF, DEB, RPM, TAR(.GZ),
ZIP, ELF, S3M (Scream Tracker 3), XM (eXtended Module), IT (Impulse
Tracker), FLV, REAL, RIFF (AVI), MPEG, QT and ASF. Also, various
additional MIME types are detected.
'';
license = licenses.gpl3Plus;

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.
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
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.'';
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.
'';
license = licenses.lgpl21;
maintainers = [ ];
platforms = with platforms; linux;

View File

@ -31,11 +31,11 @@ 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
gesture recognition engine based around a 3x3 grid. It's simple and
easy to work with, and notably used by FVWM.
'';
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.
'';
platforms = lib.platforms.linux;
};

View File

@ -20,10 +20,11 @@ stdenv.mkDerivation {
--replace g++ c++
'';
env.NIX_CFLAGS_COMPILE = ''-I${ilmbase.dev}/include/OpenEXR
-I${openexr.dev}/include/OpenEXR
-I${openfx.dev}/include/OpenFX
'';
env.NIX_CFLAGS_COMPILE = ''
-I${ilmbase.dev}/include/OpenEXR
-I${openexr.dev}/include/OpenEXR
-I${openfx.dev}/include/OpenFX
'';
buildInputs = [ re2 openfx zlib ilmbase libGLU libGL openexr ];

View File

@ -11,30 +11,30 @@ stdenv.mkDerivation rec {
buildInputs = [ zlib bzip2 ];
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'
'';
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'
'';
meta = {
description = "Tokyo Cabinet: a modern implementation of DBM";
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
as a key and a value. There is neither concept of data tables nor
data types. Records are organized in hash table, B+ tree, or
fixed-length array.
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
as a key and a value. There is neither concept of data tables nor
data types. Records are organized in hash table, B+ tree, or
fixed-length array.
Tokyo Cabinet is developed as the successor of GDBM and QDBM on the
following purposes. They are achieved and Tokyo Cabinet replaces
conventional DBM products: improves space efficiency, improves time
efficiency, improves parallelism, improves usability, improves
robustness, supports 64-bit architecture.
'';
Tokyo Cabinet is developed as the successor of GDBM and QDBM on the
following purposes. They are achieved and Tokyo Cabinet replaces
conventional DBM products: improves space efficiency, improves time
efficiency, improves parallelism, improves usability, improves
robustness, supports 64-bit architecture.
'';
license = lib.licenses.lgpl2Plus;

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
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'';
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
'';
license = licenses.bsd2;
homepage = "https://github.com/VMML/vmmlib/";

View File

@ -91,7 +91,7 @@ stdenv.mkDerivation ({
# Do the building
export LD=/usr/bin/clang # To avoid problem with -isysroot parameter that is unrecognized by the stock ld. Comparison with an impure build shows that it uses clang instead. Ugly, but it works
xcodebuild -target ${_target} -configuration ${_configuration} ${lib.optionalString (scheme != null) "-scheme ${scheme}"} -sdk ${_sdk} TARGETED_DEVICE_FAMILY="1, 2" ONLY_ACTIVE_ARCH=NO CONFIGURATION_TEMP_DIR=$TMPDIR CONFIGURATION_BUILD_DIR=$out ${lib.optionalString (generateIPA || generateXCArchive) "-archivePath \"${name}.xcarchive\" archive"} ${lib.optionalString release '' PROVISIONING_PROFILE=$PROVISIONING_PROFILE OTHER_CODE_SIGN_FLAGS="--keychain $HOME/Library/Keychains/$keychainName-db"''} ${xcodeFlags}
xcodebuild -target ${_target} -configuration ${_configuration} ${lib.optionalString (scheme != null) "-scheme ${scheme}"} -sdk ${_sdk} TARGETED_DEVICE_FAMILY="1, 2" ONLY_ACTIVE_ARCH=NO CONFIGURATION_TEMP_DIR=$TMPDIR CONFIGURATION_BUILD_DIR=$out ${lib.optionalString (generateIPA || generateXCArchive) "-archivePath \"${name}.xcarchive\" archive"} ${lib.optionalString release ''PROVISIONING_PROFILE=$PROVISIONING_PROFILE OTHER_CODE_SIGN_FLAGS="--keychain $HOME/Library/Keychains/$keychainName-db"''} ${xcodeFlags}
${lib.optionalString release ''
${lib.optionalString generateIPA ''

View File

@ -54,15 +54,17 @@ 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
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
at compile time. If you want to write a Web application, Eliom
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.'';
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
at compile time. If you want to write a Web application, Eliom
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.
'';
license = lib.licenses.lgpl21;

View File

@ -16,11 +16,11 @@ stdenv.mkDerivation rec {
meta = {
description = "C code complexity measurement tool";
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.
'';
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.
'';
license = lib.licenses.gpl3Plus;

View File

@ -17,13 +17,13 @@ stdenv.mkDerivation rec {
description = "C preprocessor directive indenter";
mainProgram = "cppi";
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
to the level of nesting of that directive.
'';
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
to the level of nesting of that directive.
'';
license = lib.licenses.gpl3Plus;

View File

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

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 SDL_VIDEODRIVER wayland \
--set SDL_VIDEO_WAYLAND_WMCLASS Mindustry
'' + ''
--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

@ -13,7 +13,7 @@
let
link_arguments = map
(x: '' "${x.filename}" '')
(x: ''"${x.filename}" '')
dictlist;
databases = lib.concatStrings (map
(x:

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
the wordnet data available to dictd and by extension for lookup with
the dict command. '';
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.
'';
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,12 +30,12 @@ stdenv.mkDerivation rec {
meta = {
description = "User-space NFSv3 file system 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.
'';
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.
'';
# The old http://unfs3.sourceforge.net/ has a <meta>
# http-equiv="refresh" pointing here, so we can assume that

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,16 +83,18 @@ multiStdenv.mkDerivation (finalAttrs: {
};
# Unpack subproject sources
postUnpack = ''(
cd "$sourceRoot/subprojects"
cp -R --no-preserve=mode,ownership ${asio} asio
cp -R --no-preserve=mode,ownership ${bitsery} bitsery
cp -R --no-preserve=mode,ownership ${clap} clap
cp -R --no-preserve=mode,ownership ${function2} function2
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
)'';
postUnpack = ''
(
cd "$sourceRoot/subprojects"
cp -R --no-preserve=mode,ownership ${asio} asio
cp -R --no-preserve=mode,ownership ${bitsery} bitsery
cp -R --no-preserve=mode,ownership ${clap} clap
cp -R --no-preserve=mode,ownership ${function2} function2
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,13 +16,13 @@ stdenv.mkDerivation rec {
asciidoc docbook_xml_dtd_45 docbook_xsl libxml2 libxslt
];
installPhase =
'' mkdir -p "$out/bin"
cp -v httpfs2 "$out/bin"
installPhase = ''
mkdir -p "$out/bin"
cp -v httpfs2 "$out/bin"
mkdir -p "$out/share/man/man1"
cp -v *.1 "$out/share/man/man1"
'';
mkdir -p "$out/share/man/man1"
cp -v *.1 "$out/share/man/man1"
'';
meta = {
description = "FUSE-based HTTP filesystem for Linux";

View File

@ -107,15 +107,17 @@ stdenv.mkDerivation (finalAttrs: {
outputs = [ "out" "doc" "man" ];
# Unpack subproject sources
postUnpack = ''(
cd "$sourceRoot/subprojects"
${lib.optionalString finalAttrs.finalPackage.doCheck ''
cp -R --no-preserve=mode,ownership ${cmocka.src} cmocka
''}
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}
)'';
postUnpack = ''
(
cd "$sourceRoot/subprojects"
${lib.optionalString finalAttrs.finalPackage.doCheck ''
cp -R --no-preserve=mode,ownership ${cmocka.src} cmocka
''}
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,21 +37,21 @@ 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
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
animations.
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
animations.
libplot is device-independent in the sense that its API (application
programming interface) does not depend on the type of graphics file
to be exported.
libplot is device-independent in the sense that its API (application
programming interface) does not depend on the type of graphics file
to be exported.
Besides libplot, the package contains command-line programs for
plotting scientific data. Many of them use libplot to export
graphics.
'';
Besides libplot, the package contains command-line programs for
plotting scientific data. Many of them use libplot to export
graphics.
'';
homepage = "https://www.gnu.org/software/plotutils/";

View File

@ -46,14 +46,15 @@ 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
./prebuild.sh
cd ..
sed -i -e 's/^povconfuser.*/povconfuser=$(TMPDIR)\/povray/' Makefile.{am,in}
sed -i -e 's/^povuser.*/povuser=$(TMPDIR)\/.povray/' Makefile.{am,in}
sed -i -e 's/^povowner.*/povowner=nobody/' Makefile.{am,in}
sed -i -e 's/^povgroup.*/povgroup=nogroup/' Makefile.{am,in}
'';
postPatch = ''
cd unix
./prebuild.sh
cd ..
sed -i -e 's/^povconfuser.*/povconfuser=$(TMPDIR)\/povray/' Makefile.{am,in}
sed -i -e 's/^povuser.*/povuser=$(TMPDIR)\/.povray/' Makefile.{am,in}
sed -i -e 's/^povowner.*/povowner=nobody/' Makefile.{am,in}
sed -i -e 's/^povgroup.*/povgroup=nogroup/' Makefile.{am,in}
'';
configureFlags = [
"COMPILED_BY=NixOS"

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,17 +184,17 @@ 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
Unified Bootloader, which was originally designed and implemented by
Erich Stefan Boleyn.
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.
Briefly, the boot loader is the first software program that runs when a
computer starts. It is responsible for loading and transferring
control to the operating system kernel software (such as the Hurd or
the Linux). The kernel, in turn, initializes the rest of the
operating system (e.g., GNU).
'';
Briefly, the boot loader is the first software program that runs when a
computer starts. It is responsible for loading and transferring
control to the operating system kernel software (such as the Hurd or
the Linux). The kernel, in turn, initializes the rest of the
operating system (e.g., GNU).
'';
homepage = "https://www.gnu.org/software/grub/";

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,23 +32,23 @@ 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
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.
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.
If you use xargs today you will find GNU Parallel very easy to use.
If you write loops in shell, you will find GNU Parallel may be able
to replace most of the loops and make them run faster by running
jobs in parallel. If you use ppss or pexec you will find GNU
Parallel will often make the command easier to read.
If you use xargs today you will find GNU Parallel very easy to use.
If you write loops in shell, you will find GNU Parallel may be able
to replace most of the loops and make them run faster by running
jobs in parallel. If you use ppss or pexec you will find GNU
Parallel will often make the command easier to read.
GNU Parallel makes sure output from the commands is the same output
as you would get had you run the commands sequentially. This makes
it possible to use output from GNU Parallel as input for other
programs.
'';
GNU Parallel makes sure output from the commands is the same output
as you would get had you run the commands sequentially. This makes
it possible to use output from GNU Parallel as input for other
programs.
'';
homepage = "https://www.gnu.org/software/parallel/";
license = licenses.gpl3Plus;
platforms = platforms.all;

View File

@ -41,27 +41,27 @@ 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
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
X3.64 (ISO 6429) and ISO 2022 standards (e.g., insert/delete line
and support for multiple character sets). There is a scrollback
history buffer for each virtual terminal and a copy-and-paste
mechanism that allows the user to move text regions between windows.
When screen is called, it creates a single window with a shell in it
(or the specified command) and then gets out of your way so that you
can use the program as you normally would. Then, at any time, you
can create new (full-screen) windows with other programs in them
(including more shells), kill the current window, view a list of the
active windows, turn output logging on and off, copy text between
windows, view the scrollback history, switch between windows, etc.
All windows run their programs completely independent of each other.
Programs continue to run when their window is currently not visible
and even when the whole screen session is detached from the users
terminal.
'';
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
X3.64 (ISO 6429) and ISO 2022 standards (e.g., insert/delete line
and support for multiple character sets). There is a scrollback
history buffer for each virtual terminal and a copy-and-paste
mechanism that allows the user to move text regions between windows.
When screen is called, it creates a single window with a shell in it
(or the specified command) and then gets out of your way so that you
can use the program as you normally would. Then, at any time, you
can create new (full-screen) windows with other programs in them
(including more shells), kill the current window, view a list of the
active windows, turn output logging on and off, copy text between
windows, view the scrollback history, switch between windows, etc.
All windows run their programs completely independent of each other.
Programs continue to run when their window is currently not visible
and even when the whole screen session is detached from the users
terminal.
'';
platforms = platforms.unix;
maintainers = [ ];

View File

@ -32,11 +32,11 @@ 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.
'';
'';
platforms = platforms.unix;
maintainers = with maintainers; [ rps ];

View File

@ -36,12 +36,12 @@ 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
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.
'';
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.
'';
homepage = "https://www.gnu.org/software/uucp/uucp.html";

View File

@ -25,16 +25,18 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Clients for ARGUS";
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
flow technology, processing packets, either on the wire or in
captures, into advanced network flow data. The data, its models,
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. '';
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
flow technology, processing packets, either on the wire or in
captures, into advanced network flow data. The data, its models,
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.
'';
homepage = "http://qosient.com/argus";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ leenaars ];

View File

@ -29,15 +29,17 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Audit Record Generation and Utilization System for networks";
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
captures, into advanced network flow data. The data, its models,
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. '';
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
captures, into advanced network flow data. The data, its models,
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.
'';
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,12 +76,12 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Collection of common network programs";
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.
'';
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.
'';
homepage = "https://www.gnu.org/software/inetutils/";
license = licenses.gpl3Plus;

View File

@ -75,12 +75,12 @@ 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,
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.
'';
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.
'';
mainProgram = "wget";
maintainers = with maintainers; [ fpletz ];
platforms = platforms.all;

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,12 +26,12 @@ 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
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.
'';
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.
'';
license = lib.licenses.gpl2Only;

View File

@ -19,28 +19,28 @@ 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
or block device (hard disc, cdrom, etc) to another, trying hard to
rescue data in case of read errors.
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.
The basic operation of ddrescue is fully automatic. That is, you
don't have to wait for an error, stop the program, read the log, run
it in reverse mode, etc.
The basic operation of ddrescue is fully automatic. That is, you
don't have to wait for an error, stop the program, read the log, run
it in reverse mode, etc.
If you use the logfile feature of ddrescue, the data is rescued very
efficiently (only the needed blocks are read). Also you can
interrupt the rescue at any time and resume it later at the same
point.
If you use the logfile feature of ddrescue, the data is rescued very
efficiently (only the needed blocks are read). Also you can
interrupt the rescue at any time and resume it later at the same
point.
Automatic merging of backups: If you have two or more damaged copies
of a file, cdrom, etc, and run ddrescue on all of them, one at a
time, with the same output file, you will probably obtain a complete
and error-free file. This is so because the probability of having
damaged areas at the same places on different input files is very
low. Using the logfile, only the needed blocks are read from the
second and successive copies.
'';
Automatic merging of backups: If you have two or more damaged copies
of a file, cdrom, etc, and run ddrescue on all of them, one at a
time, with the same output file, you will probably obtain a complete
and error-free file. This is so because the probability of having
damaged areas at the same places on different input files is very
low. Using the logfile, only the needed blocks are read from the
second and successive copies.
'';
homepage = "https://www.gnu.org/software/ddrescue/ddrescue.html";

View File

@ -21,19 +21,19 @@ 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
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
most users will be interested in are sensor monitoring, system event
monitoring, power control, and serial-over-LAN (SOL). The FreeIPMI
tools and libraries listed below should provide users with the
ability to access and utilize these and many other features. A
number of useful features for large HPC or cluster environments have
also been implemented into FreeIPMI. See the README or FAQ for more
info.
'';
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
most users will be interested in are sensor monitoring, system event
monitoring, power control, and serial-over-LAN (SOL). The FreeIPMI
tools and libraries listed below should provide users with the
ability to access and utilize these and many other features. A
number of useful features for large HPC or cluster environments have
also been implemented into FreeIPMI. See the README or FAQ for more
info.
'';
homepage = "https://www.gnu.org/software/freeipmi/";
downloadPage = "https://www.gnu.org/software/freeipmi/download.html";

View File

@ -29,7 +29,7 @@ buildGoModule rec {
'';
# Install icons
postInstall = '' make install DESTDIR=$out '';
postInstall = ''make install DESTDIR=$out'';
meta = with lib; {
description = "Gopsutil-based command to display system usage info";

View File

@ -12,14 +12,14 @@ 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
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.
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.
Safecopy includes a low level IO layer to read CDROM disks in raw mode, and issue device
resets and other helpful low level operations on a number of other device classes.
'';
Safecopy includes a low level IO layer to read CDROM disks in raw mode, and issue device
resets and other helpful low level operations on a number of other device classes.
'';
homepage = "https://safecopy.sourceforge.net";

View File

@ -31,16 +31,16 @@ 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
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
languages.
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
languages.
Enscript can be easily extended to handle different output media and
it has many options that can be used to customize printouts.
'';
Enscript can be easily extended to handle different output media and
it has many options that can be used to customize printouts.
'';
license = lib.licenses.gpl3Plus;

View File

@ -47,11 +47,11 @@ 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
produced by the diff program and applies those differences to one or
more original files, producing patched versions.
'';
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.
'';
homepage = "https://savannah.gnu.org/projects/patch";

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"