Commit c908eba8 authored by mivorasu's avatar mivorasu Committed by mivorasu
Browse files

butterfly: 2.3.1 -> 2.3.2

parent 09d976e1
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
{
  "dart_leap": "sha256-oO5851cIdrW/asgOePxvwUgjn1XchkH9CKJUruvlLYI=",
  "lw_file_system": "sha256-P5zr781SKHqZGwM2dNRi0O53oZuaY2zaM7q2Z7th0F4=",
  "lw_file_system_api": "sha256-/Ur9zu4Ovb4x8j1n6Q6FWFuJ9yp92YQG3b7H5CMf3II=",
  "lw_sysapi": "sha256-oGs5q8N46WNcRzbsgsPB/6fVBH3g9utK4tlXBpwU4Qc=",
  "material_leap": "sha256-AHkXi+ENvLmJBXyF8jdXOCn/CThb6/LDr18gl9sL0XE=",
  "networker": "sha256-/3jFIZj66hWbTcIQx9OB5QRrukcBT4zpek+56AVaGIA=",
  "networker_crypto": "sha256-nI0luldloScjjix75kR5yOE1ZX8KFxMIC2N4whKlXUg=",
  "networker_socket": "sha256-5y1oy0IYDs7nhiIx653vI5Gfh5jrVewkRFxB1mjxlE4=",
  "perfect_freehand": "sha256-eBiid097rkF82n65Yg6a4VkKPv+70HIOYJT+9sCD//U=",
  "reorderable_grid": "sha256-g30DSPL/gsk0r8c2ecoKU4f1P3BF15zLnBVO6RXvDGQ=",
  "swamp_api": "sha256-ONaCXeMwEEHDvVmbo3o66O3CTCx4xGR3T5ZtSEwPvaw="
}
+9 −17
Original line number Diff line number Diff line
@@ -11,32 +11,20 @@

flutter329.buildFlutterApplication rec {
  pname = "butterfly";
  version = "2.3.1";
  version = "2.3.2";

  src = fetchFromGitHub {
    owner = "LinwoodDev";
    repo = "Butterfly";
    tag = "v${version}";
    hash = "sha256-/lwMKanoSM8oARBqQJ3hL23Z5sobLDwtL5RsxFgN5ew=";
    hash = "sha256-eAkepyZm4WgPo8ieBbWHoSSv/Zfr9U9HCsbxEyrzy0Y=";
  };

  pubspecLock = lib.importJSON ./pubspec.lock.json;

  sourceRoot = "${src.name}/app";

  gitHashes = {
    dart_leap = "sha256-oO5851cIdrW/asgOePxvwUgjn1XchkH9CKJUruvlLYI=";
    lw_file_system = "sha256-YWAInZw2FQzqGnopZr4oB1ZM5q0gjM65fvC4uhzl7gE=";
    networker = "sha256-/3jFIZj66hWbTcIQx9OB5QRrukcBT4zpek+56AVaGIA=";
    lw_file_system_api = "sha256-/Ur9zu4Ovb4x8j1n6Q6FWFuJ9yp92YQG3b7H5CMf3II=";
    lw_sysapi = "sha256-oGs5q8N46WNcRzbsgsPB/6fVBH3g9utK4tlXBpwU4Qc=";
    material_leap = "sha256-AHkXi+ENvLmJBXyF8jdXOCn/CThb6/LDr18gl9sL0XE=";
    networker_crypto = "sha256-nI0luldloScjjix75kR5yOE1ZX8KFxMIC2N4whKlXUg=";
    networker_socket = "sha256-5y1oy0IYDs7nhiIx653vI5Gfh5jrVewkRFxB1mjxlE4=";
    perfect_freehand = "sha256-eBiid097rkF82n65Yg6a4VkKPv+70HIOYJT+9sCD//U=";
    swamp_api = "sha256-ONaCXeMwEEHDvVmbo3o66O3CTCx4xGR3T5ZtSEwPvaw=";
    reorderable_grid = "sha256-g30DSPL/gsk0r8c2ecoKU4f1P3BF15zLnBVO6RXvDGQ=";
  };
  gitHashes = lib.importJSON ./gitHashes.json;

  postInstall = ''
    cp -r linux/debian/usr/share $out/share
@@ -54,15 +42,19 @@ flutter329.buildFlutterApplication rec {
        '';
    updateScript = _experimental-update-script-combinators.sequence [
      (gitUpdater {
        ignoredVersions = ".*rc.*";
        ignoredVersions = ".*(rc|beta).*";
        rev-prefix = "v";
      })
      (_experimental-update-script-combinators.copyAttrOutputToFile "butterfly.pubspecSource" ./pubspec.lock.json)
      {
        command = [ ./update-gitHashes.py ];
        supportedFeatures = [ "silent" ];
      }
    ];
  };

  meta = {
    description = "Powerful, minimalistic, cross-platform, opensource note-taking app";
    description = "Note taking app where your ideas come first";
    homepage = "https://github.com/LinwoodDev/Butterfly";
    mainProgram = "butterfly";
    license = with lib.licenses; [
+3 −3
Original line number Diff line number Diff line
@@ -197,7 +197,7 @@
        "relative": true
      },
      "source": "path",
      "version": "2.3.1"
      "version": "2.3.2"
    },
    "camera": {
      "dependency": "direct main",
@@ -986,8 +986,8 @@
      "dependency": "direct main",
      "description": {
        "path": "packages/lw_file_system",
        "ref": "08f472ba88112647b4a7b94dff57d74ed897e062",
        "resolved-ref": "08f472ba88112647b4a7b94dff57d74ed897e062",
        "ref": "ad67d9835e5fc673c9e7d1bcaad10c89423d4b61",
        "resolved-ref": "ad67d9835e5fc673c9e7d1bcaad10c89423d4b61",
        "url": "https://github.com/LinwoodDev/dart_pkgs.git"
      },
      "source": "git",
+51 −0
Original line number Diff line number Diff line
#! /usr/bin/env nix-shell
#! nix-shell -i python3 -p python3 nix-prefetch-git

import json
import subprocess
import sys
from pathlib import Path

THIS_FOLDER = Path(__file__).parent.resolve()
PUBSPEC_LOCK = THIS_FOLDER / "pubspec.lock.json"
GIT_HASHES = THIS_FOLDER / "gitHashes.json"


def fetch_git_hash(url: str, rev: str) -> str:
    result = subprocess.run(
        ["nix-prefetch-git", "--url", url, "--rev", rev],
        capture_output=True,
        text=True,
        check=True,
    )
    return json.loads(result.stdout)["hash"]


def main() -> None:
    if not PUBSPEC_LOCK.exists():
        sys.exit(1)
    try:
        data = json.loads(PUBSPEC_LOCK.read_text())
    except json.JSONDecodeError:
        sys.exit(1)
    output: dict[str, str] = {}
    for name, info in data.get("packages", {}).items():
        if info.get("source") != "git":
            continue
        desc = info.get("description")
        if not isinstance(desc, dict):
            continue
        url = desc.get("url")
        rev = desc.get("resolved-ref")
        if not (isinstance(url, str) and isinstance(rev, str)):
            continue
        try:
            package_hash = fetch_git_hash(url, rev)
        except subprocess.CalledProcessError:
            continue
        output[name] = package_hash
    GIT_HASHES.write_text(json.dumps(output, indent=2) + "\n")


if __name__ == "__main__":
    main()