NixOS / nixpkgs

Nix Packages collection & NixOS
MIT License
17.63k stars 13.79k forks source link

glamoroustoolkit: binaries do not work OOTB exact program not version locked (will DL lastest) #316017

Open bew opened 4 months ago

bew commented 4 months ago

Describe the bug

App does not open properly

Steps To Reproduce

Steps to reproduce the behavior:

  1. Have pkgs.glamoroustoolkit in $PATH (install / shell ..)
  2. Run GlamorousToolkit

It opens a gtk file open dialog looking for a .image file, instead of opening the app.

As mentioned in #235084 a PharoVM (or GTVM?) image is necessary, but it should really be provided in the package?

Expected behavior

Open the GT app!

Notify maintainers

@akgrant43

Metadata

Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.

[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 6.6.18, NixOS, 23.11 (Tapir), 23.11.20240223.c5101e4`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.17.1`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

Add a :+1: reaction to issues you find important.

bew commented 4 months ago

Digging into the package there is a script called GlamorousToolkit-GetImage with comment saying it should be run in an empty folder, so it can download the latest version of the [gtoolkit]() repo. Then re-running GlamorousToolkit in that folder will work and open the app..

So basically what is in nixpkgs is a launcher, and there is zero version lock on the version of the toolkit (unlike all other Nix packages 👀).

In review of the original PR adding this pkg (#235084) there is the mention that the VM (what is in nixpkgs) isn't updated often, but the toolkit itself is updated multiple times a day. 👉 Do they not have some kind of periodic stable releases?

To match the rest of Nixpkgs, the glamoroustoolkit package should really package a single version, not only the VM and a script to get the latest version.. And if the real issue for Nix packages is that it's updated too often, maybe block automatic update via bot or schedule updates less often? 🤔

Also I think the current glamoroustoolkit package should be renamed glamoroustoolkit-vm (or gtoolkit-vm) then we can make a new package glamoroustoolkit (or gtoolkit?) for the app itself 🤔

cc @AndersonTorres as you reviewed & merged the original PR


This could potentially allow in the future the ability to package with Nix whole custom tools built using GT, use them with confidence in CI, ...

qbit commented 3 months ago

The actual images can't be in the nix store since changes won't be able to be written back to the image in the store.

bew commented 3 months ago

What changes are you talking about? If I want to update I can update via Nix. Or is the image self-updating at other times?

qbit commented 3 months ago

What changes are you talking about? If I want to update I can update via Nix. Or is the image self-updating at other times?

When you open an image with glamoroustoolkit, the image is modified and you save the state back to the image file itself (this is how smalltalk based stuff works) that means you can't have the image inside nix store.