Share your thoughts in the 2024 State of Clojure Survey!

Welcome! Please see the About page for a little more info on how this works.

0 votes
in Clojure CLI by
retagged by

Hi,

I would like to to suggest for consideration the deployment of the
ClojureTools PowerShell module to the PowerShell Gallery. This has has
the potential to greatly exemplify installation for everyone and is a
just a simple extension to the existing build without need for a third
party package manager.

Microsoft maintains a public repository for PS modules called the PowerShell
Gallery that authors can use to deploy modules at.

https://learn.microsoft.com/en-gb/powershell/scripting/gallery/getting-started?view=powershell-5.1
https://www.powershellgallery.com/

Once a module is uploaded, any user can search for it in the gallery
and install it locally on their PC.

Below is an example how an MS-Windows user can search for a module,
install, upgrade and uninstall it, all without requiring any
additional software on their PCs other than the default PowerShell
tool that comes pre-installed with MS-Windows.

The module used for the example is
https://github.com/pcgeek86/PSGitHub, which also illustrates the
simplicity of which a module can be deployed to the Gallery with the
following appveyor job:
https://github.com/pcgeek86/PSGitHub/blob/master/appveyor.yml

I think the ClojureTools module is already packaged in the right way
to be deployed to the Gallery. What is needed in addition is a MS email
account to enable this.

Let me know what you think, I'm happy to assist with anything if you
find the suggestion worthwhile.

 Windows PowerShell
 Copyright (C) Microsoft Corporation. All rights reserved.
  PS C:\Users\ikappaki> $PSVersionTable
  ----                           -----
  PSVersion                      5.1.19041.1682
  PSEdition                      Desktop
  PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
  BuildVersion                   10.0.19041.1682
  CLRVersion                     4.0.30319.42000
  WSManStackVersion              3.0
  PSRemotingProtocolVersion      2.3
  SerializationVersion           1.1.0.1

  #- The default package repository
  #
  PS C:\Users\ikappaki> Get-PSRepository

  Name                      InstallationPolicy   SourceLocation
  ----                      ------------------   --------------
  PSGallery                 Untrusted            https://www.powershellgallery.com/api/v2

  #- List installed modules
  #
  PS C:\Users\ikappaki> Get-InstalledModule

  #- Find module
  #
  PS C:\Users\ikappaki> Find-Module PSGitHub

  Version    Name                                Repository           Description
  -------    ----                                ----------           -----------
  0.15.240   PSGitHub                            PSGallery            This PowerShell module enables integration with ...


  #- Insall earlier version of the module
  # 
  PS C:\Users\ikappaki> Install-Module -Name PSGitHub -RequiredVersion 0.15.239 -Scope CurrentUser

  Untrusted repository
  You are installing the modules from an untrusted repository. If you trust this repository, change its
  InstallationPolicy value by running the Set-PSRepository cmdlet. Are you sure you want to install the modules from
  'PSGallery'?
  [Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is "N"): y

  #- List installed modules
  #
  PS C:\Users\ikappaki> Get-InstalledModule

  Version    Name                                Repository           Description
  -------    ----                                ----------           -----------
  0.15.239   PSGitHub                            PSGallery            This PowerShell module enables integration with GitHub.

  #- Update to latest version
  #
  PS C:\Users\ikappaki> Update-Module PSGitHub

  Untrusted repository
  You are installing the modules from an untrusted repository. If you trust this repository, change its InstallationPolicy value by running the Set-PSRepository cmdlet. Are you sure you want to install the modules from
  'PSGallery'?
  [Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is "N"): Y

  #- List insalled modules
  #
  PS C:\Users\ikappaki> Get-InstalledModule

  Version    Name                                Repository           Description
  -------    ----                                ----------           -----------
  0.15.240   PSGitHub                            PSGallery            This PowerShell module enables integration with GitHub.


  # Uninstall module
  PS C:\Users\ikappaki> Uninstall-Module PSGitHub

  #- List installed modules
  #
  PS C:\Users\ikappaki> Get-InstalledModule

  Version    Name                                Repository           Description
  -------    ----                                ----------           -----------
  0.15.239   PSGitHub                            PSGallery            This PowerShell module enables integration with GitHub.


  #- Uninstall older version
  #-
  PS C:\Users\ikappaki> Uninstall-Module PSGitHub

  #- List installed modules
  PS C:\Users\ikappaki> Get-InstalledModule
  PS C:\Users\ikappaki>

Thanks

Please log in or register to answer this question.

...