Commit Graph

55 Commits

Author SHA1 Message Date
Marco Köpcke
ce68722dfd jetbrains.*: move to by-name 2026-09-25 15:39:39 +02:00
Marco Köpcke
c9211d1b1f jetbrains.*: sort parameters and inputs alphabetically 2026-09-03 17:35:11 +02:00
Marco Köpcke
d31d4cc946 jetbrains.*: move libdbm to new top-level pkg jetbrains-libdbm
Additionally removes the passthrough of fsnotifier and libdbm from the binary IDEs.
This means the binary IDEs now no longer depend on the source IDE build files.
2026-09-03 17:35:06 +02:00
aoli-al
a0b297630f jetbrains.jdk-21, jetbrains.jdk-no-jcef-21: init 2026-04-08 22:13:11 -03:00
R. Ryantm
ca5223f829 jetbrains.idea-oss: 2025.3.3 -> 2025.3.4 2026-03-23 18:23:59 +00:00
dram
df9e242573 jetbrains.idea-oss: 2025.3.2 -> 2025.3.3 (#494584) 2026-03-07 13:24:55 +00:00
R. Ryantm
b7fc0b0fab jetbrains.idea-oss: 2025.3.2 -> 2025.3.3 2026-02-27 04:34:07 +00:00
R. Ryantm
f160d30894 jetbrains.pycharm-oss: 2025.3.2.1 -> 2025.3.3 2026-02-27 04:21:24 +00:00
Aliaksandr
3f26693a02 various: use finalAttrs instead of rec 2026-02-18 04:21:56 +02:00
R. Ryantm
207764f9d5 jetbrains.pycharm-oss: 2025.3.1.1 -> 2025.3.2.1 2026-02-05 05:04:07 +00:00
quantenzitrone
7d8132a92c treewide: remove references to the xorg namespace in pkgs (automated)
this creates some eval errors that will be fixed in the next commit

done with the following script:

```fish
\#!/usr/bin/env fish

set packagesjson (nix eval --impure --json --expr '
let
  lib = import ./lib;
in
import pkgs/servers/x11/xorg/default.nix (lib.mapAttrs (
  name: _:
  if name == "lib" then
    lib
  else if name == "config" then
    { allowAliases = false; }
  else
    name
) (__functionArgs (import pkgs/servers/x11/xorg/default.nix))) { }
' | jq)

set one (grep '^    [A-Za-z0-9_-]*$' pkgs/servers/x11/xorg/default.nix | string trim | string replace -r '$' Z | sort | string sub -e -1)
set two (grep '^  [A-Za-z0-9_-]* = [A-Za-z0-9_-]*;$' pkgs/servers/x11/xorg/default.nix | cut -d= -f1 | string trim | string replace -r '$' Z | sort | string sub -e -1)

for arg in $one $two
    set oname $arg
    set nname (echo $packagesjson | jq -r .$oname)

    if test $nname = null
        echo (set_color red)warn:(set_color normal) unknown package xorg.$oname >&2
        continue
    end

    echo $oname "->" $nname

    # replace basic xorg.$name references
    for file in (rg -F "xorg.$oname" --files-with-matches pkgs)
        # special cases
        sd -F "$oname = xorg.$oname;" "$nname = $nname;" $file

        # replace
        sd -F "xorg.$oname" "$nname" $file

        # fixup function arguments

        # prevent duplicate function args
        if grep -E " ($oname|$nname),\$" $file >/dev/null
            continue
        end

        if grep 'xorg\..' $file >/dev/null # case1: there is more so we can't just remove the function arg

            if grep ' xorg,$' $file >/dev/null
                sd ' xorg,$' " xorg,
                $nname," $file

            else if grep ' xorg ? .*,$' $file >/dev/null
                sd 'xorg( ? .*),$' "xorg\$1,
                $nname," $file

            else
                sd -F 'xorg,' "$nname,
                xorg," $file
            end

        else # case there is no more xorg..* so we can just replace the function arg
            sd 'xorg(| ? .*),.*$' "$nname," $file
        end
    end
end

nix fmt
```
2026-01-25 22:28:09 +01:00
Marco "Capypara" Köpcke
27ff8d8219 jetbrains.idea-oss: 2025.3.1.1 -> 2025.3.2 2026-01-23 12:08:48 +01:00
Marco "Capypara" Köpcke
4e7848b1fb jetbrains.*-oss: switch to using version tags instead of build number tags 2026-01-23 12:08:20 +01:00
Marco "Capypara" Köpcke
02edf75159 jetbrains.*-oss: update script: make maven dependency list stable 2026-01-16 21:41:27 +01:00
James Ward
5808eee732 jetbrains: 2025.3.1 -> 2025.3.1.1
clion: 2025.3.1 -> 2025.3.1.1
datagrip: 2025.3.2 -> 2025.3.3
idea: 2025.3.1 -> 2025.3.1.1
pycharm-oss: 2025.3.1 -> 2025.3.1.1
pycharm: 2025.3.1 -> 2025.3.1.1
ruby-mine: 2025.3.1 -> 2025.3.1.1
2026-01-13 08:52:19 -07:00
R. Ryantm
4b2b85a6e6 jetbrains.idea-oss: 2025.3.1 -> 2025.3.1.1 2026-01-09 01:21:50 +00:00
Marco "Capypara" Köpcke
55ca18efc6 jetbrains: reimplement update scripts
This adds `passthru.updateScript` to the IDEs for automatic updates and
rewrites all existing update scripts into one Python CLI app. This app
is re-using most of the existing scripts in some way:

- Most of `bin/update_bin.py` has been moved to
  `updater/jetbrains_nix_updater/fetcher.py`
- Most of `source/update.py` has been moved to
  `updater/jetbrains_nix_updater/update_src.py`
- `source/build_maven.py` has been moved almost as-is to
  `updater/jetbrains_nix_updater/update_src_maven.py`

Since we are now no longer using JSON files but Nix files directly, I
opted to use a simple "marker" approach for replacing things like
versions and URLs in the files. I didn't want to implement complicated
regex patterns like the `update-source-version` script does, it seemed
overkill and I wanted to keep things as simple as possible.

Co-Authored-By: Matt Sturgeon <matt@sturgeon.me.uk>
2025-12-31 16:18:07 +01:00
Marco "Capypara" Köpcke
340274bddb jetbrains: split IDEs into separate nix files
This splits each IDE into its own `.nix` file and refactors all related
build machinery to support this.

Motivations (in order of priority):

- Fixing reviews for update PRs: Currently update PRs get no maintainers
  assigned, since the `versions.json` was changed. Due to the way CI
works, packages outside of `by-name` only have their maintainers added
to PRs if the file that contains the derivation (`meta.position`) is
changed.
- Reducing the size of `default.nix` and making the differences &
  patches required for each IDE more clear and with that also actually
cutting the code into separately maintainable chunks
- Overall improving readability and code structure

This commit was half-automatically generated by a script I wrote:
https://gist.github.com/theCapypara/2939ff9f83a5f30f1d3dff74d725a9bf

**Note that this commit itself does not cause any rebuilds. This is
important. It is just a refactoring without any functional changes.**
2025-12-31 15:28:35 +01:00
Marco "Capypara" Köpcke
9724448075 jetbrains: idea-oss, pycharm-oss: 2025.1.1.1 -> 2025.3.1 2025-12-28 13:18:31 +01:00
Marco "Capypara" Köpcke
2ec9ec5759 jetbrains: source build updates: write repositories without prefix 2025-12-28 13:18:31 +01:00
Marco "Capypara" Köpcke
cea11ca729 jetbrains.*-oss: replace brokenPlugins.json with an empty list 2025-12-28 13:18:30 +01:00
Marco "Capypara" Köpcke
183d5dc84f jetbrains.*-oss: Do not use hardcoded build dir paths
Co-Authored-By: Matt Sturgeon <matt@sturgeon.me.uk>
2025-12-28 13:18:25 +01:00
Marco "Capypara" Köpcke
c583914eee jetbrains.*-oss: Add fallback URLs w/o the cache redirector
Co-Authored-By: Matt Sturgeon <matt@sturgeon.me.uk>
2025-12-28 13:18:17 +01:00
Marco "Capypara" Köpcke
4dce2ed811 jetbrains: source builds: fixed & hardened maven deps update script 2025-12-28 13:18:14 +01:00
Marco "Capypara" Köpcke
996eb625d7 jetbrains: source builds: fetch latest versions 2025-12-28 13:18:13 +01:00
Marco "Capypara" Köpcke
0e221587d7 jetbrains: source builds: auto-update jps & restarter hashes 2025-12-28 13:18:12 +01:00
Marco "Capypara" Köpcke
88f949fbb1 jetbrains: update basic source dependencies and patches
Co-Authored-By: Matt Sturgeon <matt@sturgeon.me.uk>
2025-12-28 13:17:59 +01:00
Marco "Capypara" Köpcke
0df7021de4 jetbrains: fix source update script 2025-12-28 13:17:36 +01:00
Marco "Capypara" Köpcke
2843a9ae45 jetbrains: pycharm/idea unified products & oss builds; deprecate writerside & aqua 2025-12-15 07:49:48 +01:00
Olli Helenius
eee6d5ddc4 jetbrains: fix build with cmake 4 2025-10-07 12:36:04 +03:00
NAHO
c8d4dabc43 pkgs: remove optional builtins prefixes from prelude functions
Remove optional builtins prefixes from prelude functions by running:

    builtins=(
      abort
      baseNameOf
      break
      derivation
      derivationStrict
      dirOf
      false
      fetchGit
      fetchMercurial
      fetchTarball
      fetchTree
      fromTOML
      import
      isNull
      map
      null
      placeholder
      removeAttrs
      scopedImport
      throw
      toString
      true
    )

    fd \
      --type file \
      . \
      pkgs \
      --exec-batch sed --in-place --regexp-extended "
        s/\<builtins\.($(
          printf '%s\n' "${builtins[@]}" |
            paste --delimiter '|' --serial -
        ))\>/\1/g
      "

    nix fmt
2025-10-04 19:02:37 +02:00
mivorasu
c6b15e1db9 treewide: fix mismatched runHook invocations in Phase 2025-07-28 04:12:58 +00:00
TomaSajt
398b16e16c treewide: remove useFetchCargoVendor usages 2025-07-26 11:39:35 +02:00
夜坂雅
93bc5f9751 jetbrains.{idea,pycharm}-community-src: Add update script 2025-06-13 18:54:44 +05:30
夜坂雅
5a139e21d2 jetbrains.{idea,pycharm}-community-src: Extract repo and toolchain meta 2025-06-13 18:54:44 +05:30
夜坂雅
3d1a667524 jetbrains.{idea,pycharm}-community-src: 2024.3.1.1 -> 2025.1.1.1 2025-06-13 18:54:44 +05:30
Silvan Mosberger
374e6bcc40 treewide: Format all Nix files
Format all Nix files using the officially approved formatter,
making the CI check introduced in the previous commit succeed:

  nix-build ci -A fmt.check

This is the next step of the of the [implementation](https://github.com/NixOS/nixfmt/issues/153)
of the accepted [RFC 166](https://github.com/NixOS/rfcs/pull/166).

This commit will lead to merge conflicts for a number of PRs,
up to an estimated ~1100 (~33%) among the PRs with activity in the past 2
months, but that should be lower than what it would be without the previous
[partial treewide format](https://github.com/NixOS/nixpkgs/pull/322537).

Merge conflicts caused by this commit can now automatically be resolved while rebasing using the
[auto-rebase script](8616af08d9/maintainers/scripts/auto-rebase).

If you run into any problems regarding any of this, please reach out to the
[formatting team](https://nixos.org/community/teams/formatting/) by
pinging @NixOS/nix-formatting.
2025-04-01 20:10:43 +02:00
Robert Schütz
f35bf8ee25 jetbrains: fix brokenPlugins hash 2025-03-01 17:38:03 -08:00
Robert Schütz
bb57c7704e jetbrains: fetch brokenPlugins from Wayback Machine 2025-02-24 22:38:20 -08:00
Alyssa Ross
edb5006db9 jetbrains: useFetchCargoVendor
Cargo 1.84.0 seems to have changed the output format of cargo vendor
again, once again invalidating fetchCargoTarball FOD hashes.  It's
time to fix this once and for all, switching across the board to
fetchCargoVendor, which is not dependent on cargo vendor's output
format.
2025-01-26 17:01:11 +01:00
Marie Ramlow
644a1e642c jetbrains.idea-community-src: 2024.3.1 -> 2024.3.1.1; jetbrains.pycharm-community-src: 2024.3 -> 2024.3.1.1 2025-01-09 17:57:32 +01:00
Marie Ramlow
6299c4da50 jetbrains: fix build_maven.py shebang 2025-01-09 17:55:13 +01:00
Leona Maroni
d063f36eba jetbrains.plugins: extend update script for source builds (#366290) 2025-01-09 15:51:01 +01:00
Sirius902
b73aee9fde jetbrains.idea-community: fix build (#367486) 2025-01-02 13:18:37 -08:00
Marco "Capypara" Köpcke
7fe89a853a jetbrains.plugins: lint fixes 2024-12-18 20:58:10 +01:00
Marco "Capypara" Köpcke
63e9826972 jetbrains.plugins: extend update script for source builds 2024-12-18 20:51:12 +01:00
夜坂雅
931f75bf1d jetbrains.idea-community-src: 2024.1 -> 2024.3.1, jetbrains.pycharm-community-src: 2024.1 -> 2024.3 2024-12-14 13:03:40 +08:00
Matt Sturgeon
11369cdb18 jetbrains: rename source-package arg buildVer -> buildNumber 2024-12-11 15:32:40 +00:00
Matt Sturgeon
67f1c7775d jetbrains: fix mismatched versions for source-built packages 2024-12-11 15:18:21 +00:00
Peder Bergebakken Sundt
a0396ab411 treewide: use src.name in sourceRoot 2024-08-02 14:56:50 +02:00