···8283- [ollama](https://ollama.ai), server for running large language models locally.
840085- [hebbot](https://github.com/haecker-felix/hebbot), a Matrix bot to generate "This Week in X" like blog posts. Available as [services.hebbot](#opt-services.hebbot.enable).
8687- [Python Matter Server](https://github.com/home-assistant-libs/python-matter-server), a
···8283- [ollama](https://ollama.ai), server for running large language models locally.
8485+- [Mihomo](https://github.com/MetaCubeX/mihomo), a rule-based proxy in Go. Available as [services.mihomo.enable](#opt-services.mihomo.enable).
86+87- [hebbot](https://github.com/haecker-felix/hebbot), a Matrix bot to generate "This Week in X" like blog posts. Available as [services.hebbot](#opt-services.hebbot.enable).
8889- [Python Matter Server](https://github.com/home-assistant-libs/python-matter-server), a
+87-12
nixos/lib/make-options-doc/default.nix
···1-/* Generate JSON, XML and DocBook documentation for given NixOS options.
0000000000000000000000000000000000000000000000000000023- Minimal example:
45- { pkgs, }:
67- let
8- eval = import (pkgs.path + "/nixos/lib/eval-config.nix") {
9- baseModules = [
10- ../module.nix
11- ];
12- modules = [];
13- };
14- in pkgs.nixosOptionsDoc {
15- options = eval.options;
0000016 }
000001700000000000018*/
19{ pkgs
20, lib
···1+/**
2+ Generates documentation for [nix modules](https://nix.dev/tutorials/module-system/module-system.html).
3+4+ It uses the declared `options` to generate documentation in various formats.
5+6+ # Outputs
7+8+ This function returns an attribute set with the following entries.
9+10+ ## optionsCommonMark
11+12+ Documentation in CommonMark text format.
13+14+ ## optionsJSON
15+16+ All options in a JSON format suitable for further automated processing.
17+18+ `example.json`
19+ ```json
20+ {
21+ ...
22+ "fileSystems.<name>.options": {
23+ "declarations": ["nixos/modules/tasks/filesystems.nix"],
24+ "default": {
25+ "_type": "literalExpression",
26+ "text": "[\n \"defaults\"\n]"
27+ },
28+ "description": "Options used to mount the file system.",
29+ "example": {
30+ "_type": "literalExpression",
31+ "text": "[\n \"data=journal\"\n]"
32+ },
33+ "loc": ["fileSystems", "<name>", "options"],
34+ "readOnly": false,
35+ "type": "non-empty (list of string (with check: non-empty))"
36+ "relatedPackages": "- [`pkgs.tmux`](\n https://search.nixos.org/packages?show=tmux&sort=relevance&query=tmux\n )\n",
37+ },
38+ ...
39+ }
40+ ```
41+42+ ## optionsDocBook
43+44+ deprecated since 23.11 and will be removed in 24.05.
45+46+ ## optionsAsciiDoc
47+48+ Documentation rendered as AsciiDoc. This is useful for e.g. man pages.
49+50+ > Note: NixOS itself uses this ouput to to build the configuration.nix man page"
51+52+ ## optionsNix
53+54+ All options as a Nix attribute set value, with the same schema as `optionsJSON`.
5556+ # Example
5758+ ## Example: NixOS configuration
5960+ ```nix
61+ let
62+ # Evaluate a NixOS configuration
63+ eval = import (pkgs.path + "/nixos/lib/eval-config.nix") {
64+ # Overriden explicitly here, this would include all modules from NixOS otherwise.
65+ # See: docs of eval-config.nix for more details
66+ baseModules = [];
67+ modules = [
68+ ./module.nix
69+ ];
70+ };
71+ in
72+ pkgs.nixosOptionsDoc {
73+ inherit (eval) options;
74 }
75+ ```
76+77+ ## Example: non-NixOS modules
78+79+ `nixosOptionsDoc` can also be used to build documentation for non-NixOS modules.
8081+ ```nix
82+ let
83+ eval = lib.evalModules {
84+ modules = [
85+ ./module.nix
86+ ];
87+ };
88+ in
89+ pkgs.nixosOptionsDoc {
90+ inherit (eval) options;
91+ }
92+ ```
93*/
94{ pkgs
95, lib
+59-26
nixos/modules/image/repart-image.nix
···2# NixOS module that can be imported.
34{ lib
05, runCommand
6-, runCommandLocal
7, python3
8, black
9, ruff
···26, xz
2728 # arguments
0029, imageFileBasename
30, compression
31, fileSystems
32-, partitions
33, split
34, seed
35, definitionsDirectory
36, sectorSize
37, mkfsEnv ? {}
038}:
3940let
···52 mypy --strict $out
53 '';
5455- amendedRepartDefinitions = runCommandLocal "amended-repart.d" {} ''
56- definitions=$(${amendRepartDefinitions} ${partitions} ${definitionsDirectory})
57- cp -r $definitions $out
58- '';
59-60 fileSystemToolMapping = {
61 "vfat" = [ dosfstools mtools ];
62 "ext4" = [ e2fsprogs.bin ];
···78 "xz" = "xz --keep --verbose --threads=0 -${toString compression.level}";
79 }."${compression.algorithm}";
80in
81-82-runCommand imageFileBasename
83-{
0084 __structuredAttrs = true;
8586 nativeBuildInputs = [
87 systemd
88 fakeroot
89 util-linux
090 compressionPkg
91 ] ++ fileSystemTools;
9293 env = mkfsEnv;
940000095 systemdRepartFlags = [
96 "--dry-run=no"
97- "--empty=create"
98 "--size=auto"
99 "--seed=${seed}"
100- "--definitions=${amendedRepartDefinitions}"
101 "--split=${lib.boolToString split}"
102 "--json=pretty"
00103 ] ++ lib.optionals (sectorSize != null) [
104 "--sector-size=${toString sectorSize}"
105 ];
106107- passthru = {
108- inherit amendRepartDefinitions amendedRepartDefinitions;
109- };
110-} ''
111- mkdir -p $out
112- cd $out
000000000113114- echo "Building image with systemd-repart..."
115- unshare --map-root-user fakeroot systemd-repart \
116- ''${systemdRepartFlags[@]} \
117- ${imageFileBasename}.raw \
118- | tee repart-output.json
11900000000120 # Compression is implemented in the same derivation as opposed to in a
121 # separate derivation to allow users to save disk space. Disk images are
122 # already very space intensive so we want to allow users to mitigate this.
123- if ${lib.boolToString compression.enable}; then
0124 for f in ${imageFileBasename}*; do
125 echo "Compressing $f with ${compression.algorithm}..."
126 # Keep the original file when compressing and only delete it afterwards
127 ${compressionCommand} $f && rm $f
128 done
129- fi
130-''
00000000
···2# NixOS module that can be imported.
34{ lib
5+, stdenvNoCC
6, runCommand
07, python3
8, black
9, ruff
···26, xz
2728 # arguments
29+, name
30+, version
31, imageFileBasename
32, compression
33, fileSystems
34+, partitionsJSON
35, split
36, seed
37, definitionsDirectory
38, sectorSize
39, mkfsEnv ? {}
40+, createEmpty ? true
41}:
4243let
···55 mypy --strict $out
56 '';
570000058 fileSystemToolMapping = {
59 "vfat" = [ dosfstools mtools ];
60 "ext4" = [ e2fsprogs.bin ];
···76 "xz" = "xz --keep --verbose --threads=0 -${toString compression.level}";
77 }."${compression.algorithm}";
78in
79+ stdenvNoCC.mkDerivation (finalAttrs:
80+ (if (version != null)
81+ then { pname = name; inherit version; }
82+ else { inherit name; }
83+ ) // {
84 __structuredAttrs = true;
8586 nativeBuildInputs = [
87 systemd
88 fakeroot
89 util-linux
90+ ] ++ lib.optionals (compression.enable) [
91 compressionPkg
92 ] ++ fileSystemTools;
9394 env = mkfsEnv;
9596+ inherit partitionsJSON definitionsDirectory;
97+98+ # relative path to the repart definitions that are read by systemd-repart
99+ finalRepartDefinitions = "repart.d";
100+101 systemdRepartFlags = [
102 "--dry-run=no"
0103 "--size=auto"
104 "--seed=${seed}"
105+ "--definitions=${finalAttrs.finalRepartDefinitions}"
106 "--split=${lib.boolToString split}"
107 "--json=pretty"
108+ ] ++ lib.optionals createEmpty [
109+ "--empty=create"
110 ] ++ lib.optionals (sectorSize != null) [
111 "--sector-size=${toString sectorSize}"
112 ];
113114+ dontUnpack = true;
115+ dontConfigure = true;
116+ doCheck = false;
117+118+ patchPhase = ''
119+ runHook prePatch
120+121+ amendedRepartDefinitionsDir=$(${amendRepartDefinitions} $partitionsJSON $definitionsDirectory)
122+ ln -vs $amendedRepartDefinitionsDir $finalRepartDefinitions
123+124+ runHook postPatch
125+ '';
126+127+ buildPhase = ''
128+ runHook preBuild
129130+ echo "Building image with systemd-repart..."
131+ unshare --map-root-user fakeroot systemd-repart \
132+ ''${systemdRepartFlags[@]} \
133+ ${imageFileBasename}.raw \
134+ | tee repart-output.json
135136+ runHook postBuild
137+ '';
138+139+ installPhase = ''
140+ runHook preInstall
141+142+ mkdir -p $out
143+ ''
144 # Compression is implemented in the same derivation as opposed to in a
145 # separate derivation to allow users to save disk space. Disk images are
146 # already very space intensive so we want to allow users to mitigate this.
147+ + lib.optionalString compression.enable
148+ ''
149 for f in ${imageFileBasename}*; do
150 echo "Compressing $f with ${compression.algorithm}..."
151 # Keep the original file when compressing and only delete it afterwards
152 ${compressionCommand} $f && rm $f
153 done
154+ '' + ''
155+ mv -v repart-output.json ${imageFileBasename}* $out
156+157+ runHook postInstall
158+ '';
159+160+ passthru = {
161+ inherit amendRepartDefinitions;
162+ };
163+})
···23 meta = with lib; {
24 description = "A new look into listening and enjoying Apple Music in style and performance.";
25 homepage = "https://github.com/ciderapp/Cider";
26- license = licenses.agpl3;
27 maintainers = [ maintainers.cigrainger ];
28 platforms = [ "x86_64-linux" ];
29 mainProgram = "cider";
···23 meta = with lib; {
24 description = "A new look into listening and enjoying Apple Music in style and performance.";
25 homepage = "https://github.com/ciderapp/Cider";
26+ license = licenses.agpl3Only;
27 maintainers = [ maintainers.cigrainger ];
28 platforms = [ "x86_64-linux" ];
29 mainProgram = "cider";
···38 description = "An easy to setup Open Source client/server backup system";
39 longDescription = "An easy to setup Open Source client/server backup system, that through a combination of image and file backups accomplishes both data safety and a fast restoration time";
40 homepage = "https://www.urbackup.org/index.html";
41- license = licenses.agpl3;
42 platforms = platforms.linux;
43 maintainers = [ maintainers.mgttlinger ];
44 };
···38 description = "An easy to setup Open Source client/server backup system";
39 longDescription = "An easy to setup Open Source client/server backup system, that through a combination of image and file backups accomplishes both data safety and a fast restoration time";
40 homepage = "https://www.urbackup.org/index.html";
41+ license = licenses.agpl3Plus;
42 platforms = platforms.linux;
43 maintainers = [ maintainers.mgttlinger ];
44 };
···39 ];
4041 postFixup = ''
42- mkdir -p $out/share
43 # codelldb expects libcodelldb.so to be in the same
44 # directory as the executable, and can't find it in $out/lib.
45 # To make codelldb executable as a standalone,
46 # we put all files in $out/share, and then wrap the binary in $out/bin.
47- mv $out/bin/* $out/share
48- cp $out/lib/* $out/share
49- ln -s ${lldb.lib} $out/lldb
50- makeWrapper $out/share/codelldb $out/bin/codelldb \
0051 --set-default LLDB_DEBUGSERVER_PATH "${lldb.out}/bin/lldb-server"
52 '';
53···125126 mkdir -p $ext/{adapter,formatters}
127 mv -t $ext vsix-extracted/extension/*
128- cp -t $ext/adapter ${adapter}/share/*
129- cp -r ../adapter/scripts $ext/adapter
130 wrapProgram $ext/adapter/codelldb \
131 --set-default LLDB_DEBUGSERVER_PATH "${lldb.out}/bin/lldb-server"
132- cp -t $ext/formatters ../formatters/*.py
133- ln -s ${lldb.lib} $ext/lldb
134 # Mark that all components are installed.
135 touch $ext/platform.ok
136
···39 ];
4041 postFixup = ''
42+ mkdir -p $out/share/{adapter,formatters}
43 # codelldb expects libcodelldb.so to be in the same
44 # directory as the executable, and can't find it in $out/lib.
45 # To make codelldb executable as a standalone,
46 # we put all files in $out/share, and then wrap the binary in $out/bin.
47+ mv $out/bin/* $out/share/adapter
48+ cp $out/lib/* $out/share/adapter
49+ cp -r adapter/scripts $out/share/adapter
50+ cp -t $out/share/formatters formatters/*.py
51+ ln -s ${lldb.lib} $out/share/lldb
52+ makeWrapper $out/share/adapter/codelldb $out/bin/codelldb \
53 --set-default LLDB_DEBUGSERVER_PATH "${lldb.out}/bin/lldb-server"
54 '';
55···127128 mkdir -p $ext/{adapter,formatters}
129 mv -t $ext vsix-extracted/extension/*
130+ cp -t $ext/ -r ${adapter}/share/*
0131 wrapProgram $ext/adapter/codelldb \
132 --set-default LLDB_DEBUGSERVER_PATH "${lldb.out}/bin/lldb-server"
00133 # Mark that all components are installed.
134 touch $ext/platform.ok
135
···96 slices (layers), generates toolpaths to fill them and calculates the
97 amount of material to be extruded.'';
98 homepage = "https://slic3r.org/";
99- license = licenses.agpl3;
100 platforms = platforms.linux;
101 maintainers = with maintainers; [ bjornfor ];
102 };
···96 slices (layers), generates toolpaths to fill them and calculates the
97 amount of material to be extruded.'';
98 homepage = "https://slic3r.org/";
99+ license = licenses.agpl3Plus;
100 platforms = platforms.linux;
101 maintainers = with maintainers; [ bjornfor ];
102 };
···196 Just the build products, the libraries are passed via an env var in the wrapper, default.nix
197 '';
198 homepage = "https://www.kicad.org/";
199- license = lib.licenses.agpl3;
200 platforms = lib.platforms.all;
201 };
202}
···196 Just the build products, the libraries are passed via an env var in the wrapper, default.nix
197 '';
198 homepage = "https://www.kicad.org/";
199+ license = lib.licenses.agpl3Plus;
200 platforms = lib.platforms.all;
201 };
202}
···120 git config remote.origin.partialclonefilter "blob:none"
121 echo "$sparseCheckout" | git sparse-checkout set --stdin ${nonConeMode:+--no-cone}
122 fi
123- ( [ -n "$http_proxy" ] && clean_git config http.proxy "$http_proxy" ) || true
124}
125126# Return the reference of an hash if it exists on the remote repository.
···120 git config remote.origin.partialclonefilter "blob:none"
121 echo "$sparseCheckout" | git sparse-checkout set --stdin ${nonConeMode:+--no-cone}
122 fi
123+ ( [ -n "$http_proxy" ] && clean_git config --global http.proxy "$http_proxy" ) || true
124}
125126# Return the reference of an hash if it exists on the remote repository.
+44
pkgs/by-name/a5/a52dec/package.nix
···00000000000000000000000000000000000000000000
···1+{
2+ lib,
3+ stdenv,
4+ fetchFromGitLab,
5+ autoreconfHook,
6+}:
7+8+stdenv.mkDerivation rec {
9+ pname = "a52dec";
10+ version = "0.8.0";
11+12+ src = fetchFromGitLab {
13+ domain = "git.adelielinux.org";
14+ owner = "community";
15+ repo = "a52dec";
16+ rev = "v${version}";
17+ hash = "sha256-Z4riiwetJkhQYa+AD8qOiwB1+cuLbOyN/g7D8HM8Pkw=";
18+ };
19+20+ nativeBuildInputs = [ autoreconfHook ];
21+22+ configureFlags = [
23+ "--enable-shared"
24+ # Define inline as __attribute__ ((__always_inline__))
25+ "ac_cv_c_inline=yes"
26+ ];
27+28+ makeFlags = [ "AR=${stdenv.cc.targetPrefix}ar" ];
29+30+ # fails 1 out of 1 tests with "BAD GLOBAL SYMBOLS" on i686
31+ # which can also be fixed with
32+ # hardeningDisable = lib.optional stdenv.isi686 "pic";
33+ # but it's better to disable tests than loose ASLR on i686
34+ doCheck = !stdenv.isi686;
35+36+ meta = with lib; {
37+ description = "ATSC A/52 stream decoder";
38+ homepage = "https://liba52.sourceforge.io/";
39+ license = licenses.gpl2Plus;
40+ maintainers = with maintainers; [ wegank ];
41+ mainProgram = "a52dec";
42+ platforms = platforms.unix;
43+ };
44+}
···37 meta = {
38 description = "a federated blogging & chat platform that acts as a web front end for the XMPP protocol";
39 homepage = "https://movim.eu";
40- license = lib.licenses.agpl3;
41 maintainers = with lib.maintainers; [ toastal ];
42 };
43})
···37 meta = {
38 description = "a federated blogging & chat platform that acts as a web front end for the XMPP protocol";
39 homepage = "https://movim.eu";
40+ license = lib.licenses.agpl3Plus;
41 maintainers = with lib.maintainers; [ toastal ];
42 };
43})
···146 --replace-quiet /bin/uname "${coreutils}/bin/uname" \
147 --replace-quiet /bin/sh "${stdenv.shell}"
148 )
149+ # Official source release tarballs will have a version.lispexpr, but if you
150+ # want to override { src = ... } it might not exist. It’s required for
151+ # building, so create a mock version as a backup.
152+ if [[ ! -a version.lisp-expr ]]; then
153+ echo '"${version}.nixos"' > version.lisp-expr
154+ fi
155 '';
156157 preBuild = ''
···89968 meta = {
89969 description = "A T-SQL formatting utility in JS, transpiled from the C# library of the same name.";
89970 homepage = "https://github.com/TaoK/poor-mans-t-sql-formatter-npm-cli#readme";
89971- license = "AGPL-3.0";
89972 };
89973 production = true;
89974 bypassCache = true;
···89968 meta = {
89969 description = "A T-SQL formatting utility in JS, transpiled from the C# library of the same name.";
89970 homepage = "https://github.com/TaoK/poor-mans-t-sql-formatter-npm-cli#readme";
89971+ license = "AGPL-3.0-only";
89972 };
89973 production = true;
89974 bypassCache = true;
···5051 meta = with lib; {
52 description = "A(Sync) Interface for internal Audible API written in pure Python";
53- license = licenses.agpl3;
54 homepage = "https://github.com/mkb79/Audible";
55 maintainers = with maintainers; [ jvanbruegge ];
56 };
···5051 meta = with lib; {
52 description = "A(Sync) Interface for internal Audible API written in pure Python";
53+ license = licenses.agpl3Only;
54 homepage = "https://github.com/mkb79/Audible";
55 maintainers = with maintainers; [ jvanbruegge ];
56 };
···22 meta = with lib; {
23 homepage = "https://github.com/Unrud/RadicaleInfCloud/";
24 description = "Integrate InfCloud into Radicale's web interface";
25- license = with licenses; [ agpl3 gpl3 ];
26 maintainers = with maintainers; [ erictapen ];
27 };
28}
···22 meta = with lib; {
23 homepage = "https://github.com/Unrud/RadicaleInfCloud/";
24 description = "Integrate InfCloud into Radicale's web interface";
25+ license = with licenses; [ agpl3Plus gpl3 ];
26 maintainers = with maintainers; [ erictapen ];
27 };
28}
+7-4
pkgs/development/python-modules/rpy2/default.nix
···2, lib
3, buildPythonPackage
4, fetchPypi
05, isPyPy
6, R
7, rWrapper
···38 # R_LIBS_SITE is used by the nix r package to point to the installed R libraries.
39 # This patch sets R_LIBS_SITE when rpy2 is imported.
40 ./rpy2-3.x-r-libs-site.patch
00000041 ];
4243 postPatch = ''
···81 ];
8283 doCheck = !stdenv.isDarwin;
84-85- # newlines in environment variables are a problem due to
86- # https://github.com/rpy2/rpy2/issues/1066
87- preCheck = "unset postPatch";
8889 nativeCheckInputs = [
90 pytestCheckHook
···2, lib
3, buildPythonPackage
4, fetchPypi
5+, fetchpatch
6, isPyPy
7, R
8, rWrapper
···39 # R_LIBS_SITE is used by the nix r package to point to the installed R libraries.
40 # This patch sets R_LIBS_SITE when rpy2 is imported.
41 ./rpy2-3.x-r-libs-site.patch
42+43+ # https://github.com/rpy2/rpy2/pull/1094
44+ (fetchpatch {
45+ url = "https://github.com/rpy2/rpy2/commit/026d069a008163a62d12567bcb938410d0f9bf7a.diff";
46+ hash = "sha256-x778upSY3zab5EiRyOcsbDpPj7vN/7XzefEs+wvkNg0=";
47+ })
48 ];
4950 postPatch = ''
···88 ];
8990 doCheck = !stdenv.isDarwin;
00009192 nativeCheckInputs = [
93 pytestCheckHook
···40 You must view the world as mario does, as a one dimensional line.
41 '';
42 homepage = "https://mar1d.com";
43- license = licenses.agpl3;
44 maintainers = with maintainers; [ taeer ];
45 platforms = platforms.unix;
46 };
···40 You must view the world as mario does, as a one dimensional line.
41 '';
42 homepage = "https://mar1d.com";
43+ license = licenses.agpl3Only;
44 maintainers = with maintainers; [ taeer ];
45 platforms = platforms.unix;
46 };
+2-1
pkgs/games/mindustry/default.nix
···4, copyDesktopItems
5, fetchFromGitHub
6, gradle
7-, jdk
8, perl
910# for arc
···40 version = "146";
41 buildVersion = makeBuildVersion version;
42043 gradleWithJdk = gradle.override { java = jdk; };
4445 selectedGlew = if enableWayland then glew-egl else glew;
···38 description = "A Matrix bot which can generate \"This Week in X\" like blog posts ";
39 homepage = "https://github.com/haecker-felix/hebbot";
40 changelog = "https://github.com/haecker-felix/hebbot/releases/tag/v${version}";
41- license = with licenses; [ agpl3 ];
42 mainProgram = "hebbot";
43 maintainers = with maintainers; [ a-kenji ];
44 };
···38 description = "A Matrix bot which can generate \"This Week in X\" like blog posts ";
39 homepage = "https://github.com/haecker-felix/hebbot";
40 changelog = "https://github.com/haecker-felix/hebbot/releases/tag/v${version}";
41+ license = with licenses; [ agpl3Only ];
42 mainProgram = "hebbot";
43 maintainers = with maintainers; [ a-kenji ];
44 };
+1-1
pkgs/servers/mattermost/default.nix
···77 meta = with lib; {
78 description = "Mattermost is an open source platform for secure collaboration across the entire software development lifecycle";
79 homepage = "https://www.mattermost.org";
80- license = with licenses; [ agpl3 asl20 ];
81 maintainers = with maintainers; [ ryantm numinit kranzes mgdelacroix ];
82 mainProgram = "mattermost";
83 };
···77 meta = with lib; {
78 description = "Mattermost is an open source platform for secure collaboration across the entire software development lifecycle";
79 homepage = "https://www.mattermost.org";
80+ license = with licenses; [ agpl3Only asl20 ];
81 maintainers = with maintainers; [ ryantm numinit kranzes mgdelacroix ];
82 mainProgram = "mattermost";
83 };
···3334 meta = with lib; {
35 description = "Grafana Phlare is an open source database that provides fast, scalable, highly available, and efficient storage and querying of profiling data.";
36- license = licenses.agpl3;
37 homepage = "https://grafana.com/oss/phlare";
38 maintainers = with maintainers; [ cathalmullan ];
39 };
···3334 meta = with lib; {
35 description = "Grafana Phlare is an open source database that provides fast, scalable, highly available, and efficient storage and querying of profiling data.";
36+ license = licenses.agpl3Only;
37 homepage = "https://grafana.com/oss/phlare";
38 maintainers = with maintainers; [ cathalmullan ];
39 };
···143 fully compatible with Office Open XML formats: .docx, .xlsx, .pptx and enabling collaborative editing in real time.
144 '';
145 homepage = "ONLYOFFICE Document Server is an online office suite comprising viewers and editors";
146- license = licenses.agpl3;
147 platforms = [ "x86_64-linux" ];
148 sourceProvenance = [ sourceTypes.binaryNativeCode ];
149 maintainers = with maintainers; [ SuperSandro2000 ];
···143 fully compatible with Office Open XML formats: .docx, .xlsx, .pptx and enabling collaborative editing in real time.
144 '';
145 homepage = "ONLYOFFICE Document Server is an online office suite comprising viewers and editors";
146+ license = licenses.agpl3Plus;
147 platforms = [ "x86_64-linux" ];
148 sourceProvenance = [ sourceTypes.binaryNativeCode ];
149 maintainers = with maintainers; [ SuperSandro2000 ];
···2425 The name of the plugin in TT-RSS is 'ff_instagram'.
26 '';
27- license = licenses.agpl3;
28 homepage = "https://github.com/wltb/ff_instagram";
29 maintainers = with maintainers; [ das_j ];
30 platforms = platforms.all;
···2425 The name of the plugin in TT-RSS is 'ff_instagram'.
26 '';
27+ license = licenses.agpl3Plus;
28 homepage = "https://github.com/wltb/ff_instagram";
29 maintainers = with maintainers; [ das_j ];
30 platforms = platforms.all;
+1-1
pkgs/servers/web-apps/hedgedoc/default.nix
···108109 meta = {
110 description = "Realtime collaborative markdown notes on all platforms";
111- license = lib.licenses.agpl3;
112 homepage = "https://hedgedoc.org";
113 mainProgram = "hedgedoc";
114 maintainers = with lib.maintainers; [ SuperSandro2000 ];
···108109 meta = {
110 description = "Realtime collaborative markdown notes on all platforms";
111+ license = lib.licenses.agpl3Only;
112 homepage = "https://hedgedoc.org";
113 mainProgram = "hedgedoc";
114 maintainers = with lib.maintainers; [ SuperSandro2000 ];
+1-1
pkgs/servers/web-apps/jirafeau/default.nix
···2526 meta = with lib; {
27 description = "Website permitting upload of a file in a simple way and giving a unique link to it";
28- license = licenses.agpl3;
29 homepage = "https://gitlab.com/mojo42/Jirafeau";
30 platforms = platforms.all;
31 maintainers = with maintainers; [ davidtwco ];
···2526 meta = with lib; {
27 description = "Website permitting upload of a file in a simple way and giving a unique link to it";
28+ license = licenses.agpl3Plus;
29 homepage = "https://gitlab.com/mojo42/Jirafeau";
30 platforms = platforms.all;
31 maintainers = with maintainers; [ davidtwco ];
···28 meta = with lib; {
29 homepage = "https://github.com/NyaMisty/AltServer-Linux";
30 description = "AltServer for AltStore, but on-device. Requires root privileges as well as running a custom anisette server currently";
31- license = licenses.agpl3;
32 mainProgram = "alt-server";
33 sourceProvenance = with sourceTypes; [ binaryNativeCode ];
34 platforms = platforms.linux;
···28 meta = with lib; {
29 homepage = "https://github.com/NyaMisty/AltServer-Linux";
30 description = "AltServer for AltStore, but on-device. Requires root privileges as well as running a custom anisette server currently";
31+ license = licenses.agpl3Only;
32 mainProgram = "alt-server";
33 sourceProvenance = with sourceTypes; [ binaryNativeCode ];
34 platforms = platforms.linux;
···298 packages.ghc963
299 else if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
300 packages.ghc963
0000000301 else
302 packages.ghc963Binary;
303 inherit (buildPackages.python3Packages) sphinx;
···316 packages.ghc963
317 else if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
318 packages.ghc963
0000000319 else
320 packages.ghc963Binary;
321 inherit (buildPackages.python3Packages) sphinx;
···334 if stdenv.hostPlatform.isAarch32 then
335 packages.ghc963
336 else if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
0000000337 packages.ghc963
338 else
339 packages.ghc963Binary;
···298 packages.ghc963
299 else if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
300 packages.ghc963
301+ else if stdenv.hostPlatform.isDarwin then
302+ # it seems like the GHC 9.6.* bindists are built with a different
303+ # toolchain than we are using (which I'm guessing from the fact
304+ # that 9.6.4 bindists pass linker flags our ld doesn't support).
305+ # With both 9.6.3 and 9.6.4 binary it is impossible to link against
306+ # the clock package (probably a hsc2hs problem).
307+ packages.ghc963
308 else
309 packages.ghc963Binary;
310 inherit (buildPackages.python3Packages) sphinx;
···323 packages.ghc963
324 else if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
325 packages.ghc963
326+ else if stdenv.hostPlatform.isDarwin then
327+ # it seems like the GHC 9.6.* bindists are built with a different
328+ # toolchain than we are using (which I'm guessing from the fact
329+ # that 9.6.4 bindists pass linker flags our ld doesn't support).
330+ # With both 9.6.3 and 9.6.4 binary it is impossible to link against
331+ # the clock package (probably a hsc2hs problem).
332+ packages.ghc963
333 else
334 packages.ghc963Binary;
335 inherit (buildPackages.python3Packages) sphinx;
···348 if stdenv.hostPlatform.isAarch32 then
349 packages.ghc963
350 else if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
351+ packages.ghc963
352+ else if stdenv.hostPlatform.isDarwin then
353+ # it seems like the GHC 9.6.* bindists are built with a different
354+ # toolchain than we are using (which I'm guessing from the fact
355+ # that 9.6.4 bindists pass linker flags our ld doesn't support).
356+ # With both 9.6.3 and 9.6.4 binary it is impossible to link against
357+ # the clock package (probably a hsc2hs problem).
358 packages.ghc963
359 else
360 packages.ghc963Binary;