Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release naming format for Scoop #645

Open
AdamBuchweitz opened this issue Aug 5, 2024 · 7 comments
Open

Release naming format for Scoop #645

AdamBuchweitz opened this issue Aug 5, 2024 · 7 comments

Comments

@AdamBuchweitz
Copy link

I was going to submit a PR to Scoop with the 3.1.0 update, but the autoupdater failed because the format of the name has changed. The autoupdate entry of the Scoop manifest is:

"v$version/GlazeWM_x64_$version.exe"

So the release needs to be changed from "v3.1.0/glazewm-3.1.0.exe" to "v3.1.0/GlazeWM_x64_3.1.0.exe" and "v3.1.0/GlazeWM_x86_3.1.0.exe"

Here is the output from Scoop autoupdater:

glazewm: 3.1.0 (scoop version is 2.1.1) autoupdate available
Autoupdating glazewm
Downloading GlazeWM_x86_3.1.0.exe to compute hashes!
The request was aborted: The connection was closed unexpectedly.
URL https://github.com/glzr-io/glazewm/releases/download/v3.1.0/GlazeWM_x86_3.1.0.exe#/GlazeWM.exe is not valid
ERROR Could not update glazewm, hash for GlazeWM_x86_3.1.0.exe failed!
@lars-berger
Copy link
Member

I haven't looked much into this yet, but we now install to the C:\Program Files directory which may cause issues with Scoop. Opened an issue in the Scoop repo for this a while back here.

If it would help, I can fix up the release asset naming and add standalone MSI's for x64 and arm64 (i.e. installers for only GlazeWM without the option to also install Zebar).

@theBNT
Copy link

theBNT commented Nov 19, 2024

should the mentioned issue then also remove the need to install as administrator as mentioned here ScoopInstaller/Extras#14401 (comment)

I assume if a different destination is chosen by scoop, the requirement to be administrator is removed?

EDIT: ok after investigating some more, i think the current glazewm release can not be installed via scoop, since it cant overwrite the destination of the installation in the WiX setup

<Directory Id="INSTALLFOLDER" Name="GlazeWM">
INSTALLFOLDER. Its a pity, i think scoop support would be quite helpful for a lot of people working without local admin rights.

My current workaround is:

  • install the 2.1.1 version of glazewm via scoop install glazewm
  • extract the glazewm.exe from the standalone MSI via e.g. lessmsi
  • replace the binary in the scoop installation folder (e.g. %userprofile%\scoop\apps\glazewm\2.1.1)
  • copy over the config from %userprofile%\.glaze-wm\config.yaml to the "new" location %userprofile%\.glzr\glazewm\config.yaml
  • manually install zebar dependency via scoop install zebar
  • start glazewm

@LeoAdL
Copy link

LeoAdL commented Nov 20, 2024

I have managed to install the latest glazewm with Scoop without admin rights with the following modified glazewm.json to use the standalone msi:

{

    "version": "3.6.0",

    "description": "A tiling window manager for Windows inspired by i3 and Polybar.",

    "homepage": "https://github.com/glzr-io/glazewm",

    "license": "GPL-3.0-only",

    "architecture": {

        "64bit": {

            "url": "https://github.com/glzr-io/glazewm/releases/download/v3.6.0/standalone-glazewm-v3.6.0-x64.msi",

            "hash":"762a0ef381ddba009d14061775719a76c692cba3f697cc0a68403a6df849139c"

    }

        },

    "bin": "GlazeWM.exe",

    "shortcuts": [

        [

            "GlazeWM.exe",

            "GlazeWM"

        ]

    ],

    "checkver": "github",

    "autoupdate": {

        "architecture": {

            "64bit": {

                "url": "https://github.com/glzr-io/glazewm/releases/download/v$version/glazewm-v$version.exe#/glazewm-v$version.exe"

            }

        }

    }

}

Thank you for all the great work!

@dillacorn
Copy link

dillacorn commented Nov 20, 2024

@LeoAdL do future versions need to point to glazewm-v$version-x64.msi instead of glazewm-v$version.exe ?

I suppose someone could test this with previous version 3.5.0 to 3.6.0

