From f727724f2c81d46b13f9f02fc79bf344ed6c2d25 Mon Sep 17 00:00:00 2001 From: Ethan Carter Edwards Date: Wed, 17 Jun 2026 22:09:51 -0400 Subject: [PATCH] windsurf: rename to devin-desktop, bump to 3.3.18 Announcement: https://cognition.com/blog/introducing-devin-desktop Signed-off-by: Ethan Carter Edwards --- pkgs/by-name/de/devin-desktop/info.json | 14 +++++++++++++ .../windsurf => de/devin-desktop}/package.nix | 20 +++++++++---------- .../devin-desktop}/update/.gitignore | 0 .../devin-desktop}/update/package.json | 0 .../devin-desktop}/update/tsconfig.json | 0 .../devin-desktop}/update/update.mts | 9 ++++----- pkgs/by-name/wi/windsurf/info.json | 20 ------------------- pkgs/top-level/aliases.nix | 1 + 8 files changed, 29 insertions(+), 35 deletions(-) create mode 100644 pkgs/by-name/de/devin-desktop/info.json rename pkgs/by-name/{wi/windsurf => de/devin-desktop}/package.nix (73%) rename pkgs/by-name/{wi/windsurf => de/devin-desktop}/update/.gitignore (100%) rename pkgs/by-name/{wi/windsurf => de/devin-desktop}/update/package.json (100%) rename pkgs/by-name/{wi/windsurf => de/devin-desktop}/update/tsconfig.json (100%) rename pkgs/by-name/{wi/windsurf => de/devin-desktop}/update/update.mts (84%) delete mode 100644 pkgs/by-name/wi/windsurf/info.json diff --git a/pkgs/by-name/de/devin-desktop/info.json b/pkgs/by-name/de/devin-desktop/info.json new file mode 100644 index 000000000000..5c45c061197d --- /dev/null +++ b/pkgs/by-name/de/devin-desktop/info.json @@ -0,0 +1,14 @@ +{ + "aarch64-darwin": { + "version": "3.3.18", + "vscodeVersion": "1.110.1", + "url": "https://windsurf-stable.codeiumdata.com/darwin-arm64/stable/16737566f57f3b53bde136375fe0544eca12fac4/Devin-darwin-arm64-3.3.18.zip", + "sha256": "7ac789baa5d818b09f6a62315d34b55dde02b0a409a22903d0228a819ea734e7" + }, + "x86_64-linux": { + "version": "3.3.18", + "vscodeVersion": "1.110.1", + "url": "https://windsurf-stable.codeiumdata.com/linux-x64/stable/16737566f57f3b53bde136375fe0544eca12fac4/Devin-linux-x64-3.3.18.tar.gz", + "sha256": "05c7fa988c324a1633038ebe90e217d17a7f188197a5070f397460864ef41292" + } +} diff --git a/pkgs/by-name/wi/windsurf/package.nix b/pkgs/by-name/de/devin-desktop/package.nix similarity index 73% rename from pkgs/by-name/wi/windsurf/package.nix rename to pkgs/by-name/de/devin-desktop/package.nix index 6f5e6c97c769..d33b5d803dbf 100644 --- a/pkgs/by-name/wi/windsurf/package.nix +++ b/pkgs/by-name/de/devin-desktop/package.nix @@ -16,15 +16,16 @@ buildVscode { inherit commandLineArgs useVSCodeRipgrep; inherit (info) version vscodeVersion; - pname = "windsurf"; - executableName = "windsurf"; - longName = "Windsurf"; - shortName = "windsurf"; - libraryName = "windsurf"; - iconName = "windsurf"; + pname = "devin-desktop"; - sourceRoot = if stdenv.hostPlatform.isDarwin then "Windsurf.app" else "Windsurf"; + executableName = "devin-desktop"; + longName = "devin-desktop"; + shortName = "devin-desktop"; + libraryName = "devin-desktop"; + iconName = "devin-desktop"; + + sourceRoot = if stdenv.hostPlatform.isDarwin then "Devin.app" else "Devin"; src = fetchurl { inherit (info) url sha256; }; @@ -41,9 +42,9 @@ buildVscode { description = "Agentic IDE powered by AI Flow paradigm"; longDescription = '' The first agentic IDE, and then some. - The Windsurf Editor is where the work of developers and AI truly flow together, allowing for a coding experience that feels like literal magic. + Devin Desktop is where the work of developers and AI truly flow together, allowing for a coding experience that feels like literal magic. ''; - homepage = "https://codeium.com/windsurf"; + homepage = "https://devin.ai/desktop"; license = lib.licenses.unfree; maintainers = with lib.maintainers; [ sarahec @@ -51,7 +52,6 @@ buildVscode { ]; platforms = [ "aarch64-darwin" - "x86_64-darwin" "x86_64-linux" ]; sourceProvenance = [ lib.sourceTypes.binaryBytecode ]; diff --git a/pkgs/by-name/wi/windsurf/update/.gitignore b/pkgs/by-name/de/devin-desktop/update/.gitignore similarity index 100% rename from pkgs/by-name/wi/windsurf/update/.gitignore rename to pkgs/by-name/de/devin-desktop/update/.gitignore diff --git a/pkgs/by-name/wi/windsurf/update/package.json b/pkgs/by-name/de/devin-desktop/update/package.json similarity index 100% rename from pkgs/by-name/wi/windsurf/update/package.json rename to pkgs/by-name/de/devin-desktop/update/package.json diff --git a/pkgs/by-name/wi/windsurf/update/tsconfig.json b/pkgs/by-name/de/devin-desktop/update/tsconfig.json similarity index 100% rename from pkgs/by-name/wi/windsurf/update/tsconfig.json rename to pkgs/by-name/de/devin-desktop/update/tsconfig.json diff --git a/pkgs/by-name/wi/windsurf/update/update.mts b/pkgs/by-name/de/devin-desktop/update/update.mts similarity index 84% rename from pkgs/by-name/wi/windsurf/update/update.mts rename to pkgs/by-name/de/devin-desktop/update/update.mts index 64fad0bbd59f..f10048bfdbd4 100755 --- a/pkgs/by-name/wi/windsurf/update/update.mts +++ b/pkgs/by-name/de/devin-desktop/update/update.mts @@ -17,7 +17,7 @@ interface LatestInfo { readonly productVersion: string; } -const platforms = ["aarch64-darwin", "x86_64-darwin", "x86_64-linux"] as const; +const platforms = ["aarch64-darwin", "x86_64-linux"] as const; type Platform = (typeof platforms)[number]; type InfoMap = Record< Platform, @@ -29,7 +29,7 @@ type InfoMap = Record< } >; -async function getInfo(targetSystem: "darwin-arm64" | "darwin-x64" | "linux-x64") { +async function getInfo(targetSystem: "darwin-arm64" | "linux-x64") { const url = `https://windsurf-stable.codeium.com/api/update/${targetSystem}/stable/latest` as const; @@ -57,7 +57,6 @@ async function main() { const info: InfoMap = { "aarch64-darwin": await getInfo("darwin-arm64"), - "x86_64-darwin": await getInfo("darwin-x64"), "x86_64-linux": await getInfo("linux-x64"), }; if (JSON.stringify(oldInfo) === JSON.stringify(info)) { @@ -66,7 +65,7 @@ async function main() { } for (const platform of platforms) { console.log( - `[update] Updating Windsurf ${platform} ${oldInfo[platform].version} -> ${info[platform].version}`, + `[update] Updating Devin Desktop ${platform} ${oldInfo[platform].version} -> ${info[platform].version}`, ); } await fsPromises.writeFile( @@ -74,7 +73,7 @@ async function main() { JSON.stringify(info, null, 2) + "\n", "utf-8", ); - console.log("[update] Updating Windsurf complete"); + console.log("[update] Updating Devin Desktop complete"); } if (process.argv[1] === __filename) { diff --git a/pkgs/by-name/wi/windsurf/info.json b/pkgs/by-name/wi/windsurf/info.json deleted file mode 100644 index 52ac71b50298..000000000000 --- a/pkgs/by-name/wi/windsurf/info.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "aarch64-darwin": { - "version": "2.3.9", - "vscodeVersion": "1.110.1", - "url": "https://windsurf-stable.codeiumdata.com/darwin-arm64/stable/a5d3f1ff990cabc0e8001cce6642bdb7ad429e73/Windsurf-darwin-arm64-2.3.9.zip", - "sha256": "35b11cd7307588fa11d4ec4690c2a5da8639e37659d68939e3a1dd46d9a105e3" - }, - "x86_64-darwin": { - "version": "2.3.9", - "vscodeVersion": "1.110.1", - "url": "https://windsurf-stable.codeiumdata.com/darwin-x64/stable/a5d3f1ff990cabc0e8001cce6642bdb7ad429e73/Windsurf-darwin-x64-2.3.9.zip", - "sha256": "63a515c68f322653b901f1472184ca688102f9b8c0b598dec590eb648ead4211" - }, - "x86_64-linux": { - "version": "2.3.9", - "vscodeVersion": "1.110.1", - "url": "https://windsurf-stable.codeiumdata.com/linux-x64/stable/a5d3f1ff990cabc0e8001cce6642bdb7ad429e73/Windsurf-linux-x64-2.3.9.tar.gz", - "sha256": "874024744cd853b7c350fe514be19b0060fac39586253c3b7602d6869473eadc" - } -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index f8623d3b89d7..986a37e07249 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -2350,6 +2350,7 @@ mapAliases { wifi-password = throw "'wifi-password' has been removed as it was unmaintained upstream"; # Added 2025-08-29 win-pvdrivers = throw "'win-pvdrivers' has been removed as it was subject to the Xen build machine compromise (XSN-01) and has open security vulnerabilities (XSA-468)"; # Added 2025-08-29 win-virtio = throw "'win-virtio' has been renamed to/replaced by 'virtio-win'"; # Converted to throw 2025-10-27 + windsurf = warnAlias "'windsurf' has been rebranded and replaced as 'devin-desktop'" devin-desktop; wineWayland = throw "'wineWayland' has been renamed to/replaced by 'wine-wayland'"; # Converted to throw 2025-10-27 wineWowPackages = warnAlias