mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-08-25 17:55:21 +00:00
chatgpt: split into chatgpt and chatgpt-classic
As of July 9, 2026, ChatGPT has renamed their existing desktop app to "ChatGPT Classic" and introduced a new "ChatGPT" app. The new app is intended to eventually replace the old one. The two apps are currently not feature-equivalent, but the new app has most of the existing functionality of the old one. This change renames the old package to chatgpt-classic and retargets chatgpt at the new app. Both app versions were also updated to latest available. Assisted-by: Claude Code (Sonnet 5, claude-sonnet-5)
This commit is contained in:
@@ -160,6 +160,8 @@
|
||||
|
||||
- [firefox-syncserver.database.type](#opt-services.firefox-syncserver.database.type) no longer defaults to `"mysql"`. You must now explicitly choose between `"mysql"` and `"postgresql"`. New deployments should prefer PostgreSQL.
|
||||
|
||||
- `chatgpt` has been retargeted to OpenAI's new ChatGPT desktop app, while the previous app has been renamed to `chatgpt-classic`.
|
||||
|
||||
## Other Notable Changes {#sec-release-26.11-notable-changes}
|
||||
|
||||
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
|
||||
|
||||
61
pkgs/by-name/ch/chatgpt-classic/package.nix
Normal file
61
pkgs/by-name/ch/chatgpt-classic/package.nix
Normal file
@@ -0,0 +1,61 @@
|
||||
{
|
||||
lib,
|
||||
stdenvNoCC,
|
||||
fetchurl,
|
||||
xar,
|
||||
cpio,
|
||||
unzip,
|
||||
}:
|
||||
|
||||
let
|
||||
source = import ./source.nix;
|
||||
in
|
||||
stdenvNoCC.mkDerivation {
|
||||
pname = "chatgpt-classic";
|
||||
inherit (source) version;
|
||||
|
||||
src = fetchurl source.src;
|
||||
|
||||
strictDeps = true;
|
||||
__structuredAttrs = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
xar
|
||||
cpio
|
||||
unzip
|
||||
];
|
||||
|
||||
unpackPhase = ''
|
||||
runHook preUnpack
|
||||
|
||||
xar -xf "$src"
|
||||
zcat Payload | cpio -i
|
||||
unzip -q "Library/Application Support/OpenAI/ChatGPT Classic Update/ChatGPT Classic.app.zip"
|
||||
|
||||
runHook postUnpack
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p "$out/Applications"
|
||||
mkdir -p "$out/bin"
|
||||
cp -a "ChatGPT Classic.app" "$out/Applications"
|
||||
ln -s "$out/Applications/ChatGPT Classic.app/Contents/MacOS/ChatGPT Classic" "$out/bin/ChatGPT Classic"
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru.updateScript = ./update.sh;
|
||||
|
||||
meta = {
|
||||
description = "Desktop application for ChatGPT Classic";
|
||||
homepage = "https://openai.com/chatgpt/desktop/";
|
||||
changelog = "https://help.openai.com/en/articles/9703738-macos-app-release-notes";
|
||||
license = lib.licenses.unfree;
|
||||
maintainers = with lib.maintainers; [ wattmto ];
|
||||
platforms = lib.platforms.darwin;
|
||||
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
|
||||
mainProgram = "ChatGPT Classic";
|
||||
};
|
||||
}
|
||||
7
pkgs/by-name/ch/chatgpt-classic/source.nix
Normal file
7
pkgs/by-name/ch/chatgpt-classic/source.nix
Normal file
@@ -0,0 +1,7 @@
|
||||
{
|
||||
version = "1.2026.184";
|
||||
src = {
|
||||
url = "https://persistent.oaistatic.com/sidekick/public/ChatGPT_Classic.pkg";
|
||||
hash = "sha256-uj7mpU4tSsEBr2Ypwnu7bdeogCVrrMQs/MWW34CS5Jk=";
|
||||
};
|
||||
}
|
||||
23
pkgs/by-name/ch/chatgpt-classic/update.sh
Executable file
23
pkgs/by-name/ch/chatgpt-classic/update.sh
Executable file
@@ -0,0 +1,23 @@
|
||||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -i bash -p curl libxml2
|
||||
|
||||
XML_URL="https://persistent.oaistatic.com/sidekick/public/sparkle_public_appcast.xml"
|
||||
|
||||
XML_DATA=$(curl -s $XML_URL)
|
||||
|
||||
LATEST_VERSION=$(echo "$XML_DATA" | xmllint --xpath '/rss/channel/item[1]/*[local-name()="shortVersionString"]/text()' -)
|
||||
DOWNLOAD_URL=$(echo "$XML_DATA" | xmllint --xpath 'string(//item[1]/enclosure/@url)' -)
|
||||
|
||||
HASH=$(nix-prefetch-url $DOWNLOAD_URL | xargs nix --extra-experimental-features nix-command hash convert --hash-algo sha256)
|
||||
|
||||
SOURCE_NIX="$(dirname ${BASH_SOURCE[0]})/source.nix"
|
||||
|
||||
cat > "${SOURCE_NIX}" << _EOF_
|
||||
{
|
||||
version = "$LATEST_VERSION";
|
||||
src = {
|
||||
url = "$DOWNLOAD_URL";
|
||||
hash = "$HASH";
|
||||
};
|
||||
}
|
||||
_EOF_
|
||||
@@ -2,8 +2,7 @@
|
||||
lib,
|
||||
stdenvNoCC,
|
||||
fetchurl,
|
||||
_7zz,
|
||||
undmg,
|
||||
unzip,
|
||||
}:
|
||||
|
||||
let
|
||||
@@ -15,8 +14,11 @@ stdenvNoCC.mkDerivation {
|
||||
|
||||
src = fetchurl source.src;
|
||||
|
||||
strictDeps = true;
|
||||
__structuredAttrs = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
undmg
|
||||
unzip
|
||||
];
|
||||
|
||||
sourceRoot = ".";
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
version = "1.2026.119";
|
||||
version = "26.803.81509";
|
||||
src = {
|
||||
url = "https://persistent.oaistatic.com/sidekick/public/ChatGPT_Desktop_public_1.2026.119_1780053722.dmg";
|
||||
hash = "sha256-2RNQ7KS/Bf1boJHpC5qWNdFsWf+NoOVlXqZVEUf7Kh0=";
|
||||
url = "https://persistent.oaistatic.com/codex-app-prod/ChatGPT-darwin-arm64-26.803.81509.zip";
|
||||
hash = "sha256-NMfmKWeK1dY6Y57GlKW4O4X04b18Ie4qvP77sEEJW5w=";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -i bash -p curl libxml2
|
||||
|
||||
XML_URL="https://persistent.oaistatic.com/sidekick/public/sparkle_public_appcast.xml"
|
||||
XML_URL="https://persistent.oaistatic.com/codex-app-prod/appcast.xml"
|
||||
|
||||
XML_DATA=$(curl -s $XML_URL)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user