Merge master into staging-next
This commit is contained in:
@@ -589,6 +589,15 @@
|
||||
- nixos/modules/services/x11/desktop-managers/xfce.nix
|
||||
- nixos/tests/xfce.nix
|
||||
- pkgs/desktops/xfce/**/*
|
||||
- pkgs/by-name/ga/garcon/**/*
|
||||
- pkgs/by-name/li/libxfce4*/**/*
|
||||
- pkgs/by-name/th/thunar/**/*
|
||||
- pkgs/by-name/th/thunar-*/**/*
|
||||
- pkgs/by-name/tu/tumbler/**/*
|
||||
- pkgs/by-name/xf/xfce4-*/**/*
|
||||
- pkgs/by-name/xf/xfconf/**/*
|
||||
- pkgs/by-name/xf/xfdesktop/**/*
|
||||
- pkgs/by-name/xf/xfwm4/**/*
|
||||
|
||||
"6.topic: zig":
|
||||
- any:
|
||||
|
||||
@@ -13,10 +13,10 @@
|
||||
|
||||
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
|
||||
|
||||
- `xfce.mkXfceDerivation` has been deprecated, please use `stdenv.mkDerivation`
|
||||
directly. You can migrate by adding `pkg-config`, `xfce4-dev-tools`, and
|
||||
`wrapGAppsHook3` to your `nativeBuildInputs` and `--enable-maintainer-mode`
|
||||
to your `configureFlags`.
|
||||
- `xfce.mkXfceDerivation` has been deprecated (i.e. conditioned behind `nixpkgs.config.allowAliases`)
|
||||
and will be removed in NixOS 26.11, please use `stdenv.mkDerivation` directly. You can migrate by
|
||||
adding `pkg-config`, `xfce4-dev-tools`, and `wrapGAppsHook3` to your `nativeBuildInputs` and
|
||||
`--enable-maintainer-mode` to your `configureFlags`.
|
||||
|
||||
- `corepack_latest` has been removed, as Corepack is no longer distributed with Node.js.
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
|
||||
- `services.openssh.settings.AcceptEnv` now explicitly defined as an option that takes a list of strings, to facilitate option merging. Setting it to a string value is no longer supported.
|
||||
|
||||
- Xfce panel plugins have been moved to top level (e.g. if you previously added `pkgs.xfce.xfce4-whiskermenu-plugin` to `environment.systemPackages`, you will need to change it to `pkgs.xfce4-whiskermenu-plugin`).
|
||||
- All Xfce packages have been moved to top level (e.g. if you previously added `pkgs.xfce.xfce4-whiskermenu-plugin` to `environment.systemPackages`, you will need to change it to `pkgs.xfce4-whiskermenu-plugin`). The `xfce` scope will be removed in NixOS 26.11.
|
||||
|
||||
## Other Notable Changes {#sec-nixpkgs-release-26.05-notable-changes}
|
||||
|
||||
|
||||
@@ -20939,6 +20939,12 @@
|
||||
githubId = 66107;
|
||||
name = "Daniel Poelzleithner";
|
||||
};
|
||||
poeschel = {
|
||||
email = "poeschel@mailbox.org";
|
||||
github = "poeschel";
|
||||
githubId = 703724;
|
||||
name = "Lars Pöschel";
|
||||
};
|
||||
pogobanane = {
|
||||
email = "mail@peter-okelmann.de";
|
||||
github = "pogobanane";
|
||||
|
||||
@@ -26,14 +26,14 @@ example settings:
|
||||
|
||||
Some Xfce programs are not installed automatically. To install them
|
||||
manually (system wide), put them into your
|
||||
[](#opt-environment.systemPackages) from `pkgs.xfce`.
|
||||
[](#opt-environment.systemPackages).
|
||||
|
||||
## Thunar {#sec-xfce-thunar-plugins}
|
||||
|
||||
Thunar (the Xfce file manager) is automatically enabled when Xfce is
|
||||
enabled. To enable Thunar without enabling Xfce, use the configuration
|
||||
option [](#opt-programs.thunar.enable) instead of adding
|
||||
`pkgs.xfce.thunar` to [](#opt-environment.systemPackages).
|
||||
`pkgs.thunar` to [](#opt-environment.systemPackages).
|
||||
|
||||
If you'd like to add extra plugins to Thunar, add them to
|
||||
[](#opt-programs.thunar.plugins). You shouldn't just add them to
|
||||
|
||||
@@ -709,6 +709,7 @@
|
||||
./services/hardware/usbmuxd.nix
|
||||
./services/hardware/usbrelayd.nix
|
||||
./services/hardware/vdr.nix
|
||||
./services/home-automation/deye-dummycloud.nix
|
||||
./services/home-automation/ebusd.nix
|
||||
./services/home-automation/esphome.nix
|
||||
./services/home-automation/evcc.nix
|
||||
|
||||
@@ -22,7 +22,7 @@ in
|
||||
default = [ ];
|
||||
type = lib.types.listOf lib.types.package;
|
||||
description = "List of thunar plugins to install.";
|
||||
example = lib.literalExpression "with pkgs.xfce; [ thunar-archive-plugin thunar-volman ]";
|
||||
example = lib.literalExpression "with pkgs; [ thunar-archive-plugin thunar-volman ]";
|
||||
};
|
||||
|
||||
};
|
||||
@@ -30,7 +30,7 @@ in
|
||||
|
||||
config = lib.mkIf cfg.enable (
|
||||
let
|
||||
package = pkgs.xfce.thunar.override { thunarPlugins = cfg.plugins; };
|
||||
package = pkgs.thunar.override { thunarPlugins = cfg.plugins; };
|
||||
|
||||
in
|
||||
{
|
||||
|
||||
@@ -37,11 +37,11 @@ in
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
|
||||
environment.systemPackages = with pkgs.xfce; [
|
||||
environment.systemPackages = with pkgs; [
|
||||
tumbler
|
||||
];
|
||||
|
||||
services.dbus.packages = with pkgs.xfce; [
|
||||
services.dbus.packages = with pkgs; [
|
||||
tumbler
|
||||
];
|
||||
|
||||
|
||||
@@ -0,0 +1,56 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
cfg = config.services.deye-dummycloud;
|
||||
in
|
||||
{
|
||||
options.services.deye-dummycloud = {
|
||||
enable = lib.mkEnableOption "the deye-dummycloud service";
|
||||
|
||||
mqttBrokerUrl = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "mqtt://localhost";
|
||||
description = "MQTT broker URL";
|
||||
};
|
||||
mqttUsername = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "";
|
||||
description = "MQTT username";
|
||||
};
|
||||
mqttPassword = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "";
|
||||
description = "MQTT password";
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
systemd.services.deye-dummycloud = {
|
||||
description = "Dummycloud server for DEYE microinverters and bridge to mqtt";
|
||||
wants = [ "network.target" ];
|
||||
after = [ "network.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig = {
|
||||
WorkingDirectory = "${pkgs.deye-dummycloud}/lib/node_modules/deye-dummycloud";
|
||||
ExecStart = "${pkgs.nodejs}/bin/node app.js";
|
||||
Restart = "always";
|
||||
User = "deye-dummycloud";
|
||||
DynamicUser = true;
|
||||
ProtectSystem = "full";
|
||||
ProtectHome = true;
|
||||
Environment = [
|
||||
"MQTT_BROKER_URL=${cfg.mqttBrokerUrl}"
|
||||
"MQTT_USERNAME=${cfg.mqttUsername}"
|
||||
"MQTT_PASSWORD=${cfg.mqttPassword}"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = [ pkgs.deye-dummycloud ];
|
||||
};
|
||||
}
|
||||
@@ -599,7 +599,7 @@ in
|
||||
};
|
||||
|
||||
extraConfig = mkOption {
|
||||
type = types.str;
|
||||
type = types.lines;
|
||||
default = "";
|
||||
example = ''
|
||||
p2p_disabled=1
|
||||
|
||||
@@ -101,7 +101,7 @@ in
|
||||
|
||||
environment.xfce.excludePackages = mkOption {
|
||||
default = [ ];
|
||||
example = literalExpression "[ pkgs.xfce.xfce4-volumed-pulse ]";
|
||||
example = literalExpression "[ pkgs.xfce4-volumed-pulse ]";
|
||||
type = types.listOf types.package;
|
||||
description = "Which packages XFCE should exclude from the default environment";
|
||||
};
|
||||
@@ -118,7 +118,7 @@ in
|
||||
adwaita-icon-theme
|
||||
hicolor-icon-theme
|
||||
tango-icon-theme
|
||||
xfce.xfce4-icon-theme
|
||||
xfce4-icon-theme
|
||||
|
||||
desktop-file-utils
|
||||
shared-mime-info # for update-mime-database
|
||||
@@ -133,37 +133,37 @@ in
|
||||
garcon
|
||||
libxfce4ui
|
||||
|
||||
xfce.mousepad
|
||||
xfce.parole
|
||||
xfce.ristretto
|
||||
xfce.xfce4-appfinder
|
||||
xfce.xfce4-notifyd
|
||||
xfce.xfce4-screenshooter
|
||||
xfce.xfce4-session
|
||||
xfce.xfce4-settings
|
||||
xfce.xfce4-taskmanager
|
||||
xfce.xfce4-terminal
|
||||
mousepad
|
||||
parole
|
||||
ristretto
|
||||
xfce4-appfinder
|
||||
xfce4-notifyd
|
||||
xfce4-screenshooter
|
||||
xfce4-session
|
||||
xfce4-settings
|
||||
xfce4-taskmanager
|
||||
xfce4-terminal
|
||||
]
|
||||
# TODO: NetworkManager doesn't belong here
|
||||
++ lib.optional config.networking.networkmanager.enable networkmanagerapplet
|
||||
++ lib.optional config.powerManagement.enable xfce.xfce4-power-manager
|
||||
++ lib.optional config.powerManagement.enable xfce4-power-manager
|
||||
++ lib.optionals (config.services.pulseaudio.enable || config.services.pipewire.pulse.enable) [
|
||||
pavucontrol
|
||||
# volume up/down keys support:
|
||||
# xfce4-pulseaudio-plugin includes all the functionalities of xfce4-volumed-pulse
|
||||
# but can only be used with xfce4-panel, so for no-desktop usage we still include
|
||||
# xfce4-volumed-pulse
|
||||
(if cfg.noDesktop then xfce.xfce4-volumed-pulse else xfce4-pulseaudio-plugin)
|
||||
(if cfg.noDesktop then xfce4-volumed-pulse else xfce4-pulseaudio-plugin)
|
||||
]
|
||||
++ lib.optionals cfg.enableXfwm [
|
||||
xfce.xfwm4
|
||||
xfce.xfwm4-themes
|
||||
xfwm4
|
||||
xfwm4-themes
|
||||
]
|
||||
++ lib.optionals (!cfg.noDesktop) [
|
||||
xfce4-panel
|
||||
xfce.xfdesktop
|
||||
xfdesktop
|
||||
]
|
||||
++ lib.optional cfg.enableScreensaver xfce.xfce4-screensaver
|
||||
++ lib.optional cfg.enableScreensaver xfce4-screensaver
|
||||
) excludePackages;
|
||||
|
||||
programs.gnupg.agent.pinentryPackage = mkDefault pkgs.pinentry-gtk2;
|
||||
@@ -188,7 +188,7 @@ in
|
||||
desktopNames = [ "XFCE" ];
|
||||
bgSupport = !cfg.noDesktop;
|
||||
start = ''
|
||||
${pkgs.runtimeShell} ${pkgs.xfce.xfce4-session.xinitrc} &
|
||||
${pkgs.runtimeShell} ${pkgs.xfce4-session.xinitrc} &
|
||||
waitPID=$!
|
||||
'';
|
||||
}
|
||||
@@ -238,12 +238,12 @@ in
|
||||
programs.zsh.vteIntegration = mkDefault true;
|
||||
|
||||
# Systemd services
|
||||
systemd.packages = utils.removePackagesByName (with pkgs.xfce; [
|
||||
systemd.packages = utils.removePackagesByName (with pkgs; [
|
||||
xfce4-notifyd
|
||||
]) excludePackages;
|
||||
|
||||
security.pam.services.xfce4-screensaver.unixAuth = cfg.enableScreensaver;
|
||||
|
||||
xdg.portal.configPackages = mkDefault [ pkgs.xfce.xfce4-session ];
|
||||
xdg.portal.configPackages = mkDefault [ pkgs.xfce4-session ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -109,7 +109,7 @@ let
|
||||
# times out after spending many hours
|
||||
#wezterm.pkg = p: p.wezterm;
|
||||
|
||||
xfce4-terminal.pkg = p: p.xfce.xfce4-terminal;
|
||||
xfce4-terminal.pkg = p: p.xfce4-terminal;
|
||||
|
||||
xterm.pkg = p: p.xterm;
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
services.xserver.desktopManager.xfce.enable = true;
|
||||
environment.systemPackages = [ pkgs.xfce4-whiskermenu-plugin ];
|
||||
|
||||
programs.thunar.plugins = [ pkgs.xfce.thunar-archive-plugin ];
|
||||
programs.thunar.plugins = [ pkgs.thunar-archive-plugin ];
|
||||
programs.ydotool.enable = true;
|
||||
};
|
||||
|
||||
|
||||
@@ -16,8 +16,8 @@ let
|
||||
inherit tiling_wm;
|
||||
};
|
||||
stableVersion = {
|
||||
version = "2025.2.2.7"; # "Android Studio Otter 2 Feature Drop | 2025.2.2"
|
||||
sha256Hash = "sha256-pvnUDYeFbxOnw2dP9BeKFushnTHmpDrBwmnNWDx8pbQ=";
|
||||
version = "2025.2.2.8"; # "Android Studio Otter 2 Feature Drop | 2025.2.2 Patch 1"
|
||||
sha256Hash = "sha256-xs9ABQ9f8/gtxcoiZkf/xEtmTOj6rb4Ty+w70/+C4Ss=";
|
||||
};
|
||||
betaVersion = {
|
||||
version = "2025.2.3.6"; # "Android Studio Otter 3 Feature Drop | 2025.2.3 RC 1"
|
||||
|
||||
@@ -13,6 +13,7 @@ from packaging import version
|
||||
|
||||
updates_url = "https://www.jetbrains.com/updates/updates.xml"
|
||||
current_path = pathlib.Path(__file__).parent
|
||||
ides_file_path = current_path.joinpath("..").joinpath("ides.json").resolve()
|
||||
versions_file_path = current_path.joinpath("versions.json").resolve()
|
||||
fromVersions = {}
|
||||
toVersions = {}
|
||||
@@ -72,8 +73,8 @@ def get_url(template, version_or_build_number, version_number):
|
||||
return None
|
||||
|
||||
|
||||
def update_product(name, product):
|
||||
update_channel = product["update-channel"]
|
||||
def update_product(name, ide, version_info):
|
||||
update_channel = ide["updateChannel"]
|
||||
logging.info("Updating %s", name)
|
||||
channel = channels.get(update_channel)
|
||||
if channel is None:
|
||||
@@ -93,17 +94,17 @@ def update_product(name, product):
|
||||
else:
|
||||
version_or_build_number = new_build_number
|
||||
version_number = new_version.split(' ')[0]
|
||||
download_url = get_url(product["url-template"], version_or_build_number, version_number)
|
||||
download_url = get_url(version_info["url-template"], version_or_build_number, version_number)
|
||||
if not download_url:
|
||||
raise Exception(f"No valid url for {name} version {version_or_build_number}")
|
||||
product["url"] = download_url
|
||||
if "sha256" not in product or product.get("build_number") != new_build_number:
|
||||
fromVersions[name] = product["version"]
|
||||
version_info["url"] = download_url
|
||||
if "sha256" not in version_info or version_info.get("build_number") != new_build_number:
|
||||
fromVersions[name] = version_info["version"]
|
||||
toVersions[name] = new_version
|
||||
logging.info("Found a newer version %s with build number %s.", new_version, new_build_number)
|
||||
product["version"] = new_version
|
||||
product["build_number"] = new_build_number
|
||||
product["sha256"] = download_sha256(download_url)
|
||||
version_info["version"] = new_version
|
||||
version_info["build_number"] = new_build_number
|
||||
version_info["sha256"] = download_sha256(download_url)
|
||||
else:
|
||||
logging.info("Already at the latest version %s with build number %s.", new_version, new_build_number)
|
||||
except Exception as e:
|
||||
@@ -112,16 +113,19 @@ def update_product(name, product):
|
||||
logging.warning("It may be out-of-date. Fix the error and rerun.")
|
||||
|
||||
|
||||
def update_products(products):
|
||||
for name, product in products.items():
|
||||
update_product(name, product)
|
||||
def update_products(versioned_products, ides):
|
||||
for name, version_info in versioned_products.items():
|
||||
update_product(name, ides[name], version_info)
|
||||
|
||||
|
||||
with open(versions_file_path, "r") as versions_file:
|
||||
versions = json.load(versions_file)
|
||||
|
||||
for products in versions.values():
|
||||
update_products(products)
|
||||
with open(ides_file_path, "r") as ides_file:
|
||||
ides = json.load(ides_file)
|
||||
|
||||
for versioned_products in versions.values():
|
||||
update_products(versioned_products, ides)
|
||||
|
||||
with open(versions_file_path, "w") as versions_file:
|
||||
json.dump(versions, versions_file, indent=2)
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
{
|
||||
"x86_64-linux": {
|
||||
"aqua": {
|
||||
"update-channel": "Aqua RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/aqua/aqua-{version}.tar.gz",
|
||||
"version": "2024.3.2",
|
||||
"sha256": "de073e8a3734a2c4ef984b3e1bd68f5de72a6180e73400889510439ac3f419aa",
|
||||
@@ -9,7 +8,6 @@
|
||||
"build_number": "243.23654.154"
|
||||
},
|
||||
"clion": {
|
||||
"update-channel": "CLion RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/cpp/CLion-{version}.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "91474a3c35a9b3d50f43f0549098317b65aa881f2f80c3345f8dee7587d31f9e",
|
||||
@@ -17,7 +15,6 @@
|
||||
"build_number": "252.28238.22"
|
||||
},
|
||||
"datagrip": {
|
||||
"update-channel": "DataGrip RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/datagrip/datagrip-{version}.tar.gz",
|
||||
"version": "2025.3",
|
||||
"sha256": "010ad3a676cfe984e7498d1eb4f84686d7a110acbde4f9d288f53967255340e6",
|
||||
@@ -25,7 +22,6 @@
|
||||
"build_number": "253.28294.259"
|
||||
},
|
||||
"dataspell": {
|
||||
"update-channel": "DataSpell RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/dataspell-{version}.tar.gz",
|
||||
"version": "2025.2.3",
|
||||
"sha256": "1e4bc499da1ce8c63e8a4526159c20ef8a797315dc6d3ab4c8eb109f323faba6",
|
||||
@@ -33,7 +29,6 @@
|
||||
"build_number": "252.27397.129"
|
||||
},
|
||||
"gateway": {
|
||||
"update-channel": "Gateway RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-{version}.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "5a84a4dbc5fc1aa03fa1bf142e1eae51e265f6d17ec38c50932b83e629a4366c",
|
||||
@@ -41,7 +36,6 @@
|
||||
"build_number": "252.28238.6"
|
||||
},
|
||||
"goland": {
|
||||
"update-channel": "GoLand RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/go/goland-{version}.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "7b748b7f5af267e8bd4d90d44bbeea8cb58b262115d884d2cd567af8d9d753c1",
|
||||
@@ -49,7 +43,6 @@
|
||||
"build_number": "252.28238.32"
|
||||
},
|
||||
"idea-community": {
|
||||
"update-channel": "IntelliJ IDEA RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/ideaIC-{version}.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "995c334cc3e143f13467abafef07a1ccf7d06275512bb6f4c91123948786ab7c",
|
||||
@@ -57,7 +50,6 @@
|
||||
"build_number": "252.28238.7"
|
||||
},
|
||||
"idea": {
|
||||
"update-channel": "IntelliJ IDEA RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/ideaIU-{version}.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "dc92cd3850ba256d2cb1c9d884f9579f613f6fa747f628361458d21f66687393",
|
||||
@@ -65,7 +57,6 @@
|
||||
"build_number": "252.28238.7"
|
||||
},
|
||||
"mps": {
|
||||
"update-channel": "MPS RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/mps/{versionMajorMinor}/MPS-{version}.tar.gz",
|
||||
"version": "2025.2.1",
|
||||
"sha256": "cfbe530d0385cf3e9ccc2f18f43db25525e0024abdbcd3203bd66fb77fc6f3b4",
|
||||
@@ -73,7 +64,6 @@
|
||||
"build_number": "252.26199.587"
|
||||
},
|
||||
"phpstorm": {
|
||||
"update-channel": "PhpStorm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/webide/PhpStorm-{version}.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "4f102bb85add2527e46695f3b866c0e315423e19bc45e0adb0de0fe577a1efe6",
|
||||
@@ -82,7 +72,6 @@
|
||||
"version-major-minor": "2022.3"
|
||||
},
|
||||
"pycharm-community": {
|
||||
"update-channel": "PyCharm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/pycharm-community-{version}.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "7f49a014f53f0f6f7c46f6710b131f390302287f4046b606331d88081cdb551f",
|
||||
@@ -90,7 +79,6 @@
|
||||
"build_number": "252.28238.29"
|
||||
},
|
||||
"pycharm": {
|
||||
"update-channel": "PyCharm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/pycharm-{version}.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "b1e47419e5844c38e7a7a9be9e5260c75cea6aa8423f2584dc1727f792d5feb4",
|
||||
@@ -98,7 +86,6 @@
|
||||
"build_number": "252.28238.29"
|
||||
},
|
||||
"rider": {
|
||||
"update-channel": "Rider RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/rider/JetBrains.Rider-{version}.tar.gz",
|
||||
"version": "2025.3.0.3",
|
||||
"sha256": "f09d5e060df110316e8abdedc397e6475e5d46d3f99b422d06de69f6e7025dbc",
|
||||
@@ -106,7 +93,6 @@
|
||||
"build_number": "253.28294.237"
|
||||
},
|
||||
"ruby-mine": {
|
||||
"update-channel": "RubyMine RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/ruby/RubyMine-{version}.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "9d42262fa938e072a83828bd643c6d702b07e4a45c095315500a2a60d7bb805c",
|
||||
@@ -114,7 +100,6 @@
|
||||
"build_number": "252.28238.3"
|
||||
},
|
||||
"rust-rover": {
|
||||
"update-channel": "RustRover RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/rustrover/RustRover-{version}.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "01ec30397ec61ac6dcb66cb037ea69b2be8a7e079020e50513f2e1e102ccfc84",
|
||||
@@ -122,7 +107,6 @@
|
||||
"build_number": "252.28238.28"
|
||||
},
|
||||
"webstorm": {
|
||||
"update-channel": "WebStorm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/webstorm/WebStorm-{version}.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "535167a94350f355e8d4b63624df25c9eca58e5f570df596c7ca8ab630f3c485",
|
||||
@@ -130,7 +114,6 @@
|
||||
"build_number": "252.28238.10"
|
||||
},
|
||||
"writerside": {
|
||||
"update-channel": "Writerside EAP",
|
||||
"url-template": "https://download.jetbrains.com/writerside/writerside-{version}.tar.gz",
|
||||
"version": "2024.3 EAP",
|
||||
"sha256": "d49e58020d51ec4ccdbdffea5d42b5a2d776a809fc00789cef5abda7b23bd3f6",
|
||||
@@ -140,7 +123,6 @@
|
||||
},
|
||||
"aarch64-linux": {
|
||||
"aqua": {
|
||||
"update-channel": "Aqua RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/aqua/aqua-{version}-aarch64.tar.gz",
|
||||
"version": "2024.3.2",
|
||||
"sha256": "d2a3c781756a83ccea63dc6d9aebf85f819de1edb5bcd4e5a1a161eaa0779c84",
|
||||
@@ -148,7 +130,6 @@
|
||||
"build_number": "243.23654.154"
|
||||
},
|
||||
"clion": {
|
||||
"update-channel": "CLion RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/cpp/CLion-{version}-aarch64.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "bff9d778fdfa41dc69019f05b01a9f242caa4406432f63b9d599799790f62655",
|
||||
@@ -156,7 +137,6 @@
|
||||
"build_number": "252.28238.22"
|
||||
},
|
||||
"datagrip": {
|
||||
"update-channel": "DataGrip RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/datagrip/datagrip-{version}-aarch64.tar.gz",
|
||||
"version": "2025.3",
|
||||
"sha256": "52a2e70f8903ee70ceb7fd45216f5d3ac35718ba066b30cb084c6bcacf9a5098",
|
||||
@@ -164,7 +144,6 @@
|
||||
"build_number": "253.28294.259"
|
||||
},
|
||||
"dataspell": {
|
||||
"update-channel": "DataSpell RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/dataspell-{version}-aarch64.tar.gz",
|
||||
"version": "2025.2.3",
|
||||
"sha256": "4bebb406617b4179791d4b6560dc50355760773ef37f6ce9f27bd0d1fd638750",
|
||||
@@ -172,7 +151,6 @@
|
||||
"build_number": "252.27397.129"
|
||||
},
|
||||
"gateway": {
|
||||
"update-channel": "Gateway RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-{version}-aarch64.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "62cb3723786e66aec656561cc37f31bf232346be303184e3e73018e85b252430",
|
||||
@@ -180,7 +158,6 @@
|
||||
"build_number": "252.28238.6"
|
||||
},
|
||||
"goland": {
|
||||
"update-channel": "GoLand RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/go/goland-{version}-aarch64.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "c9bdfe1a106c470ee335d779ab59f61898098d4769dac8c2975113dba6d8dcf5",
|
||||
@@ -188,7 +165,6 @@
|
||||
"build_number": "252.28238.32"
|
||||
},
|
||||
"idea-community": {
|
||||
"update-channel": "IntelliJ IDEA RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/ideaIC-{version}-aarch64.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "4c57a783f31ee6f2c82d8c43bb5d0334a9afbc8bfb4542e732048c41f61e63a0",
|
||||
@@ -196,7 +172,6 @@
|
||||
"build_number": "252.28238.7"
|
||||
},
|
||||
"idea": {
|
||||
"update-channel": "IntelliJ IDEA RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/ideaIU-{version}-aarch64.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "6203b9dbc2461abc59604a7fb319d8e06948b2886489ae03499e98f4c1a0a57c",
|
||||
@@ -204,7 +179,6 @@
|
||||
"build_number": "252.28238.7"
|
||||
},
|
||||
"mps": {
|
||||
"update-channel": "MPS RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/mps/{versionMajorMinor}/MPS-{version}.tar.gz",
|
||||
"version": "2025.2.1",
|
||||
"sha256": "cfbe530d0385cf3e9ccc2f18f43db25525e0024abdbcd3203bd66fb77fc6f3b4",
|
||||
@@ -212,7 +186,6 @@
|
||||
"build_number": "252.26199.587"
|
||||
},
|
||||
"phpstorm": {
|
||||
"update-channel": "PhpStorm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/webide/PhpStorm-{version}-aarch64.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "9dbf2ef4f69039f82ed1c4f279a22d5e1cb88051bcf5670e7c4d5bf0263295e9",
|
||||
@@ -221,7 +194,6 @@
|
||||
"version-major-minor": "2022.3"
|
||||
},
|
||||
"pycharm-community": {
|
||||
"update-channel": "PyCharm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/pycharm-community-{version}-aarch64.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "67b61a3e788b043d93b3cc3e0dd3cea350e6d170402fd94adaf792cfc57e5462",
|
||||
@@ -229,7 +201,6 @@
|
||||
"build_number": "252.28238.29"
|
||||
},
|
||||
"pycharm": {
|
||||
"update-channel": "PyCharm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/pycharm-{version}-aarch64.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "7037672c6913f643ec4979ca5f16791588e001ffd39f830d874587f79e358be2",
|
||||
@@ -237,7 +208,6 @@
|
||||
"build_number": "252.28238.29"
|
||||
},
|
||||
"rider": {
|
||||
"update-channel": "Rider RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/rider/JetBrains.Rider-{version}-aarch64.tar.gz",
|
||||
"version": "2025.3.0.3",
|
||||
"sha256": "eb3727a2c4159e185b839b0ee0c2ee7383d4bc5a8ef3c1f41dbd59ae7cb705d6",
|
||||
@@ -245,7 +215,6 @@
|
||||
"build_number": "253.28294.237"
|
||||
},
|
||||
"ruby-mine": {
|
||||
"update-channel": "RubyMine RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/ruby/RubyMine-{version}-aarch64.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "1dd8720dbb32a9ae6ed9856834baf5242aa8296ed179fee3e5b7be432f993155",
|
||||
@@ -253,7 +222,6 @@
|
||||
"build_number": "252.28238.3"
|
||||
},
|
||||
"rust-rover": {
|
||||
"update-channel": "RustRover RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/rustrover/RustRover-{version}-aarch64.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "8e424e01a38faebbfd7fa36cdae51e233551f921a666e36a0a0a6a04e686fa0a",
|
||||
@@ -261,7 +229,6 @@
|
||||
"build_number": "252.28238.28"
|
||||
},
|
||||
"webstorm": {
|
||||
"update-channel": "WebStorm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/webstorm/WebStorm-{version}-aarch64.tar.gz",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "d4a474c7434878906ed9d3c92572ac61c6fe8eb7dc48653677e2ead1785f4551",
|
||||
@@ -269,7 +236,6 @@
|
||||
"build_number": "252.28238.10"
|
||||
},
|
||||
"writerside": {
|
||||
"update-channel": "Writerside EAP",
|
||||
"url-template": "https://download.jetbrains.com/writerside/writerside-{version}-aarch64.tar.gz",
|
||||
"version": "2024.3 EAP",
|
||||
"sha256": "6067f6f73c4a178e2d0ae42bd18669045d85b5b5ed2c9115c2488ba7aa2a3d88",
|
||||
@@ -279,7 +245,6 @@
|
||||
},
|
||||
"x86_64-darwin": {
|
||||
"aqua": {
|
||||
"update-channel": "Aqua RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/aqua/aqua-{version}.dmg",
|
||||
"version": "2024.3.2",
|
||||
"sha256": "423d492e9849beb7edbbd1771650a04e8df9f469bf1789b41bc5878c84cee393",
|
||||
@@ -287,7 +252,6 @@
|
||||
"build_number": "243.23654.154"
|
||||
},
|
||||
"clion": {
|
||||
"update-channel": "CLion RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/cpp/CLion-{version}.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "234b93f26fbb411393dbfd7d1084ff8e8d35b745778d4b9ed1ecba670dafe0fb",
|
||||
@@ -295,7 +259,6 @@
|
||||
"build_number": "252.28238.22"
|
||||
},
|
||||
"datagrip": {
|
||||
"update-channel": "DataGrip RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/datagrip/datagrip-{version}.dmg",
|
||||
"version": "2025.3",
|
||||
"sha256": "4a92e083ddc6edb7ff1639705d6bd3cf8d47d960659a9aa71e19b95fafad8d07",
|
||||
@@ -303,7 +266,6 @@
|
||||
"build_number": "253.28294.259"
|
||||
},
|
||||
"dataspell": {
|
||||
"update-channel": "DataSpell RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/dataspell-{version}.dmg",
|
||||
"version": "2025.2.3",
|
||||
"sha256": "7d1a60c4367a1e1bd43aec494177c4c30744cb5bf904a3c71d2a3d13439a7b12",
|
||||
@@ -311,7 +273,6 @@
|
||||
"build_number": "252.27397.129"
|
||||
},
|
||||
"gateway": {
|
||||
"update-channel": "Gateway RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-{version}.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "a0a4314c5f08331a82420580bf3e26df19b52573cda3ecac354d8ac49caf191d",
|
||||
@@ -319,7 +280,6 @@
|
||||
"build_number": "252.28238.6"
|
||||
},
|
||||
"goland": {
|
||||
"update-channel": "GoLand RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/go/goland-{version}.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "b900b868b748b78c01c5da949e8bcc0df277caa2e3efcc50898641aadaf485f2",
|
||||
@@ -327,7 +287,6 @@
|
||||
"build_number": "252.28238.32"
|
||||
},
|
||||
"idea-community": {
|
||||
"update-channel": "IntelliJ IDEA RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/ideaIC-{version}.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "ff48a1e60869342a91db867fa482a49d4cdf38476496911c109f34a7e8d6523d",
|
||||
@@ -335,7 +294,6 @@
|
||||
"build_number": "252.28238.7"
|
||||
},
|
||||
"idea": {
|
||||
"update-channel": "IntelliJ IDEA RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/ideaIU-{version}.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "c0d6731d60bdcdaaea5c0474c296e39cc336f424da872c6ed022e8f139d779ee",
|
||||
@@ -343,7 +301,6 @@
|
||||
"build_number": "252.28238.7"
|
||||
},
|
||||
"mps": {
|
||||
"update-channel": "MPS RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/mps/{versionMajorMinor}/MPS-{version}-macos.dmg",
|
||||
"version": "2025.2.1",
|
||||
"sha256": "e0b2644918ffe76b10001fc7904a58b2ec88cda2d317b10508d3bac784a490b2",
|
||||
@@ -351,7 +308,6 @@
|
||||
"build_number": "252.26199.587"
|
||||
},
|
||||
"phpstorm": {
|
||||
"update-channel": "PhpStorm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/webide/PhpStorm-{version}.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "2a765be05bd2176899297ba0599735c2a13d1065e9d65895a6ead7ed850f0254",
|
||||
@@ -360,7 +316,6 @@
|
||||
"version-major-minor": "2022.3"
|
||||
},
|
||||
"pycharm-community": {
|
||||
"update-channel": "PyCharm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/pycharm-community-{version}.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "08ba97a278031ff1942ddefb18d8acf7582f0bb4a28ccdf5d65721bfb80ca456",
|
||||
@@ -368,7 +323,6 @@
|
||||
"build_number": "252.28238.29"
|
||||
},
|
||||
"pycharm": {
|
||||
"update-channel": "PyCharm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/pycharm-{version}.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "00eccdeb39bd8eeaed1b98ad99f542fbc3851389f9e7d19355d05dfd979eb669",
|
||||
@@ -376,7 +330,6 @@
|
||||
"build_number": "252.28238.29"
|
||||
},
|
||||
"rider": {
|
||||
"update-channel": "Rider RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/rider/JetBrains.Rider-{version}.dmg",
|
||||
"version": "2025.3.0.3",
|
||||
"sha256": "e8261d30d549f1809228c84e4b31d2cae337cb7bc35cd6da4e0f801e4d2f52db",
|
||||
@@ -384,7 +337,6 @@
|
||||
"build_number": "253.28294.237"
|
||||
},
|
||||
"ruby-mine": {
|
||||
"update-channel": "RubyMine RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/ruby/RubyMine-{version}.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "7dedc215b849194f8814380a4e622e117346fb52fc3f102bfa53332d33c9433b",
|
||||
@@ -392,7 +344,6 @@
|
||||
"build_number": "252.28238.3"
|
||||
},
|
||||
"rust-rover": {
|
||||
"update-channel": "RustRover RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/rustrover/RustRover-{version}.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "1f149d98d41b3929e3e920d5465eaa9963312d93f106d8821d0c51721ae2609c",
|
||||
@@ -400,7 +351,6 @@
|
||||
"build_number": "252.28238.28"
|
||||
},
|
||||
"webstorm": {
|
||||
"update-channel": "WebStorm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/webstorm/WebStorm-{version}.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "1f3779bf695758e830126a95734360bd640794ec278c250fad9a71969de4ee39",
|
||||
@@ -408,7 +358,6 @@
|
||||
"build_number": "252.28238.10"
|
||||
},
|
||||
"writerside": {
|
||||
"update-channel": "Writerside EAP",
|
||||
"url-template": "https://download.jetbrains.com/writerside/writerside-{version}.dmg",
|
||||
"version": "2024.3 EAP",
|
||||
"sha256": "0c78b8035497c855aea5666256716778abd46dadf68f51e4f91c0db01f62b280",
|
||||
@@ -418,7 +367,6 @@
|
||||
},
|
||||
"aarch64-darwin": {
|
||||
"aqua": {
|
||||
"update-channel": "Aqua RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/aqua/aqua-{version}-aarch64.dmg",
|
||||
"version": "2024.3.2",
|
||||
"sha256": "43974cdbbb71aaf5bfcfaf2cfd0e69e9920dda3973e64671936c1d52b267494d",
|
||||
@@ -426,7 +374,6 @@
|
||||
"build_number": "243.23654.154"
|
||||
},
|
||||
"clion": {
|
||||
"update-channel": "CLion RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/cpp/CLion-{version}-aarch64.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "b0496540a133c82c64ac959f1d4542fe331bd63403fd230e23adf4bc957c84af",
|
||||
@@ -434,7 +381,6 @@
|
||||
"build_number": "252.28238.22"
|
||||
},
|
||||
"datagrip": {
|
||||
"update-channel": "DataGrip RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/datagrip/datagrip-{version}-aarch64.dmg",
|
||||
"version": "2025.3",
|
||||
"sha256": "16a5df01852648a82082fb667bbed6fcb43e15ef9a91e35a0be422dd37d07180",
|
||||
@@ -442,7 +388,6 @@
|
||||
"build_number": "253.28294.259"
|
||||
},
|
||||
"dataspell": {
|
||||
"update-channel": "DataSpell RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/dataspell-{version}-aarch64.dmg",
|
||||
"version": "2025.2.3",
|
||||
"sha256": "ad8a2d8403c7d44f66d0905ab6d28a3e888e78b9cc140725e7ca744257c6ce58",
|
||||
@@ -450,7 +395,6 @@
|
||||
"build_number": "252.27397.129"
|
||||
},
|
||||
"gateway": {
|
||||
"update-channel": "Gateway RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-{version}-aarch64.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "af0a82a46ecad837ee6c86d97623e58d377eed7d5ee56c7af5765071e0b0c12e",
|
||||
@@ -458,7 +402,6 @@
|
||||
"build_number": "252.28238.6"
|
||||
},
|
||||
"goland": {
|
||||
"update-channel": "GoLand RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/go/goland-{version}-aarch64.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "91faea3e0aff80e16a27cacaec1c39ef13eac2b3da1b0f0aa1af667be96f4c78",
|
||||
@@ -466,7 +409,6 @@
|
||||
"build_number": "252.28238.32"
|
||||
},
|
||||
"idea-community": {
|
||||
"update-channel": "IntelliJ IDEA RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/ideaIC-{version}-aarch64.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "52065492d433f0ea9df4debd5f0683154ab4dab5846394cabc8a49903d70e5bc",
|
||||
@@ -474,7 +416,6 @@
|
||||
"build_number": "252.28238.7"
|
||||
},
|
||||
"idea": {
|
||||
"update-channel": "IntelliJ IDEA RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/idea/ideaIU-{version}-aarch64.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "6ec8cf520556c75e91a3cae1c54f464dee3609c4d7efef3bb307b129c7d9cb63",
|
||||
@@ -482,7 +423,6 @@
|
||||
"build_number": "252.28238.7"
|
||||
},
|
||||
"mps": {
|
||||
"update-channel": "MPS RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/mps/{versionMajorMinor}/MPS-{version}-macos-aarch64.dmg",
|
||||
"version": "2025.2.1",
|
||||
"url": "https://download.jetbrains.com/mps/2025.2/MPS-2025.2.1-macos-aarch64.dmg",
|
||||
@@ -490,7 +430,6 @@
|
||||
"build_number": "252.26199.587"
|
||||
},
|
||||
"phpstorm": {
|
||||
"update-channel": "PhpStorm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/webide/PhpStorm-{version}-aarch64.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "8320ce229c03277f53a836bc19b796e9241bb00e3e40d4f048290baa27aa9a90",
|
||||
@@ -499,7 +438,6 @@
|
||||
"version-major-minor": "2022.3"
|
||||
},
|
||||
"pycharm-community": {
|
||||
"update-channel": "PyCharm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/pycharm-community-{version}-aarch64.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "040a4ed6bb7563972d844c450f615d0d11385e524fbbfdbfc9fc68d78811e994",
|
||||
@@ -507,7 +445,6 @@
|
||||
"build_number": "252.28238.29"
|
||||
},
|
||||
"pycharm": {
|
||||
"update-channel": "PyCharm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/python/pycharm-{version}-aarch64.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "71da1283259bc59897e5bb43c6c3771a72d026419ed4d79192889ea3885ac0de",
|
||||
@@ -515,7 +452,6 @@
|
||||
"build_number": "252.28238.29"
|
||||
},
|
||||
"rider": {
|
||||
"update-channel": "Rider RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/rider/JetBrains.Rider-{version}-aarch64.dmg",
|
||||
"version": "2025.3.0.3",
|
||||
"sha256": "ff03408013ce86ffd437204d635401a4ca673ee15596e3d93cd9c69e63e7e7c3",
|
||||
@@ -523,7 +459,6 @@
|
||||
"build_number": "253.28294.237"
|
||||
},
|
||||
"ruby-mine": {
|
||||
"update-channel": "RubyMine RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/ruby/RubyMine-{version}-aarch64.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "8527cb286ea5d9cd612538cb55354dc689b7f7fe5ec0b81a8f1a4a2279e94351",
|
||||
@@ -531,7 +466,6 @@
|
||||
"build_number": "252.28238.3"
|
||||
},
|
||||
"rust-rover": {
|
||||
"update-channel": "RustRover RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/rustrover/RustRover-{version}-aarch64.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "7927f48c24ff1e9b235f3f6bbcd74fb1fad907035146a04c55ef62ccdf90c087",
|
||||
@@ -539,7 +473,6 @@
|
||||
"build_number": "252.28238.28"
|
||||
},
|
||||
"webstorm": {
|
||||
"update-channel": "WebStorm RELEASE",
|
||||
"url-template": "https://download.jetbrains.com/webstorm/WebStorm-{version}-aarch64.dmg",
|
||||
"version": "2025.2.5",
|
||||
"sha256": "729d519244a4be15add4b0963ebf84fb9c3f3f2f7d1eab3ad925ef79fe359773",
|
||||
@@ -547,7 +480,6 @@
|
||||
"build_number": "252.28238.10"
|
||||
},
|
||||
"writerside": {
|
||||
"update-channel": "Writerside EAP",
|
||||
"url-template": "https://download.jetbrains.com/writerside/writerside-{version}-aarch64.dmg",
|
||||
"version": "2024.3 EAP",
|
||||
"sha256": "9d86ef50b4c6d2a07d236219e9b05c0557241fb017d52ac395719bdb425130f5",
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{
|
||||
"aqua": {
|
||||
"product": "Aqua",
|
||||
"updateChannel": "Aqua RELEASE",
|
||||
"wmClass": "jetbrains-aqua",
|
||||
"meta": {
|
||||
"isOpenSource": false,
|
||||
@@ -12,6 +13,7 @@
|
||||
},
|
||||
"clion": {
|
||||
"product": "CLion",
|
||||
"updateChannel": "CLion RELEASE",
|
||||
"wmClass": "jetbrains-clion",
|
||||
"meta": {
|
||||
"isOpenSource": false,
|
||||
@@ -23,6 +25,7 @@
|
||||
},
|
||||
"datagrip": {
|
||||
"product": "DataGrip",
|
||||
"updateChannel": "DataGrip RELEASE",
|
||||
"wmClass": "jetbrains-datagrip",
|
||||
"meta": {
|
||||
"isOpenSource": false,
|
||||
@@ -34,6 +37,7 @@
|
||||
},
|
||||
"dataspell": {
|
||||
"product": "DataSpell",
|
||||
"updateChannel": "DataSpell RELEASE",
|
||||
"wmClass": "jetbrains-dataspell",
|
||||
"meta": {
|
||||
"isOpenSource": false,
|
||||
@@ -45,6 +49,7 @@
|
||||
},
|
||||
"gateway": {
|
||||
"product": "JetBrains Gateway",
|
||||
"updateChannel": "Gateway RELEASE",
|
||||
"productShort": "Gateway",
|
||||
"wmClass": "jetbrains-gateway",
|
||||
"meta": {
|
||||
@@ -57,6 +62,7 @@
|
||||
},
|
||||
"goland": {
|
||||
"product": "Goland",
|
||||
"updateChannel": "GoLand RELEASE",
|
||||
"wmClass": "jetbrains-goland",
|
||||
"meta": {
|
||||
"isOpenSource": false,
|
||||
@@ -68,6 +74,7 @@
|
||||
},
|
||||
"idea": {
|
||||
"product": "IntelliJ IDEA",
|
||||
"updateChannel": "IntelliJ IDEA RELEASE",
|
||||
"productShort": "IDEA",
|
||||
"wmClass": "jetbrains-idea",
|
||||
"meta": {
|
||||
@@ -80,6 +87,7 @@
|
||||
},
|
||||
"idea-community": {
|
||||
"product": "IntelliJ IDEA CE",
|
||||
"updateChannel": "IntelliJ IDEA RELEASE",
|
||||
"productShort": "IDEA",
|
||||
"wmClass": "jetbrains-idea-ce",
|
||||
"meta": {
|
||||
@@ -92,6 +100,7 @@
|
||||
},
|
||||
"idea-oss": {
|
||||
"product": "IntelliJ IDEA Open Source",
|
||||
"updateChannel": "IntelliJ IDEA RELEASE",
|
||||
"productShort": "IDEA",
|
||||
"wmClass": "jetbrains-idea-ce",
|
||||
"meta": {
|
||||
@@ -104,6 +113,7 @@
|
||||
},
|
||||
"mps": {
|
||||
"product": "MPS",
|
||||
"updateChannel": "MPS RELEASE",
|
||||
"wmClass": "jetbrains-MPS",
|
||||
"meta": {
|
||||
"isOpenSource": false,
|
||||
@@ -115,6 +125,7 @@
|
||||
},
|
||||
"phpstorm": {
|
||||
"product": "PhpStorm",
|
||||
"updateChannel": "PhpStorm RELEASE",
|
||||
"wmClass": "jetbrains-phpstorm",
|
||||
"meta": {
|
||||
"isOpenSource": false,
|
||||
@@ -127,6 +138,7 @@
|
||||
"pycharm": {
|
||||
"product": "PyCharm",
|
||||
"productShort": "PyCharm",
|
||||
"updateChannel": "PyCharm RELEASE",
|
||||
"wmClass": "jetbrains-pycharm",
|
||||
"meta": {
|
||||
"isOpenSource": false,
|
||||
@@ -139,6 +151,7 @@
|
||||
"pycharm-community": {
|
||||
"product": "PyCharm CE",
|
||||
"productShort": "PyCharm",
|
||||
"updateChannel": "PyCharm RELEASE",
|
||||
"wmClass": "jetbrains-pycharm-ce",
|
||||
"meta": {
|
||||
"isOpenSource": true,
|
||||
@@ -151,6 +164,7 @@
|
||||
"pycharm-oss": {
|
||||
"product": "PyCharm Open Source",
|
||||
"productShort": "PyCharm",
|
||||
"updateChannel": "PyCharm RELEASE",
|
||||
"wmClass": "jetbrains-pycharm-ce",
|
||||
"meta": {
|
||||
"isOpenSource": true,
|
||||
@@ -162,6 +176,7 @@
|
||||
},
|
||||
"rider": {
|
||||
"product": "Rider",
|
||||
"updateChannel": "Rider RELEASE",
|
||||
"wmClass": "jetbrains-rider",
|
||||
"meta": {
|
||||
"isOpenSource": false,
|
||||
@@ -173,6 +188,7 @@
|
||||
},
|
||||
"ruby-mine": {
|
||||
"product": "RubyMine",
|
||||
"updateChannel": "RubyMine RELEASE",
|
||||
"wmClass": "jetbrains-rubymine",
|
||||
"meta": {
|
||||
"isOpenSource": false,
|
||||
@@ -184,6 +200,7 @@
|
||||
},
|
||||
"rust-rover": {
|
||||
"product": "RustRover",
|
||||
"updateChannel": "RustRover RELEASE",
|
||||
"wmClass": "jetbrains-rustrover",
|
||||
"meta": {
|
||||
"isOpenSource": false,
|
||||
@@ -195,6 +212,7 @@
|
||||
},
|
||||
"webstorm": {
|
||||
"product": "WebStorm",
|
||||
"updateChannel": "WebStorm RELEASE",
|
||||
"wmClass": "jetbrains-webstorm",
|
||||
"meta": {
|
||||
"isOpenSource": false,
|
||||
@@ -206,6 +224,7 @@
|
||||
},
|
||||
"writerside": {
|
||||
"product": "Writerside",
|
||||
"updateChannel": "Writerside EAP",
|
||||
"wmClass": "jetbrains-writerside",
|
||||
"meta": {
|
||||
"isOpenSource": false,
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
)
|
||||
|
||||
-private val mavenTelemetryDependencies = listOf("com.fasterxml.jackson.core:jackson-core:2.16.0")
|
||||
+private val mavenTelemetryDependencies = listOf("com.fasterxml.jackson.core:jackson-core:2.17.0")
|
||||
+private val mavenTelemetryDependencies = listOf("com.fasterxml.jackson.core:jackson-core:2.19.0")
|
||||
|
||||
object BundledMavenDownloader {
|
||||
private val mutex = Mutex()
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
--- a/src/main/java/org/jetbrains/jpsBootstrap/KotlinCompiler.kt
|
||||
+++ b/src/main/java/org/jetbrains/jpsBootstrap/KotlinCompiler.kt
|
||||
@@ -14,19 +14,7 @@
|
||||
"https://cache-redirector.jetbrains.com/maven.pkg.jetbrains.space/kotlin/p/kotlin/kotlin-ide-plugin-dependencies"
|
||||
@@ -30,25 +30,7 @@
|
||||
|
||||
|
||||
fun downloadAndExtractKotlinCompiler(communityRoot: BuildDependenciesCommunityRoot): Path {
|
||||
- // We already have kotlin JPS in the classpath, fetch version from it
|
||||
@@ -10,12 +10,18 @@
|
||||
- info("Kotlin compiler version is $kotlincVersion")
|
||||
-
|
||||
- val kotlincUrl = getUriForMavenArtifact(
|
||||
- KOTLIN_IDE_MAVEN_REPOSITORY_URL,
|
||||
- getMavenRepositoryUrl(),
|
||||
- "org.jetbrains.kotlin",
|
||||
- "kotlin-dist-for-ide",
|
||||
- kotlincVersion,
|
||||
- "jar")
|
||||
- val kotlincDist = downloadFileToCacheLocation(communityRoot, kotlincUrl)
|
||||
- val kotlincDist = if (shouldUseMavenLocal()) {
|
||||
- val path = kotlincUrl.toPath()
|
||||
- check(path.exists()) { "kotlin-dist-for-ide was not found in the local Maven repository" }
|
||||
- path
|
||||
- } else {
|
||||
- downloadFileToCacheLocation(communityRoot, kotlincUrl)
|
||||
- }
|
||||
- val kotlinc = extractFileToCacheLocation(communityRoot, kotlincDist)
|
||||
+ val kotlinc = Path.of("KOTLIN_PATH_HERE")
|
||||
verbose("Kotlin compiler is at $kotlinc")
|
||||
|
||||
@@ -46,60 +46,58 @@
|
||||
return URI.create("${base}/${groupStr}/${artifactId}/${version}/${artifactId}-${version}${classifierStr}.${packaging}")
|
||||
--- a/platform/build-scripts/downloader/src/org/jetbrains/intellij/build/dependencies/JdkDownloader.kt
|
||||
+++ b/platform/build-scripts/downloader/src/org/jetbrains/intellij/build/dependencies/JdkDownloader.kt
|
||||
@@ -59,11 +59,7 @@
|
||||
@@ -71,9 +71,7 @@
|
||||
infoLog: (String) -> Unit,
|
||||
): Path {
|
||||
val effectiveVariation = if (isMusl) null else variation
|
||||
- val jdkUrl = getUrl(communityRoot = communityRoot, os = os, arch = arch, isMusl = isMusl, jdkBuildNumber = jdkBuildNumber, variation = effectiveVariation)
|
||||
- val jdkArchive = downloadFileToCacheLocation(url = jdkUrl.toString(), communityRoot = communityRoot)
|
||||
- val jdkExtracted = BuildDependenciesDownloader.extractFileToCacheLocation(communityRoot = communityRoot,
|
||||
- archiveFile = jdkArchive,
|
||||
- BuildDependenciesExtractOptions.STRIP_ROOT)
|
||||
- val jdkArchive = downloadFileToCacheLocation(url = jdkUrl, communityRoot = communityRoot)
|
||||
- val jdkExtracted = extractFileToCacheLocation(communityRoot = communityRoot, archiveFile = jdkArchive, stripRoot = true)
|
||||
+ val jdkExtracted = Path.of("JDK_PATH_HERE")
|
||||
val jdkHome = if (os == OS.MACOSX) jdkExtracted.resolve("Contents").resolve("Home") else jdkExtracted
|
||||
infoLog("JPS-bootstrap JDK (jdkHome=$jdkHome, executable=${getJavaExecutable(jdkHome)})")
|
||||
return jdkHome
|
||||
--- a/platform/build-scripts/src/org/jetbrains/intellij/build/LinuxDistributionCustomizer.kt
|
||||
+++ b/platform/build-scripts/src/org/jetbrains/intellij/build/LinuxDistributionCustomizer.kt
|
||||
@@ -46,7 +46,7 @@
|
||||
@@ -62,7 +62,7 @@
|
||||
/**
|
||||
* If `true`, a separate *[org.jetbrains.intellij.build.impl.LinuxDistributionBuilder.NO_RUNTIME_SUFFIX].tar.gz artifact without a runtime will be produced.
|
||||
* If `true`, a separate `*[org.jetbrains.intellij.build.impl.LinuxDistributionBuilder.NO_RUNTIME_SUFFIX].tar.gz` artifact without a runtime will be produced.
|
||||
*/
|
||||
- var buildArtifactWithoutRuntime = false
|
||||
+ var buildArtifactWithoutRuntime = true
|
||||
- var buildArtifactWithoutRuntime: Boolean = false
|
||||
+ var buildArtifactWithoutRuntime: Boolean = true
|
||||
|
||||
/**
|
||||
* Set both properties if a .snap package should be produced.
|
||||
--- a/platform/build-scripts/src/org/jetbrains/intellij/build/impl/LinuxDistributionBuilder.kt
|
||||
+++ b/platform/build-scripts/src/org/jetbrains/intellij/build/impl/LinuxDistributionBuilder.kt
|
||||
@@ -50,7 +50,7 @@
|
||||
@@ -76,7 +76,7 @@
|
||||
val distBinDir = targetPath.resolve("bin")
|
||||
val sourceBinDir = context.paths.communityHomeDir.resolve("bin/linux")
|
||||
addNativeLauncher(distBinDir, targetPath, arch)
|
||||
addNativeLauncher(distBinDir = distBinDir, targetPath = targetPath, arch = arch, context = context)
|
||||
- copyFileToDir(NativeBinaryDownloader.getRestarter(context, OsFamily.LINUX, arch), distBinDir)
|
||||
+ copyFileToDir(sourceBinDir.resolve("${arch.dirName}/restarter"), distBinDir)
|
||||
copyFileToDir(sourceBinDir.resolve("${arch.dirName}/fsnotifier"), distBinDir)
|
||||
generateBuildTxt(context, targetPath)
|
||||
copyDistFiles(context, targetPath, OsFamily.LINUX, arch)
|
||||
@@ -85,6 +85,8 @@
|
||||
generateBuildTxt(context = context, targetDirectory = targetPath)
|
||||
copyDistFiles(context = context, newDir = targetPath, os = OsFamily.LINUX, arch = arch, libcImpl = targetLibcImpl)
|
||||
@@ -132,6 +132,8 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+
|
||||
+ return@executeStep
|
||||
+
|
||||
val runtimeDir = context.bundledRuntime.extract(os = OsFamily.LINUX, arch = arch)
|
||||
updateExecutablePermissions(runtimeDir, executableFileMatchers)
|
||||
val tarGzPath = buildTarGz(arch = arch, runtimeDir = runtimeDir, unixDistPath = osAndArchSpecificDistPath, suffix = suffix(arch))
|
||||
@@ -383,7 +385,8 @@
|
||||
}
|
||||
|
||||
private suspend fun addNativeLauncher(distBinDir: Path, targetPath: Path, arch: JvmArchitecture) {
|
||||
- val (execPath, licensePath) = NativeBinaryDownloader.getLauncher(context, OsFamily.LINUX, arch)
|
||||
+ val execPath = Path.of("XPLAT_LAUNCHER_PREBUILT_PATH_HERE/Linux-${arch.archName}/xplat-launcher")
|
||||
+ val licensePath = Path.of("XPLAT_LAUNCHER_PREBUILT_PATH_HERE/license/xplat-launcher-third-party-licenses.html")
|
||||
copyFile(execPath, distBinDir.resolve(context.productProperties.baseFileName))
|
||||
copyFile(licensePath, targetPath.resolve("license/launcher-third-party-libraries.html"))
|
||||
}
|
||||
val runtimeDir = context.bundledRuntime.extract(OsFamily.LINUX, arch, targetLibcImpl)
|
||||
updateExecutablePermissions(runtimeDir, executableFileMatchers)
|
||||
@@ -422,7 +424,8 @@
|
||||
}
|
||||
|
||||
private suspend fun addNativeLauncher(distBinDir: Path, targetPath: Path, arch: JvmArchitecture, context: BuildContext) {
|
||||
- val (execPath, licensePath) = NativeBinaryDownloader.getLauncher(context, OsFamily.LINUX, arch)
|
||||
+ val execPath = Path.of("XPLAT_LAUNCHER_PREBUILT_PATH_HERE/Linux-${arch.archName}/xplat-launcher")
|
||||
+ val licensePath = Path.of("XPLAT_LAUNCHER_PREBUILT_PATH_HERE/license/xplat-launcher-third-party-licenses.html")
|
||||
copyFile(execPath, distBinDir.resolve(context.productProperties.baseFileName))
|
||||
copyFile(licensePath, targetPath.resolve("license/launcher-third-party-libraries.html"))
|
||||
}
|
||||
--- a/platform/build-scripts/src/org/jetbrains/intellij/build/impl/brokenPlugins.kt
|
||||
+++ b/platform/build-scripts/src/org/jetbrains/intellij/build/impl/brokenPlugins.kt
|
||||
@@ -9,6 +9,8 @@
|
||||
@@ -122,20 +120,32 @@
|
||||
}
|
||||
--- a/platform/build-scripts/src/org/jetbrains/intellij/build/kotlin/KotlinCompilerDependencyDownloader.kt
|
||||
+++ b/platform/build-scripts/src/org/jetbrains/intellij/build/kotlin/KotlinCompilerDependencyDownloader.kt
|
||||
@@ -23,31 +23,11 @@
|
||||
@@ -44,45 +44,11 @@
|
||||
|
||||
|
||||
object KotlinCompilerDependencyDownloader {
|
||||
fun downloadAndExtractKotlinCompiler(communityRoot: BuildDependenciesCommunityRoot): Path {
|
||||
- val kotlinJpsPluginVersion = getKotlinJpsPluginVersion(communityRoot)
|
||||
- val kotlinDistUrl = getUriForMavenArtifact(MAVEN_REPOSITORY_URL, ARTIFACT_GROUP_ID, "kotlin-dist-for-ide", kotlinJpsPluginVersion, "jar")
|
||||
- val kotlinDistJar = downloadFileToCacheLocation(communityRoot, kotlinDistUrl)
|
||||
- val kotlinDistUrl = getUriForMavenArtifact(getMavenRepositoryUrl(), ARTIFACT_GROUP_ID, "kotlin-dist-for-ide", kotlinJpsPluginVersion, "jar")
|
||||
- val kotlinDistJar = if (shouldUseMavenLocal()) {
|
||||
- val path = kotlinDistUrl.toPath()
|
||||
- check(path.exists()) { "kotlin-dist-for-ide was not found in the local Maven repository" }
|
||||
- path
|
||||
- } else {
|
||||
- downloadFileToCacheLocation(communityRoot, kotlinDistUrl)
|
||||
- }
|
||||
- return extractFileToCacheLocation(communityRoot, kotlinDistJar)
|
||||
+ return Path.of("KOTLIN_PATH_HERE")
|
||||
}
|
||||
|
||||
suspend fun downloadKotlinJpsPlugin(communityRoot: BuildDependenciesCommunityRoot): Path = withContext(Dispatchers.IO) {
|
||||
- val kotlinJpsPluginVersion = getKotlinJpsPluginVersion(communityRoot)
|
||||
- val kotlinJpsPluginUrl = getUriForMavenArtifact(MAVEN_REPOSITORY_URL, ARTIFACT_GROUP_ID, "kotlin-jps-plugin-classpath", kotlinJpsPluginVersion, "jar")
|
||||
- val kotlinJpsPluginUrl = getUriForMavenArtifact(getMavenRepositoryUrl(), ARTIFACT_GROUP_ID, "kotlin-jps-plugin-classpath", kotlinJpsPluginVersion, "jar")
|
||||
-
|
||||
- if (shouldUseMavenLocal()) {
|
||||
- val kotlinJpsPluginJar = kotlinJpsPluginUrl.toPath()
|
||||
- check(kotlinJpsPluginJar.exists()) { "kotlin-jps-plugin-classpath was not found in the local Maven repository" }
|
||||
- return@withContext kotlinJpsPluginJar
|
||||
- }
|
||||
-
|
||||
- val cacheLocation = getTargetFile(communityRoot, kotlinJpsPluginUrl.toString())
|
||||
- if (cacheLocation.exists()) {
|
||||
@@ -148,7 +158,9 @@
|
||||
- println(" * Downloading $kotlinJpsPluginUrl")
|
||||
- val tmpLocation = Files.createTempFile(cacheLocation.parent, cacheLocation.name, ".tmp")
|
||||
- retryWithExponentialBackOff {
|
||||
- FileUtils.copyURLToFile(kotlinJpsPluginUrl.toURL(), tmpLocation.toFile())
|
||||
- kotlinJpsPluginUrl.toURL().openStream().use {
|
||||
- Files.copy(it, tmpLocation, StandardCopyOption.REPLACE_EXISTING)
|
||||
- }
|
||||
- }
|
||||
- Files.move(tmpLocation, cacheLocation, StandardCopyOption.ATOMIC_MOVE)
|
||||
- return@withContext cacheLocation
|
||||
|
||||
@@ -38,14 +38,13 @@ fetchurl {
|
||||
## How to update stuff:
|
||||
- Run ./bin/update_bin.py, this will update binary IDEs, and automatically commit them
|
||||
- Source builds need a bit more effort, as they **aren't automated at the moment**:
|
||||
- Run ./source/update.py ./source/sources.json ./bin/versions.json. This will update the source version to the version of their corresponding binary packages.
|
||||
- Run ./source/update.py ./source/sources.json. This will update the source version to the latest available version.
|
||||
- Run these commands respectively:
|
||||
- `nix build .#jetbrains.idea-oss.src.src && ./source/build_maven.py source/idea_maven_artefacts.json result/` for IDEA
|
||||
- `nix build .#jetbrains.pycharm-oss.src.src && ./source/build_maven.py source/pycharm_maven_artefacts.json result/` for PyCharm
|
||||
- Update `brokenPlugins` timestamp and hash (from https://web.archive.org/web/*/https://plugins.jetbrains.com/files/brokenPlugins.json)
|
||||
- Make sure the Kotlin version used is correct.
|
||||
- Check the recommended Kotlin version in `.idea/kotlinc.xml` in the IDEA source root
|
||||
- Do a test build
|
||||
- Notice that sometimes a newer Kotlin version is required to build from source, if build fails, first check the recommended Kotlin version in `.idea/kotlinc.xml` in the IDEA source root
|
||||
- Feel free to update the Kotlin version to a compatible one
|
||||
- If it succeeds, make a commit
|
||||
- make a PR/merge
|
||||
- If it fails, ping/message GenericNerdyUsername or the nixpkgs Jetbrains maintainer team
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
[]
|
||||
@@ -9,6 +9,7 @@
|
||||
stdenv,
|
||||
stdenvNoCC,
|
||||
rustPlatform,
|
||||
callPackage,
|
||||
|
||||
ant,
|
||||
cmake,
|
||||
@@ -37,14 +38,14 @@
|
||||
|
||||
let
|
||||
kotlin' = kotlin.overrideAttrs (oldAttrs: {
|
||||
version = "2.1.10";
|
||||
version = "2.2.20";
|
||||
src = fetchurl {
|
||||
url = oldAttrs.src.url;
|
||||
sha256 = "sha256-xuniY2iJgo4ZyIEdWriQhiU4yJ3CoxAZVt/uPCqLprE=";
|
||||
hash = "sha256-gfAmTJBztcu9s/+EGM8sXawHaHn8FW+hpkYvWlrMRCA=";
|
||||
};
|
||||
});
|
||||
|
||||
jbr = jetbrains.jdk-no-jcef-17;
|
||||
jbr = jetbrains.jdk-no-jcef;
|
||||
|
||||
ideaSrc = fetchFromGitHub {
|
||||
owner = "jetbrains";
|
||||
@@ -134,25 +135,7 @@ let
|
||||
];
|
||||
};
|
||||
|
||||
jpsRepo =
|
||||
runCommand "jps-bootstrap-repository"
|
||||
{
|
||||
outputHashAlgo = "sha256";
|
||||
outputHashMode = "recursive";
|
||||
outputHash = jpsHash;
|
||||
nativeBuildInputs = [
|
||||
ant
|
||||
jbr
|
||||
];
|
||||
}
|
||||
''
|
||||
ant -Duser.home=$out -Dbuild.dir=/build/tmp -f ${src}/platform/jps-bootstrap/jps-bootstrap-classpath.xml
|
||||
find $out -type f \( \
|
||||
-name \*.lastUpdated \
|
||||
-o -name resolver-status.properties \
|
||||
-o -name _remote.repositories \) \
|
||||
-delete
|
||||
'';
|
||||
jpsRepo = callPackage ./jps_repo.nix { inherit jpsHash src jbr; };
|
||||
|
||||
jps-bootstrap = stdenvNoCC.mkDerivation {
|
||||
pname = "jps-bootstrap";
|
||||
@@ -169,7 +152,8 @@ let
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
ant -Duser.home=${jpsRepo} -Dbuild.dir=/build/out -f jps-bootstrap-classpath.xml
|
||||
BUILD_HOME=$(mktemp -d)
|
||||
ant -Duser.home=${jpsRepo} -Dbuild.dir="$BUILD_HOME" -f jps-bootstrap-classpath.xml
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
@@ -177,8 +161,8 @@ let
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/share/java/
|
||||
cp /build/out/jps-bootstrap.classes.jar $out/share/java/jps-bootstrap.jar
|
||||
cp -r /build/out/jps-bootstrap.out.lib $out/share/java/jps-bootstrap-classpath
|
||||
cp "$BUILD_HOME/jps-bootstrap.classes.jar" $out/share/java/jps-bootstrap.jar
|
||||
cp -r "$BUILD_HOME/jps-bootstrap.out.lib" $out/share/java/jps-bootstrap-classpath
|
||||
makeWrapper ${jbr}/bin/java $out/bin/jps-bootstrap \
|
||||
--add-flags "-cp $out/share/java/jps-bootstrap-classpath/'*' org.jetbrains.jpsBootstrap.JpsBootstrapMain"
|
||||
|
||||
@@ -190,7 +174,12 @@ let
|
||||
mkRepoEntry = entry: {
|
||||
name = ".m2/repository/" + entry.path;
|
||||
path = fetchurl {
|
||||
urls = map (url: "${url}/${entry.url}") repositories;
|
||||
urls = lib.concatMap (url: [
|
||||
"https://cache-redirector.jetbrains.com/${url}/${entry.url}"
|
||||
"https://${url}/${entry.url}"
|
||||
]) repositories;
|
||||
# Do not try to retry 4xx errors
|
||||
curlOptsList = [ "--no-retry-all-errors" ];
|
||||
sha256 = entry.hash;
|
||||
};
|
||||
};
|
||||
@@ -198,25 +187,26 @@ let
|
||||
|
||||
kotlin-jps-plugin-classpath =
|
||||
let
|
||||
repoUrl = "https://cache-redirector.jetbrains.com/maven.pkg.jetbrains.space/kotlin/p/kotlin/kotlin-ide-plugin-dependencies";
|
||||
groupId = builtins.replaceStrings [ "." ] [ "/" ] "org.jetbrains.kotlin";
|
||||
repoBaseUrl = "packages.jetbrains.team/maven/p/ij/intellij-dependencies";
|
||||
repoUrls = [
|
||||
"https://cache-redirector.jetbrains.com/${repoBaseUrl}"
|
||||
"https://${repoBaseUrl}"
|
||||
];
|
||||
groupId = "org/jetbrains/kotlin";
|
||||
artefactId = "kotlin-jps-plugin-classpath";
|
||||
version = kotlin-jps-plugin.version;
|
||||
in
|
||||
fetchurl {
|
||||
url =
|
||||
repoUrl
|
||||
+ "/"
|
||||
+ groupId
|
||||
+ "/"
|
||||
+ artefactId
|
||||
+ "/"
|
||||
+ version
|
||||
+ "/"
|
||||
+ artefactId
|
||||
+ "-"
|
||||
+ version
|
||||
+ ".jar";
|
||||
urls = map (
|
||||
url:
|
||||
lib.concatStringsSep "/" [
|
||||
url
|
||||
groupId
|
||||
artefactId
|
||||
version
|
||||
"${artefactId}-${version}.jar"
|
||||
]
|
||||
) repoUrls;
|
||||
hash = kotlin-jps-plugin.hash;
|
||||
};
|
||||
|
||||
@@ -232,16 +222,14 @@ let
|
||||
"OpenSourceCommunityInstallersBuildTarget";
|
||||
|
||||
xplat-launcher = fetchzip {
|
||||
url = "https://cache-redirector.jetbrains.com/intellij-dependencies/org/jetbrains/intellij/deps/launcher/242.22926/launcher-242.22926.tar.gz";
|
||||
urls = [
|
||||
"https://cache-redirector.jetbrains.com/intellij-dependencies/org/jetbrains/intellij/deps/launcher/242.22926/launcher-242.22926.tar.gz"
|
||||
"https://packages.jetbrains.team/maven/p/ij/intellij-dependencies/org/jetbrains/intellij/deps/launcher/242.22926/launcher-242.22926.tar.gz"
|
||||
];
|
||||
hash = "sha256-ttrQZUbBvvyH1BSVt1yWOoD82WwRi/hkoRfrsdCjwTA=";
|
||||
stripRoot = false;
|
||||
};
|
||||
|
||||
brokenPlugins = fetchurl {
|
||||
url = "https://web.archive.org/web/20250509141038/https://downloads.marketplace.jetbrains.com/files/brokenPlugins.json";
|
||||
hash = "sha256-FzYANZSTasCdVEu9jLF1+2PEH8SadUddaIaec5vhKH8=";
|
||||
};
|
||||
|
||||
in
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "${buildType}-oss";
|
||||
@@ -261,6 +249,9 @@ stdenvNoCC.mkDerivation rec {
|
||||
../patches/bump-jackson-core-in-source.patch
|
||||
];
|
||||
|
||||
# Regarding brokenPlugins.json:
|
||||
# We provide an empty brokenPlugins.json because the original file is 2.8 MB in size and can't be reliably
|
||||
# downloaded without hash changes. The file is not important for the IDEs to function properly.
|
||||
postPatch = ''
|
||||
cp ${restarter}/bin/restarter bin/linux/amd64/restarter
|
||||
cp ${fsnotifier}/bin/fsnotifier bin/linux/amd64/fsnotifier
|
||||
@@ -275,7 +266,7 @@ stdenvNoCC.mkDerivation rec {
|
||||
--replace-fail 'JDK_PATH_HERE' '${jbr}/lib/openjdk'
|
||||
substituteInPlace \
|
||||
platform/build-scripts/src/org/jetbrains/intellij/build/impl/brokenPlugins.kt \
|
||||
--replace-fail 'BROKEN_PLUGINS_HERE' '${brokenPlugins}'
|
||||
--replace-fail 'BROKEN_PLUGINS_HERE' '${./brokenPlugins.json}'
|
||||
substituteInPlace \
|
||||
platform/build-scripts/src/org/jetbrains/intellij/build/impl/LinuxDistributionBuilder.kt \
|
||||
--replace-fail 'XPLAT_LAUNCHER_PREBUILT_PATH_HERE' '${xplat-launcher}'
|
||||
@@ -290,8 +281,8 @@ stdenvNoCC.mkDerivation rec {
|
||||
configurePhase = ''
|
||||
runHook preConfigure
|
||||
|
||||
ln -s "$repo"/.m2 /build/.m2
|
||||
export JPS_BOOTSTRAP_COMMUNITY_HOME=/build/source
|
||||
ln -s "$repo"/.m2 ../.m2
|
||||
export JPS_BOOTSTRAP_COMMUNITY_HOME="$PWD"
|
||||
jps-bootstrap \
|
||||
-Dbuild.number=${buildNumber} \
|
||||
-Djps.kotlin.home=${kotlin'} \
|
||||
@@ -300,7 +291,7 @@ stdenvNoCC.mkDerivation rec {
|
||||
-Dintellij.build.skip.build.steps=mac_artifacts,mac_dmg,mac_sit,windows_exe_installer,windows_sign,repair_utility_bundle_step,sources_archive \
|
||||
-Dintellij.build.unix.snaps=false \
|
||||
--java-argfile-target=java_argfile \
|
||||
/build/source \
|
||||
"$PWD" \
|
||||
${targetClass} \
|
||||
${targetName}
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#!/usr/bin/env nix-shell
|
||||
#! nix-shell -i python3 -p python3 python3.pkgs.xmltodict
|
||||
import os
|
||||
import urllib
|
||||
from argparse import ArgumentParser
|
||||
from xmltodict import parse
|
||||
from json import dump
|
||||
@@ -22,11 +23,28 @@ def ensure_is_list(x):
|
||||
return x
|
||||
|
||||
def add_entries(sources, targets, hashes):
|
||||
for num, artefact in enumerate(sources):
|
||||
for artefact in sources:
|
||||
target = None
|
||||
base_jar_name = os.path.basename(urllib.parse.urlparse(artefact["@url"]).path)
|
||||
for candidate in targets:
|
||||
if candidate["@url"].endswith(base_jar_name + "!/"):
|
||||
target = candidate
|
||||
break
|
||||
if target is None:
|
||||
raise ValueError(f"Did not find target for source {artefact}")
|
||||
|
||||
url = artefact["@url"].removeprefix("file://$MAVEN_REPOSITORY$/")
|
||||
if url == artefact["@url"]:
|
||||
raise ValueError(f"Unexpected artefact URL {url}")
|
||||
|
||||
path = target["@url"].removeprefix("jar://$MAVEN_REPOSITORY$/").removesuffix("!/")
|
||||
if path == target["@url"]:
|
||||
raise ValueError(f"Unexpected target path {path}")
|
||||
|
||||
hashes.append({
|
||||
"url": artefact["@url"][26:],
|
||||
"url": url,
|
||||
"hash": artefact["sha256sum"],
|
||||
"path": targets[num]["@url"][25:-2]
|
||||
"path": path
|
||||
})
|
||||
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,26 @@
|
||||
{
|
||||
runCommand,
|
||||
ant,
|
||||
jbr,
|
||||
|
||||
jpsHash,
|
||||
src,
|
||||
}:
|
||||
runCommand "jps-bootstrap-repository"
|
||||
{
|
||||
outputHashAlgo = "sha256";
|
||||
outputHashMode = "recursive";
|
||||
outputHash = jpsHash;
|
||||
nativeBuildInputs = [
|
||||
ant
|
||||
jbr
|
||||
];
|
||||
}
|
||||
''
|
||||
ant -Duser.home=$out -Dbuild.dir=$(mktemp -d) -f ${src}/platform/jps-bootstrap/jps-bootstrap-classpath.xml
|
||||
find $out -type f \( \
|
||||
-name \*.lastUpdated \
|
||||
-o -name resolver-status.properties \
|
||||
-o -name _remote.repositories \) \
|
||||
-delete
|
||||
''
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,52 +1,56 @@
|
||||
{
|
||||
"idea-oss": {
|
||||
"version": "2025.1.1.1",
|
||||
"buildNumber": "251.25410.129",
|
||||
"version": "2025.3.1",
|
||||
"buildNumber": "253.29346.138",
|
||||
"buildType": "idea",
|
||||
"ideaHash": "sha256-9YatnO+9Pcrlx7EXmq4wMVdeR3DzJF2fsQOvRWH11tk=",
|
||||
"androidHash": "sha256-ueMdEkXt/x5WIex163iwTlOm5bvZNluNO7SNxs+bPYs=",
|
||||
"jpsHash": "sha256-aOYCwDSso0X/7f5tWfP+veoQhCvd6tEDk9lq4YX/cb0=",
|
||||
"ideaHash": "sha256-eAq/lgv6ZcN9SR2E1KYnnhDHe/rBQ3GqqbbF6GstDoU=",
|
||||
"androidHash": "sha256-quMCzrjCKIo1pkzw4PWewAs5tz7A2aq7TI5zd+QaaUY=",
|
||||
"jpsHash": "sha256-iHpt926BDLNUwHRXvkqVgwlWiLo1qSZEaGeJcS0Fjmk=",
|
||||
"restarterHash": "sha256-acCmC58URd6p9uKZrm0qWgdZkqu9yqCs23v8qgxV2Ag=",
|
||||
"mvnDeps": "idea_maven_artefacts.json",
|
||||
"repositories": [
|
||||
"https://cache-redirector.jetbrains.com/repo1.maven.org/maven2",
|
||||
"https://cache-redirector.jetbrains.com/packages.jetbrains.team/maven/p/ij/intellij-dependencies",
|
||||
"https://cache-redirector.jetbrains.com/dl.google.com/dl/android/maven2",
|
||||
"https://cache-redirector.jetbrains.com/download.jetbrains.com/teamcity-repository",
|
||||
"https://cache-redirector.jetbrains.com/maven.pkg.jetbrains.space/kotlin/p/kotlin/kotlin-ide-plugin-dependencies",
|
||||
"https://cache-redirector.jetbrains.com/packages.jetbrains.team/maven/p/grazi/grazie-platform-public",
|
||||
"https://cache-redirector.jetbrains.com/packages.jetbrains.team/maven/p/kpm/public",
|
||||
"https://cache-redirector.jetbrains.com/packages.jetbrains.team/maven/p/ki/maven",
|
||||
"https://cache-redirector.jetbrains.com/maven.pkg.jetbrains.space/public/p/compose/dev"
|
||||
"repo1.maven.org/maven2",
|
||||
"packages.jetbrains.team/maven/p/ij/intellij-dependencies",
|
||||
"dl.google.com/dl/android/maven2",
|
||||
"download.jetbrains.com/teamcity-repository",
|
||||
"maven.pkg.jetbrains.space/kotlin/p/kotlin/kotlin-ide-plugin-dependencies",
|
||||
"packages.jetbrains.team/maven/p/grazi/grazie-platform-public",
|
||||
"packages.jetbrains.team/maven/p/kpm/public",
|
||||
"packages.jetbrains.team/maven/p/ki/maven",
|
||||
"maven.pkg.jetbrains.space/public/p/compose/dev",
|
||||
"packages.jetbrains.team/maven/p/amper/amper",
|
||||
"packages.jetbrains.team/maven/p/kt/bootstrap"
|
||||
],
|
||||
"kotlin-jps-plugin": {
|
||||
"version": "2.1.10",
|
||||
"hash": "sha256-Bu5eCHxls6EoIgzadiEY31plAcxZ6DA2a10CXAtPqV4="
|
||||
"version": "2.2.20",
|
||||
"hash": "sha256-+jGghK2+yq+YFm5zT7ob+WTgTiJnHXAjDtlZjOzSISQ="
|
||||
}
|
||||
},
|
||||
"pycharm-oss": {
|
||||
"version": "2025.1.1.1",
|
||||
"buildNumber": "251.25410.159",
|
||||
"version": "2025.3.1",
|
||||
"buildNumber": "253.29346.142",
|
||||
"buildType": "pycharm",
|
||||
"ideaHash": "sha256-0VHoFk9/xKei4jvkEvl+9KiJwCoVPKh7g5EBSXQ+Ios=",
|
||||
"androidHash": "sha256-af1RJeU7BJTtYTvZRNcH77/Tn4j4lLsRRJUGS80rM4U=",
|
||||
"jpsHash": "sha256-aOYCwDSso0X/7f5tWfP+veoQhCvd6tEDk9lq4YX/cb0=",
|
||||
"ideaHash": "sha256-eAq/lgv6ZcN9SR2E1KYnnhDHe/rBQ3GqqbbF6GstDoU=",
|
||||
"androidHash": "sha256-quMCzrjCKIo1pkzw4PWewAs5tz7A2aq7TI5zd+QaaUY=",
|
||||
"jpsHash": "sha256-iHpt926BDLNUwHRXvkqVgwlWiLo1qSZEaGeJcS0Fjmk=",
|
||||
"restarterHash": "sha256-acCmC58URd6p9uKZrm0qWgdZkqu9yqCs23v8qgxV2Ag=",
|
||||
"mvnDeps": "pycharm_maven_artefacts.json",
|
||||
"repositories": [
|
||||
"https://cache-redirector.jetbrains.com/repo1.maven.org/maven2",
|
||||
"https://cache-redirector.jetbrains.com/packages.jetbrains.team/maven/p/ij/intellij-dependencies",
|
||||
"https://cache-redirector.jetbrains.com/dl.google.com/dl/android/maven2",
|
||||
"https://cache-redirector.jetbrains.com/download.jetbrains.com/teamcity-repository",
|
||||
"https://cache-redirector.jetbrains.com/maven.pkg.jetbrains.space/kotlin/p/kotlin/kotlin-ide-plugin-dependencies",
|
||||
"https://cache-redirector.jetbrains.com/packages.jetbrains.team/maven/p/grazi/grazie-platform-public",
|
||||
"https://cache-redirector.jetbrains.com/packages.jetbrains.team/maven/p/kpm/public",
|
||||
"https://cache-redirector.jetbrains.com/packages.jetbrains.team/maven/p/ki/maven",
|
||||
"https://cache-redirector.jetbrains.com/maven.pkg.jetbrains.space/public/p/compose/dev"
|
||||
"repo1.maven.org/maven2",
|
||||
"packages.jetbrains.team/maven/p/ij/intellij-dependencies",
|
||||
"dl.google.com/dl/android/maven2",
|
||||
"download.jetbrains.com/teamcity-repository",
|
||||
"maven.pkg.jetbrains.space/kotlin/p/kotlin/kotlin-ide-plugin-dependencies",
|
||||
"packages.jetbrains.team/maven/p/grazi/grazie-platform-public",
|
||||
"packages.jetbrains.team/maven/p/kpm/public",
|
||||
"packages.jetbrains.team/maven/p/ki/maven",
|
||||
"maven.pkg.jetbrains.space/public/p/compose/dev",
|
||||
"packages.jetbrains.team/maven/p/amper/amper",
|
||||
"packages.jetbrains.team/maven/p/kt/bootstrap"
|
||||
],
|
||||
"kotlin-jps-plugin": {
|
||||
"version": "2.1.10",
|
||||
"hash": "sha256-Bu5eCHxls6EoIgzadiEY31plAcxZ6DA2a10CXAtPqV4="
|
||||
"version": "2.2.20",
|
||||
"hash": "sha256-+jGghK2+yq+YFm5zT7ob+WTgTiJnHXAjDtlZjOzSISQ="
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,12 +1,21 @@
|
||||
#!/usr/bin/env nix-shell
|
||||
# ! nix-shell -i python3 -p python3 python3.pkgs.xmltodict
|
||||
#! nix-shell -i python3 -p python3 python3.pkgs.packaging python3.pkgs.xmltodict python3.pkgs.requests nurl
|
||||
import os
|
||||
import subprocess
|
||||
import pprint
|
||||
import pathlib
|
||||
import requests
|
||||
import json
|
||||
import re
|
||||
from argparse import ArgumentParser
|
||||
from xmltodict import parse
|
||||
from json import dump, loads
|
||||
from sys import stdout
|
||||
from packaging import version
|
||||
|
||||
UPDATES_URL = "https://www.jetbrains.com/updates/updates.xml"
|
||||
IDES_FILE_PATH = pathlib.Path(__file__).parent.joinpath("..").joinpath("ides.json").resolve()
|
||||
|
||||
|
||||
def convert_hash_to_sri(base32: str) -> str:
|
||||
result = subprocess.run(["nix-hash", "--to-sri", "--type", "sha256", base32], capture_output=True, check=True, text=True)
|
||||
@@ -19,6 +28,38 @@ def ensure_is_list(x):
|
||||
return x
|
||||
|
||||
|
||||
def one_or_more(x):
|
||||
return x if isinstance(x, list) else [x]
|
||||
|
||||
|
||||
# TODO: Code duplication to update_bin.py - eventually refactor or merge scripts
|
||||
def download_channels():
|
||||
print(f"Checking for updates from {UPDATES_URL}")
|
||||
updates_response = requests.get(UPDATES_URL)
|
||||
updates_response.raise_for_status()
|
||||
root = parse(updates_response.text)
|
||||
products = root["products"]["product"]
|
||||
return {
|
||||
channel["@name"]: channel
|
||||
for product in products
|
||||
if "channel" in product
|
||||
for channel in one_or_more(product["channel"])
|
||||
}
|
||||
|
||||
|
||||
# TODO: Code duplication to update_bin.py - eventually refactor or merge scripts
|
||||
def build_version(build):
|
||||
build_number = build["@fullNumber"] if "@fullNumber" in build else build["@number"]
|
||||
return version.parse(build_number)
|
||||
|
||||
|
||||
# TODO: Code duplication to update_bin.py - eventually refactor or merge scripts
|
||||
def latest_build(channel):
|
||||
builds = one_or_more(channel["build"])
|
||||
latest = max(builds, key=build_version)
|
||||
return latest
|
||||
|
||||
|
||||
def jar_repositories(root_path: str) -> list[str]:
|
||||
repositories = []
|
||||
file_contents = parse(open(root_path + "/.idea/jarRepositories.xml").read())
|
||||
@@ -29,7 +70,11 @@ def jar_repositories(root_path: str) -> list[str]:
|
||||
for option in ensure_is_list(options):
|
||||
for item in option['option']:
|
||||
if item['@name'] == 'url':
|
||||
repositories.append(item['@value'])
|
||||
repositories.append(
|
||||
# Remove protocol and cache-redirector server, we only want the original URL. We try both the original
|
||||
# URL and the URL via the cache-redirector for download in build.nix
|
||||
re.sub(r'^https?://', '', item['@value']).removeprefix("cache-redirector.jetbrains.com/")
|
||||
)
|
||||
|
||||
return repositories
|
||||
|
||||
@@ -45,7 +90,7 @@ def kotlin_jps_plugin_info(root_path: str) -> (str, str):
|
||||
version = option['@value']
|
||||
|
||||
print(f"* Prefetching Kotlin JPS Plugin version {version}...")
|
||||
prefetch = subprocess.run(["nix-prefetch-url", "--type", "sha256", f"https://cache-redirector.jetbrains.com/maven.pkg.jetbrains.space/kotlin/p/kotlin/kotlin-ide-plugin-dependencies/org/jetbrains/kotlin/kotlin-jps-plugin-classpath/{version}/kotlin-jps-plugin-classpath-{version}.jar"], capture_output=True, check=True, text=True)
|
||||
prefetch = subprocess.run(["nix-prefetch-url", "--type", "sha256", f"https://packages.jetbrains.team/maven/p/ij/intellij-dependencies/org/jetbrains/kotlin/kotlin-jps-plugin-classpath/{version}/kotlin-jps-plugin-classpath-{version}.jar"], capture_output=True, check=True, text=True)
|
||||
|
||||
return (version, convert_hash_to_sri(prefetch.stdout.strip()))
|
||||
|
||||
@@ -80,34 +125,87 @@ def prefetch_android(variant: str, buildNumber: str) -> str:
|
||||
return convert_hash_to_sri(prefetch.stdout.strip())
|
||||
|
||||
|
||||
def get_args() -> (str, str):
|
||||
def generate_restarter_hash(nixpkgs_path: str, root_path: str) -> str:
|
||||
print("* Generating restarter Cargo hash...")
|
||||
root_name = pathlib.Path(root_path).name
|
||||
output = subprocess.run(["nurl", "--expr", f'''
|
||||
(import {nixpkgs_path} {{}}).rustPlatform.buildRustPackage {{
|
||||
name = "restarter";
|
||||
src = {root_path};
|
||||
sourceRoot = "{root_name}/native/restarter";
|
||||
cargoHash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=";
|
||||
}}
|
||||
'''], capture_output=True, check=True, text=True)
|
||||
return output.stdout.strip()
|
||||
|
||||
|
||||
def generate_jps_hash(nixpkgs_path: str, root_path: str) -> str:
|
||||
print("* Generating jps repo hash...")
|
||||
jps_repo_nix = pathlib.Path(__file__).parent.joinpath("jps_repo.nix").resolve()
|
||||
output = subprocess.run(["nurl", "--expr", f'''
|
||||
(import {nixpkgs_path} {{}}).callPackage {jps_repo_nix} {{
|
||||
jbr = (import {nixpkgs_path} {{}}).jetbrains.jdk-no-jcef;
|
||||
src = {root_path};
|
||||
jpsHash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=";
|
||||
}}
|
||||
'''], capture_output=True, check=True, text=True)
|
||||
return output.stdout.strip()
|
||||
|
||||
|
||||
def get_args() -> str:
|
||||
parser = ArgumentParser(
|
||||
description="Updates the IDEA / PyCharm source build infomations"
|
||||
)
|
||||
parser.add_argument("out", help="File to output json to")
|
||||
parser.add_argument("path", help="Path to the bin/versions.json file")
|
||||
args = parser.parse_args()
|
||||
return args.path, args.out
|
||||
return args.out
|
||||
|
||||
|
||||
# TODO: Code duplication to update_bin.py - eventually refactor or merge scripts
|
||||
def get_latest_versions(channels: dict, ides: dict, name: str) -> (str, str):
|
||||
update_channel = ides[name]['updateChannel']
|
||||
print(f"Fetching latest {name} (channel: {update_channel}) release...")
|
||||
channel = channels[update_channel]
|
||||
|
||||
build = latest_build(channel)
|
||||
new_version = build["@version"]
|
||||
new_build_number = ""
|
||||
if "@fullNumber" not in build:
|
||||
new_build_number = build["@number"]
|
||||
else:
|
||||
new_build_number = build["@fullNumber"]
|
||||
version_number = new_version.split(' ')[0]
|
||||
|
||||
print(f"* Version: {version_number} - Build: {new_build_number}")
|
||||
return version_number, new_build_number
|
||||
|
||||
|
||||
def main():
|
||||
versions_path, out = get_args()
|
||||
versions = loads(open(versions_path).read())
|
||||
idea_data = versions['x86_64-linux']['idea-oss']
|
||||
pycharm_data = versions['x86_64-linux']['pycharm-oss']
|
||||
out = get_args()
|
||||
|
||||
# source<jetbr.<editr.<applc.<pkgs <nixpkgs
|
||||
nixpkgs_path = pathlib.Path(__file__).parent.parent.parent.parent.parent.parent.resolve()
|
||||
assert nixpkgs_path.joinpath("pkgs").is_dir(), f"nixpkgs_path ({nixpkgs_path}) doesn't seem to point to the root of the repo, please check if things were moved."
|
||||
|
||||
channels = download_channels()
|
||||
with open(IDES_FILE_PATH, "r") as ides_file:
|
||||
ides = json.load(ides_file)
|
||||
|
||||
idea_version, idea_build = get_latest_versions(channels, ides, 'idea-oss')
|
||||
pycharm_version, pycharm_build = get_latest_versions(channels, ides, 'pycharm-oss')
|
||||
|
||||
result = { 'idea-oss': {}, 'pycharm-oss': {} }
|
||||
result['idea-oss']['version'] = idea_data['version']
|
||||
result['idea-oss']['buildNumber'] = idea_data['build_number']
|
||||
result['idea-oss']['version'] = idea_version
|
||||
result['idea-oss']['buildNumber'] = idea_build
|
||||
result['idea-oss']['buildType'] = 'idea'
|
||||
result['pycharm-oss']['version'] = pycharm_data['version']
|
||||
result['pycharm-oss']['buildNumber'] = pycharm_data['build_number']
|
||||
result['pycharm-oss']['version'] = pycharm_version
|
||||
result['pycharm-oss']['buildNumber'] = pycharm_build
|
||||
result['pycharm-oss']['buildType'] = 'pycharm'
|
||||
print('Fetching IDEA info...')
|
||||
result['idea-oss']['ideaHash'], ideaOutPath = prefetch_intellij_community('idea', result['idea-oss']['buildNumber'])
|
||||
result['idea-oss']['androidHash'] = prefetch_android('idea', result['idea-oss']['buildNumber'])
|
||||
result['idea-oss']['jpsHash'] = ''
|
||||
result['idea-oss']['restarterHash'] = ''
|
||||
result['idea-oss']['jpsHash'] = generate_jps_hash(nixpkgs_path, ideaOutPath)
|
||||
result['idea-oss']['restarterHash'] = generate_restarter_hash(nixpkgs_path, ideaOutPath)
|
||||
result['idea-oss']['mvnDeps'] = 'idea_maven_artefacts.json'
|
||||
result['idea-oss']['repositories'] = jar_repositories(ideaOutPath)
|
||||
result['idea-oss']['kotlin-jps-plugin'] = {}
|
||||
@@ -117,8 +215,8 @@ def main():
|
||||
print('Fetching PyCharm info...')
|
||||
result['pycharm-oss']['ideaHash'], pycharmOutPath = prefetch_intellij_community('pycharm', result['pycharm-oss']['buildNumber'])
|
||||
result['pycharm-oss']['androidHash'] = prefetch_android('pycharm', result['pycharm-oss']['buildNumber'])
|
||||
result['pycharm-oss']['jpsHash'] = ''
|
||||
result['pycharm-oss']['restarterHash'] = ''
|
||||
result['pycharm-oss']['jpsHash'] = generate_jps_hash(nixpkgs_path, pycharmOutPath)
|
||||
result['pycharm-oss']['restarterHash'] = generate_restarter_hash(nixpkgs_path, pycharmOutPath)
|
||||
result['pycharm-oss']['mvnDeps'] = 'pycharm_maven_artefacts.json'
|
||||
result['pycharm-oss']['repositories'] = jar_repositories(pycharmOutPath)
|
||||
result['pycharm-oss']['kotlin-jps-plugin'] = {}
|
||||
|
||||
@@ -11,18 +11,18 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "age-plugin-tpm";
|
||||
version = "0.3.0";
|
||||
version = "1.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Foxboron";
|
||||
repo = "age-plugin-tpm";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-yr1PSSmcUoOrQ8VMQEoaCLNvDO+3+6N7XXdNUyYVz9M=";
|
||||
hash = "sha256-Vr6simVW5nAWTa8Dro2gar2+O90T8u6h09wTnEnygss=";
|
||||
};
|
||||
|
||||
proxyVendor = true;
|
||||
|
||||
vendorHash = "sha256-VEx6qP02QcwETOQUkMsrqVb+cOElceXcTDaUr480ngs=";
|
||||
vendorHash = "sha256-CbgDGyVQ9MTYCe56M1VzMnap5P6Y9p4jnK8tyr3zh20=";
|
||||
|
||||
nativeCheckInputs = [
|
||||
age
|
||||
|
||||
@@ -12,44 +12,38 @@
|
||||
age-plugin-1p,
|
||||
makeWrapper,
|
||||
runCommand,
|
||||
versionCheckHook,
|
||||
nix-update-script,
|
||||
}:
|
||||
|
||||
buildGoModule (final: {
|
||||
pname = "age";
|
||||
version = "1.2.1";
|
||||
version = "1.3.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "FiloSottile";
|
||||
repo = "age";
|
||||
tag = "v${final.version}";
|
||||
hash = "sha256-9ZJdrmqBj43zSvStt0r25wjSfnvitdx3GYtM3urHcaA=";
|
||||
hash = "sha256-Qs/q3zQYV0PukABBPf/aU5V1oOhw95NG6K301VYJk8A=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-ilRLEV7qOBZbqzg2XQi4kt0JAb/1ftT4JmahYT0zSRU=";
|
||||
vendorHash = "sha256-iVDkYXXR2pXlUVywPgVRNMORxOOEhAmzpSM0xqSQMSQ=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
"-w"
|
||||
"-X main.Version=${final.version}"
|
||||
"-X main.Version=v${final.version}"
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
installShellFiles
|
||||
];
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
preInstall = ''
|
||||
installManPage doc/*.1
|
||||
'';
|
||||
|
||||
nativeInstallCheckInputs = [ versionCheckHook ];
|
||||
versionCheckProgramArg = "--version";
|
||||
doInstallCheck = true;
|
||||
installCheckPhase = ''
|
||||
if [[ "$("$out/bin/${final.pname}" --version)" == "${final.version}" ]]; then
|
||||
echo '${final.pname} smoke check passed'
|
||||
else
|
||||
echo '${final.pname} smoke check failed'
|
||||
return 1
|
||||
fi
|
||||
'';
|
||||
|
||||
# plugin test is flaky, see https://github.com/FiloSottile/age/issues/517
|
||||
checkFlags = [
|
||||
@@ -73,14 +67,12 @@ buildGoModule (final: {
|
||||
# convenience function for wrapping sops with plugins
|
||||
passthru.withPlugins =
|
||||
filter:
|
||||
runCommand "age-${final.version}-with-plugins"
|
||||
{
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
}
|
||||
''
|
||||
makeWrapper ${lib.getBin final.finalPackage}/bin/age $out/bin/age \
|
||||
--prefix PATH : "${lib.makeBinPath (filter final.passthru.plugins)}"
|
||||
'';
|
||||
runCommand "age-${final.version}-with-plugins" { nativeBuildInputs = [ makeWrapper ]; } ''
|
||||
makeWrapper ${lib.getBin final.finalPackage}/bin/age $out/bin/age \
|
||||
--prefix PATH : "${lib.makeBinPath (filter final.passthru.plugins)}"
|
||||
'';
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
changelog = "https://github.com/FiloSottile/age/releases/tag/v${final.version}";
|
||||
|
||||
@@ -11,16 +11,16 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "clouddrive2";
|
||||
version = "0.9.17";
|
||||
version = "0.9.18";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/cloud-fs/cloud-fs.github.io/releases/download/v${finalAttrs.version}/clouddrive-2-${os}-${arch}-${finalAttrs.version}.tgz";
|
||||
hash =
|
||||
{
|
||||
x86_64-linux = "sha256-AAGgtofApbyW/4TiqmC5tAPsiBIz1G2nYkbcvoKMO6k=";
|
||||
aarch64-linux = "sha256-r0Bx0sf4chVBbxZsg3AoaF+CmTjFniIFb3Fa4BNpk4E=";
|
||||
x86_64-darwin = "sha256-MtmYWGmv7+LimuWBlXdtBy1utkaDrjCjMrqtxlLSb/o=";
|
||||
aarch64-darwin = "sha256-/tfkjWXpzE8cxx665KHR4T+VAbymd0loEGLNK206Yag=";
|
||||
x86_64-linux = "sha256-FTddo953oYhAwSXTiLWIN2y3BV6Q+cy8sE6dNJKghiU=";
|
||||
aarch64-linux = "sha256-j23/P9CDb+0+gheMMbxE7NyHmnhHmPRWLc9SvD27pRs=";
|
||||
x86_64-darwin = "sha256-YiCkYrDldm5JcAheTCUC/gg1ZgMxMue/bcz1gEjXdy0=";
|
||||
aarch64-darwin = "sha256-CbzA38bkavPGJko0x/JqBxkx5CP7wM6iDEB2aejZrN4=";
|
||||
}
|
||||
.${stdenv.hostPlatform.system} or (throw "unsupported system ${stdenv.hostPlatform.system}");
|
||||
};
|
||||
|
||||
@@ -2,22 +2,23 @@
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
fetchpatch2,
|
||||
makeWrapper,
|
||||
nodejs,
|
||||
pnpm_8,
|
||||
pnpm_10,
|
||||
fetchPnpmDeps,
|
||||
pnpmConfigHook,
|
||||
versionCheckHook,
|
||||
nix-update-script,
|
||||
}:
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "concurrently";
|
||||
version = "8.2.2";
|
||||
version = "9.2.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "open-cli-tools";
|
||||
repo = "concurrently";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-VoyVYBOBMguFKnG2VItk1L5BbF72nO7bYJpb7adqICs=";
|
||||
hash = "sha256-PKbrYgQ6D0vxMSxx+aHBo09NJZh5YYfb9Fx9L5Ue8vM=";
|
||||
};
|
||||
|
||||
pnpmDeps = fetchPnpmDeps {
|
||||
@@ -25,26 +26,17 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
pname
|
||||
version
|
||||
src
|
||||
patches
|
||||
;
|
||||
pnpm = pnpm_8;
|
||||
fetcherVersion = 1;
|
||||
hash = "sha256-F1teWIABkK0mqZcK3RdGNKmexI/C59QWSrrD1jYbHt0=";
|
||||
pnpm = pnpm_10;
|
||||
fetcherVersion = 3;
|
||||
hash = "sha256-UVsmOneTICl3Ybmv7ebebkXmr1qwNh17dPhL0qlPgyg=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch2 {
|
||||
name = "use-pnpm-8.patch";
|
||||
url = "https://github.com/open-cli-tools/concurrently/commit/0b67a1a5a335396340f4347886fb9d0968a57555.patch";
|
||||
hash = "sha256-mxid2Yl9S6+mpN7OLUCrJ1vS0bQ/UwNiGJ0DL6Zn//Q=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
makeWrapper
|
||||
nodejs
|
||||
pnpmConfigHook
|
||||
pnpm_8
|
||||
pnpm_10
|
||||
];
|
||||
|
||||
buildPhase = ''
|
||||
@@ -55,6 +47,17 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
preInstall = ''
|
||||
# remove unnecessary files
|
||||
CI=true pnpm --ignore-scripts --prod prune
|
||||
find -type f \( -name "*.ts" -o -name "*.map" \) -exec rm -rf {} +
|
||||
# https://github.com/pnpm/pnpm/issues/3645
|
||||
find node_modules -xtype l -delete
|
||||
|
||||
# remove non-deterministic files
|
||||
rm node_modules/{.modules.yaml,.pnpm-workspace-state-v1.json}
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
@@ -63,10 +66,19 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
makeWrapper "${lib.getExe nodejs}" "$out/bin/concurrently" \
|
||||
--add-flags "$out/lib/concurrently/dist/bin/concurrently.js"
|
||||
ln -s "$out/bin/concurrently" "$out/bin/con"
|
||||
cp package.json "$out/lib/concurrently/"
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
nativeInstallCheckInputs = [
|
||||
versionCheckHook
|
||||
];
|
||||
versionCheckProgramArg = "--version";
|
||||
doInstallCheck = true;
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
changelog = "https://github.com/open-cli-tools/concurrently/releases/tag/v${finalAttrs.version}";
|
||||
description = "Run commands concurrently";
|
||||
|
||||
+2250
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,32 @@
|
||||
{
|
||||
lib,
|
||||
buildNpmPackage,
|
||||
fetchFromGitHub,
|
||||
nodejs,
|
||||
}:
|
||||
|
||||
buildNpmPackage {
|
||||
pname = "deye-dummycloud";
|
||||
version = "c36009e";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Hypfer";
|
||||
repo = "deye-microinverter-cloud-free";
|
||||
rev = "c36009e5c1711aa0f76bd17d63e33322535a87f9";
|
||||
hash = "sha256-ARd2Vi305lErYAZ3FN+hXocHCHxC3gr6mbrPn032zxc=";
|
||||
};
|
||||
sourceRoot = "source/dummycloud";
|
||||
npmDepsHash = "sha256-zN+iE9M12osr72z9Jvp80SdLeGahz7drvF+kx7914AE=";
|
||||
|
||||
patches = [ ./0001-packge.json-Remove-dev-dependencies-for-repoducible-.patch ];
|
||||
|
||||
dontNpmBuild = true;
|
||||
|
||||
meta = {
|
||||
description = "A dummy cloud server for DEYE microinverters (Node.js) and bridge to mqtt";
|
||||
homepage = "https://github.com/Hypfer/deye-microinverter-cloud-free";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ poeschel ];
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -94,5 +94,6 @@ stdenv.mkDerivation rec {
|
||||
homepage = "https://gitlab.com/adhami3310/Footage";
|
||||
license = lib.licenses.gpl3Only;
|
||||
maintainers = with lib.maintainers; [ onny ];
|
||||
broken = stdenv.hostPlatform.isDarwin;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -42,7 +42,7 @@ stdenv.mkDerivation {
|
||||
};
|
||||
|
||||
# Fix linkage issues on X11 (https://github.com/NixOS/nixpkgs/issues/142583)
|
||||
patches = [ ./x11.patch ];
|
||||
patches = [ ./x11.patch ] ++ (lib.optional withMinecraftPatch ./window-position.patch);
|
||||
prePatch = lib.optionalString withMinecraftPatch ''
|
||||
patches+=(${minecraftPatches}/patches/*.patch)
|
||||
'';
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
From 807d9b0efe86e85a54cd2daf7da2ba1591b39f14 Mon Sep 17 00:00:00 2001
|
||||
From: uku <hi@uku.moe>
|
||||
Date: Sat, 27 Dec 2025 19:25:42 +0100
|
||||
Subject: [PATCH] fix: dismiss warning about window position being unavailable
|
||||
|
||||
In addition to the other glfw patches, this one is required on certain
|
||||
compositors such as niri and waywall to be able to launch Minecraft at
|
||||
all.
|
||||
---
|
||||
src/wl_window.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/wl_window.c b/src/wl_window.c
|
||||
index ad39b2e0..38f86a17 100644
|
||||
--- a/src/wl_window.c
|
||||
+++ b/src/wl_window.c
|
||||
@@ -2293,8 +2293,8 @@ void _glfwGetWindowPosWayland(_GLFWwindow* window, int* xpos, int* ypos)
|
||||
// A Wayland client is not aware of its position, so just warn and leave it
|
||||
// as (0, 0)
|
||||
|
||||
- _glfwInputError(GLFW_FEATURE_UNAVAILABLE,
|
||||
- "Wayland: The platform does not provide the window position");
|
||||
+ fprintf(stderr,
|
||||
+ "[GLFW] Wayland: The platform does not provide the window position\n");
|
||||
}
|
||||
|
||||
void _glfwSetWindowPosWayland(_GLFWwindow* window, int xpos, int ypos)
|
||||
--
|
||||
2.51.2
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
fetchFromGitHub,
|
||||
installShellFiles,
|
||||
stdenv,
|
||||
nix-update-script,
|
||||
}:
|
||||
|
||||
buildGoModule rec {
|
||||
@@ -36,11 +37,14 @@ buildGoModule rec {
|
||||
--zsh <($out/bin/glow completion zsh)
|
||||
'';
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
description = "Render markdown on the CLI, with pizzazz";
|
||||
homepage = "https://github.com/charmbracelet/glow";
|
||||
changelog = "https://github.com/charmbracelet/glow/releases/tag/v${version}";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ higherorderlogic ];
|
||||
mainProgram = "glow";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
stdenvNoCC,
|
||||
fetchFromGitHub,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
stdenvNoCC.mkDerivation {
|
||||
pname = "inconsolata";
|
||||
version = "3.001";
|
||||
|
||||
@@ -12,11 +12,14 @@ stdenv.mkDerivation {
|
||||
owner = "google";
|
||||
repo = "fonts";
|
||||
rev = "0f203e3740b5eb77e0b179dff1e5869482676782";
|
||||
sha256 = "sha256-Q8eUJ0mkoB245Ifz5ulxx61x4+AqKhG0uqhWF2nSLpw=";
|
||||
hash = "sha256-4+aIjVO9/L4mCWGYqL1drFehHZTjRL25vTwh3c7GoFk=";
|
||||
rootDir = "ofl/inconsolata";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
install -m644 --target $out/share/fonts/truetype/inconsolata -D $src/ofl/inconsolata/static/*.ttf $src/ofl/inconsolata/*.ttf
|
||||
runHook preInstall
|
||||
install -m644 --target $out/share/fonts/truetype/inconsolata -D static/*.ttf *.ttf
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = {
|
||||
|
||||
@@ -9,11 +9,11 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "kshutdown";
|
||||
version = "6.0";
|
||||
version = "6.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/project/kshutdown/KShutdown/${finalAttrs.version}/kshutdown-source-${finalAttrs.version}.zip";
|
||||
hash = "sha256-GXs0Cb1gtlPy8fxy3CJ10t97BENMWFsRJHij+104BLA=";
|
||||
hash = "sha256-wV9CWS2I5DGt6oolXAyUqvN4OkV8M3MumflveGlNg5Y=";
|
||||
name = "kshutdown-source-${finalAttrs.version}.zip";
|
||||
};
|
||||
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
{
|
||||
lib,
|
||||
fetchurl,
|
||||
fetchpatch,
|
||||
ncurses,
|
||||
pcre2,
|
||||
stdenv,
|
||||
@@ -54,8 +53,9 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
license = lib.licenses.gpl3Plus;
|
||||
mainProgram = "less";
|
||||
maintainers = with lib.maintainers; [
|
||||
# not active
|
||||
# dtzWill is not active
|
||||
dtzWill
|
||||
mdaniels5757
|
||||
];
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
imagemagick,
|
||||
imlib2,
|
||||
vips,
|
||||
xfce,
|
||||
xfwm4,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
@@ -212,7 +212,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
vips
|
||||
;
|
||||
inherit (enlightenment) efl;
|
||||
inherit (xfce) xfwm4;
|
||||
inherit xfwm4;
|
||||
ffmpeg = ffmpeg.override { withSvg = true; };
|
||||
};
|
||||
};
|
||||
|
||||
@@ -7,16 +7,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "mktoc";
|
||||
version = "4.0.0";
|
||||
version = "5.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "KevinGimbel";
|
||||
repo = "mktoc";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-Pq4o0t0cUrkXff+qSU5mlDo5A0nhFBuFk3Xz10AWDeo=";
|
||||
hash = "sha256-QiV0lPM5rRAVH+a15f3G8quoa26I8jHEvbtfTQU5FKM=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-SdwNXstW61Yvp1V72nxl+9dijGJwyrdPYZo+q0UGYGg=";
|
||||
cargoHash = "sha256-Ny9g1TQUSGOBocFtzmxfFZp5K8t7z3JlEMHBTi69bLU=";
|
||||
|
||||
nativeInstallCheckInputs = [
|
||||
versionCheckHook
|
||||
|
||||
@@ -6,16 +6,16 @@
|
||||
|
||||
buildNpmPackage rec {
|
||||
pname = "netbird-dashboard";
|
||||
version = "2.23.0";
|
||||
version = "2.23.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "netbirdio";
|
||||
repo = "dashboard";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-BuoDcgc68qJGPruqSUB1IFOvuPOH0+6J+k044jJefsI=";
|
||||
hash = "sha256-zM8vSQzhJqOgqKyRW7NSh/dX6pA+BRj+bExuQYmcWR4=";
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-Ry9T4SdR3UWv/IDd99Ar+sFTMP1JAEg0QcAEM7uY4Hk=";
|
||||
npmDepsHash = "sha256-RIhVSRjqzFawXaRZHAUwGodnNerGz+I3GbPFsP5qESY=";
|
||||
npmFlags = [ "--legacy-peer-deps" ];
|
||||
|
||||
installPhase = ''
|
||||
|
||||
@@ -16,13 +16,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "pkg";
|
||||
version = "2.1.4";
|
||||
version = "2.5.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "freebsd";
|
||||
repo = "pkg";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-aqNJGor6gH/7XjwuT2uD7L89wn1kzsFKBMlitSVjUCM=";
|
||||
hash = "sha256-bx/BPldUZHX7KYM8bYRT/p/RcLKqAXqlnCihP8Ec7NY=";
|
||||
};
|
||||
|
||||
setOutputFlags = false;
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
{
|
||||
version = "1.77.0";
|
||||
version = "1.78.0";
|
||||
hashes = {
|
||||
linux-aarch_64 = "sha256-2sY1n35HOW4jwGk48GQOHDmh2bd9V9GFT/UylKBIel0=";
|
||||
linux-ppcle_64 = "sha256-hYxdveN3RpUNLv4g3BMO4CAeYpV13hGmZEdS///yfE4=";
|
||||
linux-s390_64 = "sha256-7cnA9dXZTiYEhR6PwsBmRZ0UDmKrxoeGZqVjHUHKxQQ=";
|
||||
linux-x86_32 = "sha256-QVc2ANzOqoyLOAy1r+daY9OmbXrF1ebmB/oNS+gj70Q=";
|
||||
linux-x86_64 = "sha256-b+H3Llnxl0Cb7/TNolyay/noKrexz7IMGFvC5hlWwo4=";
|
||||
osx-aarch_64 = "sha256-5H2txiDsG21tpFB9meM7tKGw+IZzBC8IoBlPScxckhQ=";
|
||||
osx-x86_64 = "sha256-5H2txiDsG21tpFB9meM7tKGw+IZzBC8IoBlPScxckhQ=";
|
||||
windows-x86_32 = "sha256-YkUchHqd20lmICFIEdPv+pHpSx1D89im1BOTureQIco=";
|
||||
windows-x86_64 = "sha256-35/e+ampAdMFI/xFh3dDD2cR0qzvNAsJBjn6ui1J2hE=";
|
||||
linux-aarch_64 = "sha256-yVyvCriifgHlP4z/jolH9qiEGvqjV/pLBnm0r0VzGIY=";
|
||||
linux-ppcle_64 = "sha256-wD7g3cHI1rXb6RQemW7/D9w6qF3om09wckNToYHa1BU=";
|
||||
linux-s390_64 = "sha256-Dubkn+X+3fYOy+SeW6V5QxSqPizGPZBoXSSlqHun56k=";
|
||||
linux-x86_32 = "sha256-ALYeBWy/IjhmFOG0Llj5luCOtSYBKtgIsjdDKcIP6v8=";
|
||||
linux-x86_64 = "sha256-wC3U11e2eUByoWdcKp8jJjG2TD1TwewZ7/sFBIWagv8=";
|
||||
osx-aarch_64 = "sha256-sHInlUATIKcRMDlfGj2KZTS3MRAIzOjXj4y3zhdtqiY=";
|
||||
osx-x86_64 = "sha256-sHInlUATIKcRMDlfGj2KZTS3MRAIzOjXj4y3zhdtqiY=";
|
||||
windows-x86_32 = "sha256-bIUQUaveyBKreBwBFr9o3RtyQr3cb+/TfbGxp8WyuPg=";
|
||||
windows-x86_64 = "sha256-DHxx0rr2wfxfpRQlJ39BdI7kCUmO8rTX3JHvGKdSAeA=";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -7,13 +7,13 @@
|
||||
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "sdl_gamecontrollerdb";
|
||||
version = "0-unstable-2025-12-11";
|
||||
version = "0-unstable-2025-12-26";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mdqinc";
|
||||
repo = "SDL_GameControllerDB";
|
||||
rev = "16ac3e553e23068e26819971f2cc6cd088a7f2f6";
|
||||
hash = "sha256-yXmgvkkIGcXUAnllUFb3AoKvyEbUN9YG05/VaPuFqCs=";
|
||||
rev = "547fb8019f8cf7c443244b918c5be05c9e5a53f3";
|
||||
hash = "sha256-mPVnxDuivh+jBf25jPo3wA/CHAgGkzAb2ybbRLmdE/o=";
|
||||
};
|
||||
|
||||
dontBuild = true;
|
||||
|
||||
@@ -6,18 +6,18 @@
|
||||
nix-update-script,
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "systemctl-tui";
|
||||
version = "0.4.0";
|
||||
version = "0.4.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rgwood";
|
||||
repo = "systemctl-tui";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-1KYaw4q1+dPHImjjCnUPXNu7ihdEfNuzQfHfPi1uDOw=";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-OzOc0osaKoRVuo+fBJOhsZAiFfm0ZHj6POUjRaIZGsc=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-rOmoV8sHeoM2ypDlBbiLDIYHhFQZJ6T2D5VkSNW+uuc=";
|
||||
cargoHash = "sha256-MSpex0G1RJsI5RCrAlSgeY2/6flndwCjdtopWfuXNts=";
|
||||
|
||||
nativeInstallCheckInputs = [
|
||||
versionCheckHook
|
||||
@@ -31,9 +31,9 @@ rustPlatform.buildRustPackage rec {
|
||||
meta = {
|
||||
description = "Simple TUI for interacting with systemd services and their logs";
|
||||
homepage = "https://crates.io/crates/systemctl-tui";
|
||||
changelog = "https://github.com/rgwood/systemctl-tui/releases/tag/v${version}";
|
||||
changelog = "https://github.com/rgwood/systemctl-tui/releases/tag/v${finalAttrs.version}";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ siph ];
|
||||
mainProgram = "systemctl-tui";
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
-1
@@ -7,7 +7,6 @@
|
||||
thunar,
|
||||
cmake,
|
||||
ninja,
|
||||
xfce,
|
||||
gitUpdater,
|
||||
}:
|
||||
|
||||
@@ -0,0 +1,86 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitLab,
|
||||
pkg-config,
|
||||
util-macros,
|
||||
autoreconfHook,
|
||||
wrapWithXFileSearchPathHook,
|
||||
libx11,
|
||||
libxau,
|
||||
libxaw,
|
||||
libxcrypt,
|
||||
libxdmcp,
|
||||
libxext,
|
||||
libxft,
|
||||
libxinerama,
|
||||
libxmu,
|
||||
libxpm,
|
||||
libxrender,
|
||||
libxt,
|
||||
nix-update-script,
|
||||
}:
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "xdm";
|
||||
version = "1.1.17";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.freedesktop.org";
|
||||
owner = "xorg";
|
||||
repo = "app/xdm";
|
||||
tag = "xdm-${finalAttrs.version}";
|
||||
hash = "sha256-PhMctvL+Vp9uNmTtowMHzkoekieVCgNZCfUZ1XpjpyY=";
|
||||
};
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
util-macros
|
||||
autoreconfHook
|
||||
wrapWithXFileSearchPathHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libx11
|
||||
libxau
|
||||
libxaw
|
||||
libxcrypt
|
||||
libxdmcp
|
||||
libxext
|
||||
libxft
|
||||
libxinerama
|
||||
libxmu
|
||||
libxpm
|
||||
libxrender
|
||||
libxt
|
||||
];
|
||||
|
||||
configureFlags = [
|
||||
"ac_cv_path_RAWCPP=${stdenv.cc.targetPrefix}cpp"
|
||||
]
|
||||
# checking for /dev/urandom... configure: error: cannot check for file existence when cross compiling
|
||||
++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
|
||||
"ac_cv_file__dev_urandom=true"
|
||||
"ac_cv_file__dev_random=true"
|
||||
];
|
||||
|
||||
installFlags = [ "appdefaultdir=$(out)/share/X11/app-defaults" ];
|
||||
|
||||
passthru.updateScript = nix-update-script { extraArgs = [ "--version-regex=xdm-(.*)" ]; };
|
||||
|
||||
meta = {
|
||||
description = "X Display Manager with support for XDMCP, host chooser";
|
||||
homepage = "https://gitlab.freedesktop.org/xorg/app/xdm";
|
||||
license = with lib.licenses; [
|
||||
mit
|
||||
mitOpenGroup
|
||||
x11
|
||||
bsd3ClauseTso
|
||||
bsd2
|
||||
];
|
||||
mainProgram = "xdm";
|
||||
maintainers = [ ];
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,75 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitLab,
|
||||
meson,
|
||||
pkg-config,
|
||||
ninja,
|
||||
libx11,
|
||||
libxcb,
|
||||
libxext,
|
||||
libxi,
|
||||
libxtst,
|
||||
libxcomposite,
|
||||
libxinerama,
|
||||
libxpresent,
|
||||
libxrandr,
|
||||
libxrender,
|
||||
libxxf86dga,
|
||||
libxxf86vm,
|
||||
nix-update-script,
|
||||
}:
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "xdpyinfo";
|
||||
version = "1.4.0";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.freedesktop.org";
|
||||
owner = "xorg";
|
||||
repo = "app/xdpyinfo";
|
||||
tag = "xdpyinfo-${finalAttrs.version}";
|
||||
hash = "sha256-zN2ViUJhrndqyLFCzcUi2DRg2K2q9eJXzHlUsMNmhNg=";
|
||||
};
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
pkg-config
|
||||
ninja
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libx11
|
||||
libxcb
|
||||
libxext
|
||||
libxi
|
||||
libxtst
|
||||
# optional deps
|
||||
libxcomposite
|
||||
libxinerama
|
||||
libxpresent
|
||||
libxrandr
|
||||
libxrender
|
||||
libxxf86dga
|
||||
libxxf86vm
|
||||
];
|
||||
|
||||
passthru.updateScript = nix-update-script { extraArgs = [ "--version-regex=xdpyinfo-(.*)" ]; };
|
||||
|
||||
meta = {
|
||||
description = "display information utility for X";
|
||||
longDescription = ''
|
||||
xdpyinfo is a utility for displaying information about an X server.
|
||||
It is used to examine the capabilities of a server, the predefined
|
||||
values for various parameters used in communicating between clients
|
||||
and the server, and the different types of screens, visuals, and X11
|
||||
protocol extensions that are available.
|
||||
'';
|
||||
homepage = "https://gitlab.freedesktop.org/xorg/app/xdpyinfo";
|
||||
license = lib.licenses.mitOpenGroup;
|
||||
mainProgram = "xdpyinfo";
|
||||
maintainers = [ ];
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,58 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitLab,
|
||||
autoreconfHook,
|
||||
pkg-config,
|
||||
util-macros,
|
||||
xorgproto,
|
||||
libx11,
|
||||
libxmu,
|
||||
mcpp,
|
||||
nix-update-script,
|
||||
}:
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "xrdb";
|
||||
version = "1.2.2";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.freedesktop.org";
|
||||
group = "xorg";
|
||||
owner = "app";
|
||||
repo = "xrdb";
|
||||
tag = "xrdb-${finalAttrs.version}";
|
||||
hash = "sha256-XCi/E6tVaLYGRsMWJalCl1J8VIT4xV6KFuo+K//LQGY=";
|
||||
};
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
pkg-config
|
||||
util-macros
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
xorgproto
|
||||
libx11
|
||||
libxmu
|
||||
];
|
||||
|
||||
# replace gcc with mcpp as preprocessor to reduce the closure size
|
||||
# see https://github.com/NixOS/nixpkgs/issues/9480
|
||||
configureFlags = [ "--with-cpp=${lib.getExe mcpp}" ];
|
||||
|
||||
passthru.updateScript = nix-update-script { extraArgs = [ "--version-regex=xrdb-(.*)" ]; };
|
||||
|
||||
meta = {
|
||||
description = "X resource database utility";
|
||||
homepage = "https://gitlab.freedesktop.org/xorg/app/xrdb";
|
||||
license = with lib.licenses; [
|
||||
hpndDec
|
||||
mitOpenGroup
|
||||
];
|
||||
mainProgram = "xrdb";
|
||||
maintainers = [ ];
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
})
|
||||
@@ -57,6 +57,7 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
|
||||
mesonFlags = [
|
||||
# FIXME: `MathJax.js` is only available in MathJax 2.7.x.
|
||||
"-Dmathjax-directory=${mathjax}"
|
||||
"-Dintrospection=true"
|
||||
]
|
||||
|
||||
@@ -2,17 +2,18 @@
|
||||
lib,
|
||||
stdenvNoCC,
|
||||
fetchFromGitHub,
|
||||
unstableGitUpdater,
|
||||
}:
|
||||
|
||||
stdenvNoCC.mkDerivation {
|
||||
pname = "zsh-fzf-history-search";
|
||||
version = "0-unstable-2024-05-15";
|
||||
version = "0-unstable-2025-11-08";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "joshskidmore";
|
||||
repo = "zsh-fzf-history-search";
|
||||
rev = "d5a9730b5b4cb0b39959f7f1044f9c52743832ba";
|
||||
hash = "sha256-tQqIlkgIWPEdomofPlmWNEz/oNFA1qasILk4R5RWobY=";
|
||||
rev = "35df458f7d9478fa88c74af762dcd296cdfd485d";
|
||||
hash = "sha256-6UWmfFQ9JVyg653bPQCB5M4jJAJO+V85rU7zP4cs1VI=";
|
||||
};
|
||||
|
||||
dontConfigure = true;
|
||||
@@ -27,11 +28,13 @@ stdenvNoCC.mkDerivation {
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru.updateScript = unstableGitUpdater { hardcodeZeroVersion = true; };
|
||||
|
||||
meta = {
|
||||
description = "Simple zsh plugin that replaces Ctrl+R with an fzf-driven select which includes date/times";
|
||||
homepage = "https://github.com/joshskidmore/zsh-fzf-history-search";
|
||||
license = lib.licenses.mit;
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = [ ];
|
||||
maintainers = [ lib.maintainers.Gliczy ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -33,14 +33,14 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "atril";
|
||||
version = "1.28.2";
|
||||
version = "1.28.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mate-desktop";
|
||||
repo = "atril";
|
||||
tag = "v${finalAttrs.version}";
|
||||
fetchSubmodules = true;
|
||||
hash = "sha256-NnWD3Gcxn8ZZKdHzg6iclLiSwj3sBvF+BwpNtcU+dSY=";
|
||||
hash = "sha256-y+J/goOl5ol3j0ySLkyQSndS8zc+dOKhyrPv0FmVkZg=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@@ -73,7 +73,11 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
configureFlags =
|
||||
[ ]
|
||||
++ lib.optionals enableDjvu [ "--enable-djvu" ]
|
||||
++ lib.optionals enableEpub [ "--enable-epub" ]
|
||||
++ lib.optionals enableEpub [
|
||||
# FIXME: We ship this with non-existent fallback mathjax-directory
|
||||
# because `MathJax.js` is only available in MathJax 2.7.x.
|
||||
"--enable-epub"
|
||||
]
|
||||
++ lib.optionals enablePostScript [ "--enable-ps" ]
|
||||
++ lib.optionals enableXps [ "--enable-xps" ]
|
||||
++ lib.optionals enableImages [ "--enable-pixbuf" ];
|
||||
|
||||
+74
-110
@@ -7,6 +7,8 @@
|
||||
makeScopeWithSplicing',
|
||||
}:
|
||||
|
||||
# New packages should go to top-level instead of here!
|
||||
# TODO: Remove this scope entirely in NixOS 26.11.
|
||||
makeScopeWithSplicing' {
|
||||
otherSplices = generateSplicesForMkScope "xfce";
|
||||
f = (
|
||||
@@ -15,82 +17,13 @@ makeScopeWithSplicing' {
|
||||
inherit (self) callPackage;
|
||||
in
|
||||
{
|
||||
#### CORE
|
||||
|
||||
thunar-unwrapped = callPackage ./core/thunar { };
|
||||
|
||||
thunar = callPackage ./core/thunar/wrapper.nix { };
|
||||
|
||||
thunar-volman = callPackage ./core/thunar-volman { };
|
||||
|
||||
thunar-archive-plugin = callPackage ./thunar-plugins/archive { };
|
||||
|
||||
thunar-dropbox-plugin = callPackage ./thunar-plugins/dropbox { };
|
||||
|
||||
thunar-media-tags-plugin = callPackage ./thunar-plugins/media-tags { };
|
||||
|
||||
thunar-vcs-plugin = callPackage ./thunar-plugins/vcs { };
|
||||
|
||||
tumbler = callPackage ./core/tumbler { };
|
||||
|
||||
xfce4-session = callPackage ./core/xfce4-session { };
|
||||
|
||||
xfce4-settings = callPackage ./core/xfce4-settings { };
|
||||
|
||||
xfce4-power-manager = callPackage ./core/xfce4-power-manager { };
|
||||
|
||||
xfdesktop = callPackage ./core/xfdesktop { };
|
||||
|
||||
xfwm4 = callPackage ./core/xfwm4 { };
|
||||
|
||||
xfce4-appfinder = callPackage ./core/xfce4-appfinder { };
|
||||
|
||||
#### APPLICATIONS
|
||||
|
||||
catfish = callPackage ./applications/catfish { };
|
||||
|
||||
gigolo = callPackage ./applications/gigolo { };
|
||||
|
||||
mousepad = callPackage ./applications/mousepad { };
|
||||
|
||||
orage = callPackage ./applications/orage { };
|
||||
|
||||
parole = callPackage ./applications/parole { };
|
||||
|
||||
ristretto = callPackage ./applications/ristretto { };
|
||||
|
||||
xfmpc = callPackage ./applications/xfmpc { };
|
||||
|
||||
xfce4-taskmanager = callPackage ./applications/xfce4-taskmanager { };
|
||||
|
||||
xfce4-dict = callPackage ./applications/xfce4-dict { };
|
||||
|
||||
xfce4-terminal = callPackage ./applications/xfce4-terminal { };
|
||||
|
||||
xfce4-screensaver = callPackage ./applications/xfce4-screensaver { };
|
||||
|
||||
xfce4-screenshooter = callPackage ./applications/xfce4-screenshooter { };
|
||||
|
||||
xfdashboard = callPackage ./applications/xfdashboard { };
|
||||
|
||||
xfce4-volumed-pulse = callPackage ./applications/xfce4-volumed-pulse { };
|
||||
|
||||
xfce4-notifyd = callPackage ./applications/xfce4-notifyd { };
|
||||
|
||||
xfburn = callPackage ./applications/xfburn { };
|
||||
|
||||
xfce4-panel-profiles = callPackage ./applications/xfce4-panel-profiles { };
|
||||
|
||||
#### ART
|
||||
|
||||
xfce4-icon-theme = callPackage ./art/xfce4-icon-theme { };
|
||||
|
||||
xfwm4-themes = callPackage ./art/xfwm4-themes { };
|
||||
|
||||
}
|
||||
// lib.optionalAttrs config.allowAliases {
|
||||
#### ALIASES
|
||||
genericUpdater = throw "xfce.genericUpdater has been removed: use pkgs.genericUpdater directly"; # added 2025-12-22
|
||||
genericUpdater = throw "‘xfce.genericUpdater’ has been removed: use ‘pkgs.genericUpdater’ directly"; # added 2025-12-22
|
||||
xinitrc = throw "‘xfce.xinitrc’ has been removed: use ‘pkgs.xfce4-session.xinitrc’ directly"; # added 2025-12-28
|
||||
thunar-bare = throw "‘xfce.thunar-bare’ has been removed: use ‘pkgs.thunar-unwrapped’ directly"; # added 2025-12-28
|
||||
|
||||
mkXfceDerivation = lib.warnOnInstantiate ''
|
||||
xfce.mkXfceDerivation has been deprecated, please use stdenv.mkDerivation
|
||||
@@ -103,44 +36,75 @@ makeScopeWithSplicing' {
|
||||
xfce4-datetime-plugin has been removed: this plugin has been merged into the xfce4-panel's built-in clock
|
||||
plugin and thus no longer maintained upstream, see https://gitlab.xfce.org/xfce/xfce4-panel/-/issues/563.
|
||||
''; # Added 2025-05-20
|
||||
|
||||
exo = lib.warnOnInstantiate "‘xfce.exo’ was moved to top-level. Please use ‘pkgs.xfce4-exo’ directly" pkgs.xfce4-exo; # Added on 2025-12-23
|
||||
garcon = lib.warnOnInstantiate "‘xfce.garcon’ was moved to top-level. Please use ‘pkgs.garcon’ directly" pkgs.garcon; # Added on 2025-12-23
|
||||
libxfce4ui = lib.warnOnInstantiate "‘xfce.libxfce4ui’ was moved to top-level. Please use ‘pkgs.libxfce4ui’ directly" pkgs.libxfce4ui; # Added on 2025-12-23
|
||||
libxfce4util = lib.warnOnInstantiate "‘xfce.libxfce4util’ was moved to top-level. Please use ‘pkgs.libxfce4util’ directly" pkgs.libxfce4util; # Added on 2025-12-23
|
||||
libxfce4windowing = lib.warnOnInstantiate "‘xfce.libxfce4windowing’ was moved to top-level. Please use ‘pkgs.libxfce4windowing’ directly" pkgs.libxfce4windowing; # Added on 2025-12-23
|
||||
xfce4-dev-tools = lib.warnOnInstantiate "‘xfce.xfce4-dev-tools’ was moved to top-level. Please use ‘pkgs.xfce4-dev-tools’ directly" pkgs.xfce4-dev-tools; # Added on 2025-12-23
|
||||
xfce4-panel = lib.warnOnInstantiate "‘xfce.xfce4-panel’ was moved to top-level. Please use ‘pkgs.xfce4-panel’ directly" pkgs.xfce4-panel; # Added on 2025-12-23
|
||||
xfconf = lib.warnOnInstantiate "‘xfce.xfconf’ was moved to top-level. Please use ‘pkgs.xfconf’ directly" pkgs.xfconf; # Added on 2025-12-23
|
||||
thunar = lib.warnOnInstantiate "‘xfce.thunar’ was moved to top-level. Please use ‘pkgs.thunar’ directly" pkgs.thunar; # Added on 2025-12-26
|
||||
thunar-unwrapped = lib.warnOnInstantiate "‘xfce.thunar-unwrapped’ was moved to top-level. Please use ‘pkgs.thunar-unwrapped’ directly" pkgs.thunar-unwrapped; # Added on 2025-12-26
|
||||
thunar-volman = lib.warnOnInstantiate "‘xfce.thunar-volman’ was moved to top-level. Please use ‘pkgs.thunar-volman’ directly" pkgs.thunar-volman; # Added on 2025-12-26
|
||||
tumbler = lib.warnOnInstantiate "‘xfce.tumbler’ was moved to top-level. Please use ‘pkgs.tumbler’ directly" pkgs.tumbler; # Added on 2025-12-26
|
||||
xfce4-session = lib.warnOnInstantiate "‘xfce.xfce4-session’ was moved to top-level. Please use ‘pkgs.xfce4-session’ directly" pkgs.xfce4-session; # Added on 2025-12-26
|
||||
xfce4-settings = lib.warnOnInstantiate "‘xfce.xfce4-settings’ was moved to top-level. Please use ‘pkgs.xfce4-settings’ directly" pkgs.xfce4-settings; # Added on 2025-12-26
|
||||
xfce4-power-manager = lib.warnOnInstantiate "‘xfce.xfce4-power-manager’ was moved to top-level. Please use ‘pkgs.xfce4-power-manager’ directly" pkgs.xfce4-power-manager; # Added on 2025-12-26
|
||||
xfdesktop = lib.warnOnInstantiate "‘xfce.xfdesktop’ was moved to top-level. Please use ‘pkgs.xfdesktop’ directly" pkgs.xfdesktop; # Added on 2025-12-26
|
||||
xfwm4 = lib.warnOnInstantiate "‘xfce.xfwm4’ was moved to top-level. Please use ‘pkgs.xfwm4’ directly" pkgs.xfwm4; # Added on 2025-12-26
|
||||
xfce4-appfinder = lib.warnOnInstantiate "‘xfce.xfce4-appfinder’ was moved to top-level. Please use ‘pkgs.xfce4-appfinder’ directly" pkgs.xfce4-appfinder; # Added on 2025-12-26
|
||||
catfish = lib.warnOnInstantiate "‘xfce.catfish’ was moved to top-level. Please use ‘pkgs.catfish’ directly" pkgs.catfish; # Added on 2025-12-26
|
||||
gigolo = lib.warnOnInstantiate "‘xfce.gigolo’ was moved to top-level. Please use ‘pkgs.gigolo’ directly" pkgs.gigolo; # Added on 2025-12-26
|
||||
mousepad = lib.warnOnInstantiate "‘xfce.mousepad’ was moved to top-level. Please use ‘pkgs.mousepad’ directly" pkgs.mousepad; # Added on 2025-12-26
|
||||
orage = lib.warnOnInstantiate "‘xfce.orage’ was moved to top-level. Please use ‘pkgs.orage’ directly" pkgs.orage; # Added on 2025-12-26
|
||||
parole = lib.warnOnInstantiate "‘xfce.parole’ was moved to top-level. Please use ‘pkgs.parole’ directly" pkgs.parole; # Added on 2025-12-26
|
||||
ristretto = lib.warnOnInstantiate "‘xfce.ristretto’ was moved to top-level. Please use ‘pkgs.ristretto’ directly" pkgs.ristretto; # Added on 2025-12-26
|
||||
xfburn = lib.warnOnInstantiate "‘xfce.xfburn’ was moved to top-level. Please use ‘pkgs.xfburn’ directly" pkgs.xfburn; # Added on 2025-12-26
|
||||
xfce4-dict = lib.warnOnInstantiate "‘xfce.xfce4-dict’ was moved to top-level. Please use ‘pkgs.xfce4-dict’ directly" pkgs.xfce4-dict; # Added on 2025-12-26
|
||||
xfce4-notifyd = lib.warnOnInstantiate "‘xfce.xfce4-notifyd’ was moved to top-level. Please use ‘pkgs.xfce4-notifyd’ directly" pkgs.xfce4-notifyd; # Added on 2025-12-26
|
||||
xfce4-panel-profiles = lib.warnOnInstantiate "‘xfce.xfce4-panel-profiles’ was moved to top-level. Please use ‘pkgs.xfce4-panel-profiles’ directly" pkgs.xfce4-panel-profiles; # Added on 2025-12-26
|
||||
xfce4-screensaver = lib.warnOnInstantiate "‘xfce.xfce4-screensaver’ was moved to top-level. Please use ‘pkgs.xfce4-screensaver’ directly" pkgs.xfce4-screensaver; # Added on 2025-12-26
|
||||
xfce4-screenshooter = lib.warnOnInstantiate "‘xfce.xfce4-screenshooter’ was moved to top-level. Please use ‘pkgs.xfce4-screenshooter’ directly" pkgs.xfce4-screenshooter; # Added on 2025-12-26
|
||||
xfce4-taskmanager = lib.warnOnInstantiate "‘xfce.xfce4-taskmanager’ was moved to top-level. Please use ‘pkgs.xfce4-taskmanager’ directly" pkgs.xfce4-taskmanager; # Added on 2025-12-26
|
||||
xfce4-terminal = lib.warnOnInstantiate "‘xfce.xfce4-terminal’ was moved to top-level. Please use ‘pkgs.xfce4-terminal’ directly" pkgs.xfce4-terminal; # Added on 2025-12-26
|
||||
xfce4-volumed-pulse = lib.warnOnInstantiate "‘xfce.xfce4-volumed-pulse’ was moved to top-level. Please use ‘pkgs.xfce4-volumed-pulse’ directly" pkgs.xfce4-volumed-pulse; # Added on 2025-12-26
|
||||
xfdashboard = lib.warnOnInstantiate "‘xfce.xfdashboard’ was moved to top-level. Please use ‘pkgs.xfdashboard’ directly" pkgs.xfdashboard; # Added on 2025-12-26
|
||||
xfmpc = lib.warnOnInstantiate "‘xfce.xfmpc’ was moved to top-level. Please use ‘pkgs.xfmpc’ directly" pkgs.xfmpc; # Added on 2025-12-26
|
||||
xfce4-icon-theme = lib.warnOnInstantiate "‘xfce.xfce4-icon-theme’ was moved to top-level. Please use ‘pkgs.xfce4-icon-theme’ directly" pkgs.xfce4-icon-theme; # Added on 2025-12-26
|
||||
xfwm4-themes = lib.warnOnInstantiate "‘xfce.xfwm4-themes’ was moved to top-level. Please use ‘pkgs.xfwm4-themes’ directly" pkgs.xfwm4-themes; # Added on 2025-12-26
|
||||
|
||||
thunar-archive-plugin = lib.warnOnInstantiate "‘xfce.thunar-archive-plugin’ was moved to top-level. Please use ‘pkgs.thunar-archive-plugin’ directly" pkgs.thunar-archive-plugin; # Added on 2025-12-26
|
||||
thunar-dropbox-plugin = lib.warnOnInstantiate "‘xfce.thunar-dropbox-plugin’ was moved to top-level. Please use ‘pkgs.thunar-dropbox-plugin’ directly" pkgs.thunar-dropbox-plugin; # Added on 2025-12-26
|
||||
thunar-media-tags-plugin = lib.warnOnInstantiate "‘xfce.thunar-media-tags-plugin’ was moved to top-level. Please use ‘pkgs.thunar-media-tags-plugin’ directly" pkgs.thunar-media-tags-plugin; # Added on 2025-12-26
|
||||
thunar-vcs-plugin = lib.warnOnInstantiate "‘xfce.thunar-vcs-plugin’ was moved to top-level. Please use ‘pkgs.thunar-vcs-plugin’ directly" pkgs.thunar-vcs-plugin; # Added on 2025-12-26
|
||||
|
||||
xfce4-alsa-plugin = lib.warnOnInstantiate "‘xfce.xfce4-alsa-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-alsa-plugin’ directly" pkgs.xfce4-alsa-plugin; # Added on 2025-12-19
|
||||
xfce4-battery-plugin = lib.warnOnInstantiate "‘xfce.xfce4-battery-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-battery-plugin’ directly" pkgs.xfce4-battery-plugin; # Added on 2025-12-19
|
||||
xfce4-clipman-plugin = lib.warnOnInstantiate "‘xfce.xfce4-clipman-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-clipman-plugin’ directly" pkgs.xfce4-clipman-plugin; # Added on 2025-12-19
|
||||
xfce4-cpufreq-plugin = lib.warnOnInstantiate "‘xfce.xfce4-cpufreq-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-cpufreq-plugin’ directly" pkgs.xfce4-cpufreq-plugin; # Added on 2025-12-19
|
||||
xfce4-cpugraph-plugin = lib.warnOnInstantiate "‘xfce.xfce4-cpugraph-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-cpugraph-plugin’ directly" pkgs.xfce4-cpugraph-plugin; # Added on 2025-12-19
|
||||
xfce4-dockbarx-plugin = lib.warnOnInstantiate "‘xfce.xfce4-dockbarx-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-dockbarx-plugin’ directly" pkgs.xfce4-dockbarx-plugin; # Added on 2025-12-19
|
||||
xfce4-docklike-plugin = lib.warnOnInstantiate "‘xfce.xfce4-docklike-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-docklike-plugin’ directly" pkgs.xfce4-docklike-plugin; # Added on 2025-12-19
|
||||
xfce4-eyes-plugin = lib.warnOnInstantiate "‘xfce.xfce4-eyes-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-eyes-plugin’ directly" pkgs.xfce4-eyes-plugin; # Added on 2025-12-19
|
||||
xfce4-fsguard-plugin = lib.warnOnInstantiate "‘xfce.xfce4-fsguard-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-fsguard-plugin’ directly" pkgs.xfce4-fsguard-plugin; # Added on 2025-12-19
|
||||
xfce4-genmon-plugin = lib.warnOnInstantiate "‘xfce.xfce4-genmon-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-genmon-plugin’ directly" pkgs.xfce4-genmon-plugin; # Added on 2025-12-19
|
||||
xfce4-i3-workspaces-plugin = lib.warnOnInstantiate "‘xfce.xfce4-i3-workspaces-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-i3-workspaces-plugin’ directly" pkgs.xfce4-i3-workspaces-plugin; # Added on 2025-12-19
|
||||
xfce4-mailwatch-plugin = lib.warnOnInstantiate "‘xfce.xfce4-mailwatch-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-mailwatch-plugin’ directly" pkgs.xfce4-mailwatch-plugin; # Added on 2025-12-19
|
||||
xfce4-mpc-plugin = lib.warnOnInstantiate "‘xfce.xfce4-mpc-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-mpc-plugin’ directly" pkgs.xfce4-mpc-plugin; # Added on 2025-12-19
|
||||
xfce4-netload-plugin = lib.warnOnInstantiate "‘xfce.xfce4-netload-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-netload-plugin’ directly" pkgs.xfce4-netload-plugin; # Added on 2025-12-19
|
||||
xfce4-notes-plugin = lib.warnOnInstantiate "‘xfce.xfce4-notes-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-notes-plugin’ directly" pkgs.xfce4-notes-plugin; # Added on 2025-12-19
|
||||
xfce4-systemload-plugin = lib.warnOnInstantiate "‘xfce.xfce4-systemload-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-systemload-plugin’ directly" pkgs.xfce4-systemload-plugin; # Added on 2025-12-19
|
||||
xfce4-time-out-plugin = lib.warnOnInstantiate "‘xfce.xfce4-time-out-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-time-out-plugin’ directly" pkgs.xfce4-time-out-plugin; # Added on 2025-12-19
|
||||
xfce4-timer-plugin = lib.warnOnInstantiate "‘xfce.xfce4-timer-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-timer-plugin’ directly" pkgs.xfce4-timer-plugin; # Added on 2025-12-19
|
||||
xfce4-verve-plugin = lib.warnOnInstantiate "‘xfce.xfce4-verve-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-verve-plugin’ directly" pkgs.xfce4-verve-plugin; # Added on 2025-12-19
|
||||
xfce4-xkb-plugin = lib.warnOnInstantiate "‘xfce.xfce4-xkb-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-xkb-plugin’ directly" pkgs.xfce4-xkb-plugin; # Added on 2025-12-19
|
||||
xfce4-weather-plugin = lib.warnOnInstantiate "‘xfce.xfce4-weather-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-weather-plugin’ directly" pkgs.xfce4-weather-plugin; # Added on 2025-12-19
|
||||
xfce4-whiskermenu-plugin = lib.warnOnInstantiate "‘xfce.xfce4-whiskermenu-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-whiskermenu-plugin’ directly" pkgs.xfce4-whiskermenu-plugin; # Added on 2025-12-19
|
||||
xfce4-windowck-plugin = lib.warnOnInstantiate "‘xfce.xfce4-windowck-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-windowck-plugin’ directly" pkgs.xfce4-windowck-plugin; # Added on 2025-12-19
|
||||
xfce4-pulseaudio-plugin = lib.warnOnInstantiate "‘xfce.xfce4-pulseaudio-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-pulseaudio-plugin’ directly" pkgs.xfce4-pulseaudio-plugin; # Added on 2025-12-19
|
||||
xfce4-sensors-plugin = lib.warnOnInstantiate "‘xfce.xfce4-sensors-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-sensors-plugin’ directly" pkgs.xfce4-sensors-plugin; # Added on 2025-12-19
|
||||
}
|
||||
);
|
||||
}
|
||||
// lib.optionalAttrs config.allowAliases {
|
||||
# These aliases need to be placed outside the scope or they will shadow the attributes from parent scope.
|
||||
exo = lib.warnOnInstantiate "‘xfce.exo’ was moved to top-level. Please use ‘pkgs.xfce4-exo’ directly" pkgs.xfce4-exo; # Added on 2025-12-23
|
||||
garcon = lib.warnOnInstantiate "‘xfce.garcon’ was moved to top-level. Please use ‘pkgs.garcon’ directly" pkgs.garcon; # Added on 2025-12-23
|
||||
libxfce4ui = lib.warnOnInstantiate "‘xfce.libxfce4ui’ was moved to top-level. Please use ‘pkgs.libxfce4ui’ directly" pkgs.libxfce4ui; # Added on 2025-12-23
|
||||
libxfce4util = lib.warnOnInstantiate "‘xfce.libxfce4util’ was moved to top-level. Please use ‘pkgs.libxfce4util’ directly" pkgs.libxfce4util; # Added on 2025-12-23
|
||||
libxfce4windowing = lib.warnOnInstantiate "‘xfce.libxfce4windowing’ was moved to top-level. Please use ‘pkgs.libxfce4windowing’ directly" pkgs.libxfce4windowing; # Added on 2025-12-23
|
||||
xfce4-dev-tools = lib.warnOnInstantiate "‘xfce.xfce4-dev-tools’ was moved to top-level. Please use ‘pkgs.xfce4-dev-tools’ directly" pkgs.xfce4-dev-tools; # Added on 2025-12-23
|
||||
xfce4-panel = lib.warnOnInstantiate "‘xfce.xfce4-panel’ was moved to top-level. Please use ‘pkgs.xfce4-panel’ directly" pkgs.xfce4-panel; # Added on 2025-12-23
|
||||
xfconf = lib.warnOnInstantiate "‘xfce.xfconf’ was moved to top-level. Please use ‘pkgs.xfconf’ directly" pkgs.xfconf; # Added on 2025-12-23
|
||||
|
||||
xfce4-alsa-plugin = lib.warnOnInstantiate "‘xfce.xfce4-alsa-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-alsa-plugin’ directly" pkgs.xfce4-alsa-plugin; # Added on 2025-12-19
|
||||
xfce4-battery-plugin = lib.warnOnInstantiate "‘xfce.xfce4-battery-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-battery-plugin’ directly" pkgs.xfce4-battery-plugin; # Added on 2025-12-19
|
||||
xfce4-clipman-plugin = lib.warnOnInstantiate "‘xfce.xfce4-clipman-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-clipman-plugin’ directly" pkgs.xfce4-clipman-plugin; # Added on 2025-12-19
|
||||
xfce4-cpufreq-plugin = lib.warnOnInstantiate "‘xfce.xfce4-cpufreq-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-cpufreq-plugin’ directly" pkgs.xfce4-cpufreq-plugin; # Added on 2025-12-19
|
||||
xfce4-cpugraph-plugin = lib.warnOnInstantiate "‘xfce.xfce4-cpugraph-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-cpugraph-plugin’ directly" pkgs.xfce4-cpugraph-plugin; # Added on 2025-12-19
|
||||
xfce4-dockbarx-plugin = lib.warnOnInstantiate "‘xfce.xfce4-dockbarx-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-dockbarx-plugin’ directly" pkgs.xfce4-dockbarx-plugin; # Added on 2025-12-19
|
||||
xfce4-docklike-plugin = lib.warnOnInstantiate "‘xfce.xfce4-docklike-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-docklike-plugin’ directly" pkgs.xfce4-docklike-plugin; # Added on 2025-12-19
|
||||
xfce4-eyes-plugin = lib.warnOnInstantiate "‘xfce.xfce4-eyes-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-eyes-plugin’ directly" pkgs.xfce4-eyes-plugin; # Added on 2025-12-19
|
||||
xfce4-fsguard-plugin = lib.warnOnInstantiate "‘xfce.xfce4-fsguard-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-fsguard-plugin’ directly" pkgs.xfce4-fsguard-plugin; # Added on 2025-12-19
|
||||
xfce4-genmon-plugin = lib.warnOnInstantiate "‘xfce.xfce4-genmon-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-genmon-plugin’ directly" pkgs.xfce4-genmon-plugin; # Added on 2025-12-19
|
||||
xfce4-i3-workspaces-plugin = lib.warnOnInstantiate "‘xfce.xfce4-i3-workspaces-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-i3-workspaces-plugin’ directly" pkgs.xfce4-i3-workspaces-plugin; # Added on 2025-12-19
|
||||
xfce4-mailwatch-plugin = lib.warnOnInstantiate "‘xfce.xfce4-mailwatch-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-mailwatch-plugin’ directly" pkgs.xfce4-mailwatch-plugin; # Added on 2025-12-19
|
||||
xfce4-mpc-plugin = lib.warnOnInstantiate "‘xfce.xfce4-mpc-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-mpc-plugin’ directly" pkgs.xfce4-mpc-plugin; # Added on 2025-12-19
|
||||
xfce4-netload-plugin = lib.warnOnInstantiate "‘xfce.xfce4-netload-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-netload-plugin’ directly" pkgs.xfce4-netload-plugin; # Added on 2025-12-19
|
||||
xfce4-notes-plugin = lib.warnOnInstantiate "‘xfce.xfce4-notes-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-notes-plugin’ directly" pkgs.xfce4-notes-plugin; # Added on 2025-12-19
|
||||
xfce4-systemload-plugin = lib.warnOnInstantiate "‘xfce.xfce4-systemload-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-systemload-plugin’ directly" pkgs.xfce4-systemload-plugin; # Added on 2025-12-19
|
||||
xfce4-time-out-plugin = lib.warnOnInstantiate "‘xfce.xfce4-time-out-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-time-out-plugin’ directly" pkgs.xfce4-time-out-plugin; # Added on 2025-12-19
|
||||
xfce4-timer-plugin = lib.warnOnInstantiate "‘xfce.xfce4-timer-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-timer-plugin’ directly" pkgs.xfce4-timer-plugin; # Added on 2025-12-19
|
||||
xfce4-verve-plugin = lib.warnOnInstantiate "‘xfce.xfce4-verve-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-verve-plugin’ directly" pkgs.xfce4-verve-plugin; # Added on 2025-12-19
|
||||
xfce4-xkb-plugin = lib.warnOnInstantiate "‘xfce.xfce4-xkb-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-xkb-plugin’ directly" pkgs.xfce4-xkb-plugin; # Added on 2025-12-19
|
||||
xfce4-weather-plugin = lib.warnOnInstantiate "‘xfce.xfce4-weather-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-weather-plugin’ directly" pkgs.xfce4-weather-plugin; # Added on 2025-12-19
|
||||
xfce4-whiskermenu-plugin = lib.warnOnInstantiate "‘xfce.xfce4-whiskermenu-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-whiskermenu-plugin’ directly" pkgs.xfce4-whiskermenu-plugin; # Added on 2025-12-19
|
||||
xfce4-windowck-plugin = lib.warnOnInstantiate "‘xfce.xfce4-windowck-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-windowck-plugin’ directly" pkgs.xfce4-windowck-plugin; # Added on 2025-12-19
|
||||
xfce4-pulseaudio-plugin = lib.warnOnInstantiate "‘xfce.xfce4-pulseaudio-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-pulseaudio-plugin’ directly" pkgs.xfce4-pulseaudio-plugin; # Added on 2025-12-19
|
||||
xfce4-sensors-plugin = lib.warnOnInstantiate "‘xfce.xfce4-sensors-plugin’ was moved to top-level. Please use ‘pkgs.xfce4-sensors-plugin’ directly" pkgs.xfce4-sensors-plugin; # Added on 2025-12-19
|
||||
|
||||
}
|
||||
|
||||
@@ -19,14 +19,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "django-health-check";
|
||||
version = "3.20.0";
|
||||
version = "3.20.8";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "KristianOellegaard";
|
||||
repo = "django-health-check";
|
||||
tag = version;
|
||||
hash = "sha256-qgABCDWKGYZ67sKvCozUQfmYcKWMpEVNLxInTnIaojk=";
|
||||
hash = "sha256-voB3shugfM/nO0vPd9yA4NOUB+E9aVcFnqG1mtfRYFc=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
|
||||
@@ -20,7 +20,7 @@ buildPythonPackage rec {
|
||||
owner = "hadiasghari";
|
||||
repo = "pyasn";
|
||||
rev = version;
|
||||
hash = "sha256-R7Vi1Mn44Mg3HQLDk9O43MkXXwbLRr/jjVKSHJvgYj0";
|
||||
hash = "sha256-7zpaxDe5qHUy/ekOJLxKawjaPQnByrOVj+m2bsUqfdg=";
|
||||
};
|
||||
|
||||
postInstall = ''
|
||||
|
||||
@@ -15,14 +15,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pydo";
|
||||
version = "0.22.0";
|
||||
version = "0.23.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "digitalocean";
|
||||
repo = "pydo";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-OYL75FFyyg47H9K436oVafZCcBLSkfLaJuZEtc1o5dU=";
|
||||
hash = "sha256-wmrth6n6vlYLMMiNYm6p5sS2keEFsnGm9sGjShSsLaA=";
|
||||
};
|
||||
|
||||
build-system = [ poetry-core ];
|
||||
|
||||
@@ -9,18 +9,19 @@
|
||||
inBootstrap ? false,
|
||||
pkg-config,
|
||||
gnumake,
|
||||
directoryListingUpdater,
|
||||
}:
|
||||
|
||||
let
|
||||
guileEnabled = guileSupport && !inBootstrap;
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "gnumake";
|
||||
version = "4.4.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/make/make-${version}.tar.gz";
|
||||
url = "mirror://gnu/make/make-${finalAttrs.version}.tar.gz";
|
||||
sha256 = "sha256-3Rb7HWe/q3mnL16DkHNcSePo5wtJRaFasfgd23hlj7M=";
|
||||
};
|
||||
|
||||
@@ -52,9 +53,15 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
separateDebugInfo = true;
|
||||
|
||||
passthru.tests = {
|
||||
# make sure that the override doesn't break bootstrapping
|
||||
gnumakeWithGuile = gnumake.override { guileSupport = true; };
|
||||
passthru = {
|
||||
tests = {
|
||||
# make sure that the override doesn't break bootstrapping
|
||||
gnumakeWithGuile = gnumake.override { guileSupport = true; };
|
||||
};
|
||||
updateScript = directoryListingUpdater {
|
||||
inherit (finalAttrs) pname version;
|
||||
url = "https://ftp.gnu.org/gnu/make/";
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
@@ -70,10 +77,9 @@ stdenv.mkDerivation rec {
|
||||
to build and install the program.
|
||||
'';
|
||||
homepage = "https://www.gnu.org/software/make/";
|
||||
|
||||
license = lib.licenses.gpl3Plus;
|
||||
maintainers = [ ];
|
||||
maintainers = [ lib.maintainers.mdaniels5757 ];
|
||||
mainProgram = "make";
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -I nixpkgs=./. -i bash -p bash nix-prefetch curl jq gawk gnused nixfmt
|
||||
#!nix-shell -I nixpkgs=./. -i bash -p bash nix curl jq gawk gnused nixfmt
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
@@ -49,8 +49,13 @@ done < <(echo "$RELEASE_URLS" | jq -r)
|
||||
|
||||
>&2 echo "Updating Xanmod \"$VARIANT\" from $OLD_VERSION to $NEW_VERSION ($SUFFIX)"
|
||||
|
||||
prefetchURL() {
|
||||
result=$(nix-build -E "with import ./. {}; fetchzip { url=\"$1\"; hash=\"\"; }" 2>&1)
|
||||
echo "$result" | awk '/got:/ {print $NF}'
|
||||
}
|
||||
|
||||
URL="https://gitlab.com/api/v4/projects/xanmod%2Flinux/repository/archive.tar.gz?sha=$NEW_VERSION-$SUFFIX"
|
||||
HASH="$(nix-prefetch fetchzip --quiet --url "$URL")"
|
||||
HASH="$(prefetchURL "$URL")"
|
||||
|
||||
update_variant() {
|
||||
local file_path="$1"
|
||||
|
||||
@@ -15,14 +15,14 @@ let
|
||||
variants = {
|
||||
# ./update-xanmod.sh lts
|
||||
lts = {
|
||||
version = "6.12.62";
|
||||
hash = "sha256-NAcE8ml7HDhpLNDKZEKlEFwdylRiFte+Gi+uxnlyVHQ=";
|
||||
version = "6.12.63";
|
||||
hash = "sha256-lrDglbhEch2/xtWayWcCw2Qm5qzTVa50Pwy2vn4ppCo=";
|
||||
isLTS = true;
|
||||
};
|
||||
# ./update-xanmod.sh main
|
||||
main = {
|
||||
version = "6.17.12";
|
||||
hash = "sha256-1IdlQEh+BQID91j/KpkJwzM3WMymbw/AXWpcEMitYfs=";
|
||||
version = "6.18.2";
|
||||
hash = "sha256-LSzoUpQiqVAeboKKyRzKyiYpuUbueJvHTtN5mm8EHL8=";
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -7,13 +7,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "mcelog";
|
||||
version = "207";
|
||||
version = "208";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "andikleen";
|
||||
repo = "mcelog";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-ZHhY7pqDuez3QtbhjDr2D/isw+gsoVdfB5WRRchdh6E=";
|
||||
hash = "sha256-UBWgdRrSNkocreyFs61IxtdbUrL1UGn2gJswqXjWhlY=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -121,6 +121,8 @@
|
||||
xconsole,
|
||||
xcursorgen,
|
||||
xcursor-themes,
|
||||
xdm,
|
||||
xdpyinfo,
|
||||
xdriinfo,
|
||||
xev,
|
||||
xeyes,
|
||||
@@ -146,6 +148,7 @@
|
||||
xorg-sgml-doctools,
|
||||
xprop,
|
||||
xrandr,
|
||||
xrdb,
|
||||
xrefresh,
|
||||
xset,
|
||||
xsetroot,
|
||||
@@ -198,6 +201,8 @@ self: with self; {
|
||||
xcompmgr
|
||||
xconsole
|
||||
xcursorgen
|
||||
xdm
|
||||
xdpyinfo
|
||||
xdriinfo
|
||||
xev
|
||||
xeyes
|
||||
@@ -218,6 +223,7 @@ self: with self; {
|
||||
xorgproto
|
||||
xprop
|
||||
xrandr
|
||||
xrdb
|
||||
xrefresh
|
||||
xset
|
||||
xsetroot
|
||||
@@ -410,124 +416,6 @@ self: with self; {
|
||||
})
|
||||
) { };
|
||||
|
||||
# THIS IS A GENERATED FILE. DO NOT EDIT!
|
||||
xdm = callPackage (
|
||||
{
|
||||
stdenv,
|
||||
pkg-config,
|
||||
fetchurl,
|
||||
libX11,
|
||||
libXau,
|
||||
libXaw,
|
||||
libXdmcp,
|
||||
libXext,
|
||||
libXft,
|
||||
libXinerama,
|
||||
libXmu,
|
||||
libXpm,
|
||||
xorgproto,
|
||||
libXrender,
|
||||
libXt,
|
||||
wrapWithXFileSearchPathHook,
|
||||
testers,
|
||||
}:
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "xdm";
|
||||
version = "1.1.17";
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = "mirror://xorg/individual/app/xdm-1.1.17.tar.xz";
|
||||
sha256 = "0spbxjxxrnfxf8gqncd7bry3z7dvr74ba987cx9iq0qsj7qax54l";
|
||||
};
|
||||
hardeningDisable = [
|
||||
"bindnow"
|
||||
"relro"
|
||||
];
|
||||
strictDeps = true;
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
wrapWithXFileSearchPathHook
|
||||
];
|
||||
buildInputs = [
|
||||
libX11
|
||||
libXau
|
||||
libXaw
|
||||
libXdmcp
|
||||
libXext
|
||||
libXft
|
||||
libXinerama
|
||||
libXmu
|
||||
libXpm
|
||||
xorgproto
|
||||
libXrender
|
||||
libXt
|
||||
];
|
||||
passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
|
||||
meta = {
|
||||
pkgConfigModules = [ ];
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
})
|
||||
) { };
|
||||
|
||||
# THIS IS A GENERATED FILE. DO NOT EDIT!
|
||||
xdpyinfo = callPackage (
|
||||
{
|
||||
stdenv,
|
||||
pkg-config,
|
||||
fetchurl,
|
||||
libdmx,
|
||||
libX11,
|
||||
libxcb,
|
||||
libXcomposite,
|
||||
libXext,
|
||||
libXi,
|
||||
libXinerama,
|
||||
xorgproto,
|
||||
libXrender,
|
||||
libXtst,
|
||||
libXxf86dga,
|
||||
libXxf86misc,
|
||||
libXxf86vm,
|
||||
testers,
|
||||
}:
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "xdpyinfo";
|
||||
version = "1.3.4";
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = "mirror://xorg/individual/app/xdpyinfo-1.3.4.tar.xz";
|
||||
sha256 = "0aw2yhx4ys22231yihkzhnw9jsyzksl4yyf3sx0689npvf0sbbd8";
|
||||
};
|
||||
hardeningDisable = [
|
||||
"bindnow"
|
||||
"relro"
|
||||
];
|
||||
strictDeps = true;
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = [
|
||||
libdmx
|
||||
libX11
|
||||
libxcb
|
||||
libXcomposite
|
||||
libXext
|
||||
libXi
|
||||
libXinerama
|
||||
xorgproto
|
||||
libXrender
|
||||
libXtst
|
||||
libXxf86dga
|
||||
libXxf86misc
|
||||
libXxf86vm
|
||||
];
|
||||
passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
|
||||
meta = {
|
||||
pkgConfigModules = [ ];
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
})
|
||||
) { };
|
||||
|
||||
# THIS IS A GENERATED FILE. DO NOT EDIT!
|
||||
xf86inputevdev = callPackage (
|
||||
{
|
||||
@@ -2644,44 +2532,6 @@ self: with self; {
|
||||
})
|
||||
) { };
|
||||
|
||||
# THIS IS A GENERATED FILE. DO NOT EDIT!
|
||||
xrdb = callPackage (
|
||||
{
|
||||
stdenv,
|
||||
pkg-config,
|
||||
fetchurl,
|
||||
libX11,
|
||||
libXmu,
|
||||
xorgproto,
|
||||
testers,
|
||||
}:
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "xrdb";
|
||||
version = "1.2.2";
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = "mirror://xorg/individual/app/xrdb-1.2.2.tar.xz";
|
||||
sha256 = "1x1ka0zbcw66a06jvsy92bvnsj9vxbvnq1hbn1az4f0v4fmzrx9i";
|
||||
};
|
||||
hardeningDisable = [
|
||||
"bindnow"
|
||||
"relro"
|
||||
];
|
||||
strictDeps = true;
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = [
|
||||
libX11
|
||||
libXmu
|
||||
xorgproto
|
||||
];
|
||||
passthru.tests.pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
|
||||
meta = {
|
||||
pkgConfigModules = [ ];
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
})
|
||||
) { };
|
||||
|
||||
# THIS IS A GENERATED FILE. DO NOT EDIT!
|
||||
xtrap = callPackage (
|
||||
{
|
||||
|
||||
@@ -453,6 +453,8 @@ print OUT <<EOF;
|
||||
xconsole,
|
||||
xcursorgen,
|
||||
xcursor-themes,
|
||||
xdm,
|
||||
xdpyinfo,
|
||||
xdriinfo,
|
||||
xev,
|
||||
xeyes,
|
||||
@@ -478,6 +480,7 @@ print OUT <<EOF;
|
||||
xorg-sgml-doctools,
|
||||
xprop,
|
||||
xrandr,
|
||||
xrdb,
|
||||
xrefresh,
|
||||
xset,
|
||||
xsetroot,
|
||||
@@ -530,6 +533,8 @@ self: with self; {
|
||||
xcompmgr
|
||||
xconsole
|
||||
xcursorgen
|
||||
xdm
|
||||
xdpyinfo
|
||||
xdriinfo
|
||||
xev
|
||||
xeyes
|
||||
@@ -550,6 +555,7 @@ self: with self; {
|
||||
xorgproto
|
||||
xprop
|
||||
xrandr
|
||||
xrdb
|
||||
xrefresh
|
||||
xset
|
||||
xsetroot
|
||||
|
||||
@@ -59,10 +59,6 @@
|
||||
let
|
||||
inherit (stdenv.hostPlatform) isDarwin;
|
||||
|
||||
malloc0ReturnsNullCrossFlag = lib.optional (
|
||||
stdenv.hostPlatform != stdenv.buildPlatform
|
||||
) "--enable-malloc0returnsnull";
|
||||
|
||||
addMainProgram =
|
||||
pkg:
|
||||
{
|
||||
@@ -115,38 +111,6 @@ self: super:
|
||||
|
||||
mkfontdir = xorg.mkfontscale;
|
||||
|
||||
xdpyinfo = super.xdpyinfo.overrideAttrs (attrs: {
|
||||
configureFlags = attrs.configureFlags or [ ] ++ malloc0ReturnsNullCrossFlag;
|
||||
preConfigure =
|
||||
attrs.preConfigure or ""
|
||||
# missing transitive dependencies
|
||||
+ lib.optionalString stdenv.hostPlatform.isStatic ''
|
||||
export NIX_CFLAGS_LINK="$NIX_CFLAGS_LINK -lXau -lXdmcp"
|
||||
'';
|
||||
meta = attrs.meta // {
|
||||
mainProgram = "xdpyinfo";
|
||||
};
|
||||
});
|
||||
|
||||
xdm = super.xdm.overrideAttrs (attrs: {
|
||||
buildInputs = attrs.buildInputs ++ [ libxcrypt ];
|
||||
configureFlags =
|
||||
attrs.configureFlags or [ ]
|
||||
++ [
|
||||
"ac_cv_path_RAWCPP=${stdenv.cc.targetPrefix}cpp"
|
||||
]
|
||||
++
|
||||
lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform)
|
||||
# checking for /dev/urandom... configure: error: cannot check for file existence when cross compiling
|
||||
[
|
||||
"ac_cv_file__dev_urandom=true"
|
||||
"ac_cv_file__dev_random=true"
|
||||
];
|
||||
meta = attrs.meta // {
|
||||
mainProgram = "xdm";
|
||||
};
|
||||
});
|
||||
|
||||
xf86inputevdev = super.xf86inputevdev.overrideAttrs (attrs: {
|
||||
outputs = [
|
||||
"out"
|
||||
@@ -468,13 +432,6 @@ self: super:
|
||||
|
||||
xpr = addMainProgram super.xpr { };
|
||||
|
||||
xrdb = super.xrdb.overrideAttrs (attrs: {
|
||||
configureFlags = [ "--with-cpp=${mcpp}/bin/mcpp" ];
|
||||
meta = attrs.meta // {
|
||||
mainProgram = "xrdb";
|
||||
};
|
||||
});
|
||||
|
||||
xwd = addMainProgram super.xwd { };
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
mirror://xorg/individual/app/xclock-1.1.1.tar.xz
|
||||
mirror://xorg/individual/app/xdm-1.1.17.tar.xz
|
||||
mirror://xorg/individual/app/xdpyinfo-1.3.4.tar.xz
|
||||
mirror://xorg/individual/app/xfd-1.1.4.tar.xz
|
||||
mirror://xorg/individual/app/xfs-1.2.2.tar.xz
|
||||
mirror://xorg/individual/app/xinit-1.4.4.tar.xz
|
||||
@@ -10,7 +8,6 @@ mirror://xorg/individual/app/xkbevd-1.1.6.tar.xz
|
||||
mirror://xorg/individual/app/xkbprint-1.0.7.tar.xz
|
||||
mirror://xorg/individual/app/xload-1.2.0.tar.xz
|
||||
mirror://xorg/individual/app/xpr-1.2.0.tar.xz
|
||||
mirror://xorg/individual/app/xrdb-1.2.2.tar.xz
|
||||
mirror://xorg/individual/app/xtrap-1.0.3.tar.bz2
|
||||
mirror://xorg/individual/app/xwd-1.0.9.tar.xz
|
||||
mirror://xorg/individual/driver/xf86-input-evdev-2.11.0.tar.xz
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
makeShellWrapper,
|
||||
updateAutotoolsGnuConfigScriptsHook,
|
||||
runtimeShellPackage,
|
||||
directoryListingUpdater,
|
||||
}:
|
||||
|
||||
# Note: this package is used for bootstrapping fetchurl, and thus
|
||||
@@ -12,12 +13,12 @@
|
||||
# cgit) that are needed here should be included directly in Nixpkgs as
|
||||
# files.
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "gzip";
|
||||
version = "1.14";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/gzip/${pname}-${version}.tar.xz";
|
||||
url = "mirror://gnu/gzip/${finalAttrs.pname}-${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-Aae4gb0iC/32Ffl7hxj4C9/T9q3ThbmT3Pbv0U6MCsY=";
|
||||
};
|
||||
|
||||
@@ -60,10 +61,16 @@ stdenv.mkDerivation rec {
|
||||
--add-flags "\''${GZIP_NO_TIMESTAMPS:+-n}"
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
updateScript = directoryListingUpdater {
|
||||
inherit (finalAttrs) pname version;
|
||||
url = "https://ftp.gnu.org/gnu/gzip/";
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = "https://www.gnu.org/software/gzip/";
|
||||
description = "GNU zip compression program";
|
||||
|
||||
longDescription = ''
|
||||
gzip (GNU zip) is a popular data compression program written by
|
||||
Jean-loup Gailly for the GNU project. Mark Adler wrote the
|
||||
@@ -75,11 +82,9 @@ stdenv.mkDerivation rec {
|
||||
and we needed a replacement. The superior compression ratio of gzip
|
||||
is just a bonus.
|
||||
'';
|
||||
|
||||
platforms = lib.platforms.all;
|
||||
|
||||
license = lib.licenses.gpl3Plus;
|
||||
|
||||
mainProgram = "gzip";
|
||||
maintainers = [ lib.maintainers.mdaniels5757 ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user