jetbrains: add TODOs and NOTEs about open topics

This commit is contained in:
Marco "Capypara" Köpcke
2026-01-05 21:33:58 +01:00
parent 55ca18efc6
commit bd6f98bad9
21 changed files with 29 additions and 0 deletions

View File

@@ -62,6 +62,7 @@ lib.makeOverridable mkDerivation (
mainProgram = pname;
};
# FIXME: Do not use meta attributes, see README (`TODO` section)
desktopItem = makeDesktopItem {
name = pname;
exec = pname;

View File

@@ -50,6 +50,7 @@ mkJetBrainsProduct {
lldb
];
# NOTE: meta attrs are currently used by the desktop entry, so changing them may cause rebuilds (see TODO in README)
meta = {
homepage = "https://www.jetbrains.com/aqua/";
description = "Test automation IDE from JetBrains";

View File

@@ -68,6 +68,7 @@ in
xz
];
# NOTE: meta attrs are currently used by the desktop entry, so changing them may cause rebuilds (see TODO in README)
meta = {
homepage = "https://www.jetbrains.com/clion/";
description = "C/C++ IDE from JetBrains";

View File

@@ -45,6 +45,7 @@ mkJetBrainsProduct {
src = fetchurl (urls.${system} or (throw "Unsupported system: ${system}"));
# NOTE: meta attrs are currently used by the desktop entry, so changing them may cause rebuilds (see TODO in README)
meta = {
homepage = "https://www.jetbrains.com/datagrip/";
description = "Database IDE from JetBrains";

View File

@@ -55,6 +55,7 @@ mkJetBrainsProduct {
'')
];
# NOTE: meta attrs are currently used by the desktop entry, so changing them may cause rebuilds (see TODO in README)
meta = {
homepage = "https://www.jetbrains.com/dataspell/";
description = "Data science IDE from JetBrains";

View File

@@ -50,6 +50,7 @@ mkJetBrainsProduct {
libgcc
];
# NOTE: meta attrs are currently used by the desktop entry, so changing them may cause rebuilds (see TODO in README)
meta = {
homepage = "https://www.jetbrains.com/remote-development/gateway/";
description = "Remote development for JetBrains products";

View File

@@ -53,6 +53,7 @@ in
libgcc
];
# NOTE: meta attrs are currently used by the desktop entry, so changing them may cause rebuilds (see TODO in README)
meta = {
homepage = "https://www.jetbrains.com/go/";
description = "Go IDE from JetBrains";

View File

@@ -54,6 +54,7 @@ mkJetBrainsProduct {
''--set M2 "${maven}/maven/bin"''
];
# NOTE: meta attrs are currently used by the desktop entry, so changing them may cause rebuilds (see TODO in README)
meta = {
homepage = "https://www.jetbrains.com/idea/";
description = "Free Java, Kotlin, Groovy and Scala IDE from Jetbrains (built from source)";

View File

@@ -57,6 +57,7 @@ mkJetBrainsProduct {
''--set M2 "${maven}/maven/bin"''
];
# NOTE: meta attrs are currently used by the desktop entry, so changing them may cause rebuilds (see TODO in README)
meta = {
homepage = "https://www.jetbrains.com/idea/";
description = "Free Java, Kotlin, Groovy and Scala IDE from Jetbrains (built from source)";

View File

@@ -60,6 +60,7 @@ mkJetBrainsProduct {
musl
];
# NOTE: meta attrs are currently used by the desktop entry, so changing them may cause rebuilds (see TODO in README)
meta = {
homepage = "https://www.jetbrains.com/idea/";
description = "Java, Kotlin, Groovy and Scala IDE from Jetbrains";

View File

@@ -45,6 +45,7 @@ mkJetBrainsProduct {
src = fetchurl (urls.${system} or (throw "Unsupported system: ${system}"));
# NOTE: meta attrs are currently used by the desktop entry, so changing them may cause rebuilds (see TODO in README)
meta = {
homepage = "https://www.jetbrains.com/mps/";
description = "IDE for building domain-specific languages from JetBrains";

View File

@@ -49,6 +49,7 @@ mkJetBrainsProduct {
musl
];
# NOTE: meta attrs are currently used by the desktop entry, so changing them may cause rebuilds (see TODO in README)
meta = {
homepage = "https://www.jetbrains.com/phpstorm/";
description = "PHP IDE from JetBrains";

View File

@@ -47,6 +47,7 @@ in
src = fetchurl (urls.${system} or (throw "Unsupported system: ${system}"));
# NOTE: meta attrs are currently used by the desktop entry, so changing them may cause rebuilds (see TODO in README)
meta = {
homepage = "https://www.jetbrains.com/pycharm/";
description = "Free Python IDE from JetBrains (built from source)";

View File

@@ -50,6 +50,7 @@ in
product = "PyCharm Open Source";
productShort = "PyCharm";
# NOTE: meta attrs are currently used by the desktop entry, so changing them may cause rebuilds (see TODO in README)
meta = {
homepage = "https://www.jetbrains.com/pycharm/";
description = "Free Python IDE from JetBrains (built from source)";

View File

@@ -51,6 +51,7 @@ in
musl
];
# NOTE: meta attrs are currently used by the desktop entry, so changing them may cause rebuilds (see TODO in README)
meta = {
homepage = "https://www.jetbrains.com/pycharm/";
description = "Python IDE from JetBrains";

View File

@@ -78,6 +78,7 @@ in
libX11
];
# NOTE: meta attrs are currently used by the desktop entry, so changing them may cause rebuilds (see TODO in README)
meta = {
homepage = "https://www.jetbrains.com/rider/";
description = ".NET IDE from JetBrains";

View File

@@ -49,6 +49,7 @@ mkJetBrainsProduct {
musl
];
# NOTE: meta attrs are currently used by the desktop entry, so changing them may cause rebuilds (see TODO in README)
meta = {
homepage = "https://www.jetbrains.com/ruby/";
description = "Ruby IDE from JetBrains";

View File

@@ -63,6 +63,7 @@ in
xz
];
# NOTE: meta attrs are currently used by the desktop entry, so changing them may cause rebuilds (see TODO in README)
meta = {
homepage = "https://www.jetbrains.com/rust/";
description = "Rust IDE from JetBrains";

View File

@@ -49,6 +49,7 @@ mkJetBrainsProduct {
musl
];
# NOTE: meta attrs are currently used by the desktop entry, so changing them may cause rebuilds (see TODO in README)
meta = {
homepage = "https://www.jetbrains.com/webstorm/";
description = "Web IDE from JetBrains";

View File

@@ -50,6 +50,7 @@ mkJetBrainsProduct {
musl
];
# NOTE: meta attrs are currently used by the desktop entry, so changing them may cause rebuilds (see TODO in README)
meta = {
homepage = "https://www.jetbrains.com/writerside/";
description = "Documentation IDE from JetBrains";

View File

@@ -56,6 +56,15 @@ Any comments or other manual changes between these markers will be removed when
- Add it to `default.nix`
### TODO:
- remove the usage of `meta.` properties for building the Linux desktop files
(JetBrains already provides their own Desktop files, we can just use those probably?)
- drop the community IDEs
- Switch `mkJetbrainsProduct` to use `lib.extendMkDerivation`, see also:
- https://github.com/NixOS/nixpkgs/pull/475183#discussion_r2655305961
- https://github.com/NixOS/nixpkgs/pull/475183#discussion_r2655348886
- move PyCharm overrides to a common place outside of `default.nix`
- package `patchSharedLibs` from `default.nix` as a hook
- cleanup this TODO list, especially the following points, which have been here since 2023
- replace `libxcrypt-legacy` with `libxcrypt` when supported
- make `jetbrains-remote-dev.patch` cleaner
- is extraLdPath needed for IDEA?