If this is working.. (haven't tried it yet) ~ I'm eager to get this .json implemented.

@LeoAdL
Copy link

LeoAdL commented Nov 20, 2024

@dillacorn you are absolutely right, I have taken inspiration from the zebar.json manifest to update my snippet (the only incorrect piece should be the hash for the arm release). It now runs without any errors!

{
    "version": "3.6.0",
    "description": "A tiling window manager for Windows inspired by i3 and Polybar.",
    "homepage": "https://github.com/glzr-io/glazewm",
    "license": "GPL-3.0-only",
    "architecture": {
        "64bit": {
            "url": "https://github.com/glzr-io/glazewm/releases/download/v3.6.0/standalone-glazewm-v3.6.0-x64.msi",
            "hash":"762a0ef381ddba009d14061775719a76c692cba3f697cc0a68403a6df849139c"
    },
    "arm64": {
            "url": "https://github.com/glzr-io/glazewm/releases/download/v3.6.0/standalone-glazewm-v3.6.0-arm64.msi",
            "hash":"762a0ef381ddba009d14061775719a76c692cba3f697cc0a68403a6df849139c"
    }
        },
    "extract_dir": "PFiles64\\glzr.io\\GlazeWM",
    "bin": "glazewm.exe",
    "shortcuts": [
        [
            "glazewm.exe",
            "glazewm"
        ]
    ],
    "checkver": "github",
    "autoupdate": {
        "architecture": {
            "64bit": {
                "url": "https://github.com/glzr-io/glazewm/releases/download/v$version/standalone-glazewm-v$version-x64.msi"
            }
        }
    }
}

@dillacorn
Copy link

dillacorn commented Nov 20, 2024

I've extracted the hash and included it for standalone-glazewm-v3.6.0-arm64.msi

Thank you @LeoAdL

{
    "version": "3.6.0",
    "description": "A tiling window manager for Windows inspired by i3 and Polybar.",
    "homepage": "https://github.com/glzr-io/glazewm",
    "license": "GPL-3.0-only",
    "architecture": {
        "64bit": {
            "url": "https://github.com/glzr-io/glazewm/releases/download/v3.6.0/standalone-glazewm-v3.6.0-x64.msi",
            "hash": "762a0ef381ddba009d14061775719a76c692cba3f697cc0a68403a6df849139c"
        },
        "arm64": {
            "url": "https://github.com/glzr-io/glazewm/releases/download/v3.6.0/standalone-glazewm-v3.6.0-arm64.msi",
            "hash": "159C9D0F23A667CF0BB47A5BB86673347304A2C3053A9DA29C3C5698C9D3702B"
        }
    },
    "extract_dir": "PFiles64\\glzr.io\\GlazeWM",
    "bin": "glazewm.exe",
    "shortcuts": [
        [
            "glazewm.exe",
            "glazewm"
        ]
    ],
    "checkver": "github",
    "autoupdate": {
        "architecture": {
            "64bit": {
                "url": "https://github.com/glzr-io/glazewm/releases/download/v$version/standalone-glazewm-v$version-x64.msi"
            },
            "arm64": {
                "url": "https://github.com/glzr-io/glazewm/releases/download/v$version/standalone-glazewm-v$version-arm64.msi"
            }
        }
    }
}

@dillacorn
Copy link

dillacorn commented Dec 3, 2024

With how simple this is to do and how dedicated I am to this piece of software I may as well be the one to update and maintain this bucket... Instead of having an update check in the bucket I could just verify the official hash and update the bucket till I'm dead..

or someone else could maintain it...

all I'm doing to verify hash is with powershell.

Get-FileHash -Path "C:\Users\username\Downloads\standalone-glazewm-v3.7.0-x64.msi" -Algorithm SHA256
{
    "version": "3.7.0",
    "description": "A tiling window manager for Windows inspired by i3 and Polybar.",
    "homepage": "https://github.com/glzr-io/glazewm",
    "license": "GPL-3.0-only",
    "architecture": {
        "64bit": {
            "url": "https://github.com/glzr-io/glazewm/releases/download/v3.7.0/standalone-glazewm-v3.7.0-x64.msi",
            "hash": "733C09B3D19BF68FD5A522EE8F068F48CADE8EC7422A4AA8A0D18B2BEEBE3494"
        },
        "arm64": {
            "url": "https://github.com/glzr-io/glazewm/releases/download/v3.7.0/standalone-glazewm-v3.7.0-arm64.msi",
            "hash": "C1C91D4E29863A9454C336101D57042A97613138F6403B1F718D018AD52BF517"
        }
    },
    "extract_dir": "PFiles64\\glzr.io\\GlazeWM",
    "bin": "GlazeWM.exe",
    "shortcuts": [
        [
            "GlazeWM.exe",
            "GlazeWM"
        ]
    ],
    "checkver": "github",
    "autoupdate": {
        "architecture": {
            "64bit": {
                "url": "https://github.com/glzr-io/glazewm/releases/download/v$version/standalone-glazewm-v$version-x64.msi"
            },
            "arm64": {
                "url": "https://github.com/glzr-io/glazewm/releases/download/v$version/standalone-glazewm-v$version-arm64.msi"
            }
        }
    }
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants