python-poetry / poetry

Python packaging and dependency management made easy
https://python-poetry.org
MIT License
31.65k stars 2.27k forks source link

Windows install issues - Chocolatey #2314

Closed aaronsteers closed 2 years ago

aaronsteers commented 4 years ago

Feature Request

I want to use poetry in an python training. However, I am running into issues on Windows and I know many in my target audience are Windows users. As a user myself, when I went through the pip-based install instructions, I noticed that poetry wasn't properly added to my path. I also notice there's a brew recipe but no support yet for choco. By any chance, would it be possible to register the poetry app in the chocolatey.org package registry? Chocolatey ("choco" for short) is basically homebrew for Windows. Would be great if we could run choco install poetry to get the full and proper install.

Thanks!

aaronsteers commented 4 years ago

I have created a chocolatey package for poetry. Would appreciate your review: https://github.com/aaronsteers/choco-python-poetry

Once published to the chocolatey package directory, this enables Windows Chocolatey users to utilize the following:

choco install python-poetry
choco uninstall python-poetry

Sample install and uninstall output here:

c:\Files\Source\Choco-Python-Poetry>cpack && cinst python-poetry -source %cd% --pre -y
Chocolatey v0.10.15
Attempting to build package from 'python-poetry.nuspec'.
Successfully created package 'c:\Files\Source\Choco-Python-Poetry\python-poetry.0.0.2-beta.nupkg'
Chocolatey v0.10.15
Installing the following packages:
python-poetry
By installing you accept licenses for the packages.

python-poetry v0.0.2-beta
python-poetry package files install completed. Performing other installation steps.
0
Environment Vars (like PATH) have changed. Close/reopen your shell to
 see the changes (or in powershell/cmd.exe just type `refreshenv`).
 The install of python-poetry was successful.
  Software install location not explicitly set, could be in package or
  default install location if installer.

Chocolatey installed 1/1 packages.
 See the log for details (C:\ProgramData\chocolatey\logs\chocolatey.log).

c:\Files\Source\Choco-Python-Poetry>poetry
'poetry' is not recognized as an internal or external command,
operable program or batch file.

c:\Files\Source\Choco-Python-Poetry>refreshenv
Refreshing environment variables from registry for cmd.exe. Please wait...Finished..

c:\Files\Source\Choco-Python-Poetry>poetry
Poetry version 1.0.10

USAGE
  poetry [-h] [-q] [-v [<...>]] [-V] [--ansi] [--no-ansi] [-n] <command> [<arg1>] ... [<argN>]

ARGUMENTS
  <command>              The command to execute
  <arg>                  The arguments of the command

GLOBAL OPTIONS
  -h (--help)            Display this help message
  -q (--quiet)           Do not output any message
  -v (--verbose)         Increase the verbosity of messages: "-v" for normal output, "-vv" for more verbose output and
                         "-vvv" for debug
  -V (--version)         Display this application version
  --ansi                 Force ANSI output
  --no-ansi              Disable ANSI output
  -n (--no-interaction)  Do not ask any interactive question

AVAILABLE COMMANDS
  about                  Shows information about Poetry.
  add                    Adds a new dependency to pyproject.toml.
  build                  Builds a package, as a tarball and a wheel by default.
  cache                  Interact with Poetry's cache
  check                  Checks the validity of the pyproject.toml file.
  config                 Manages configuration settings.
  debug                  Debug various elements of Poetry.
  env                    Interact with Poetry's project environments.
  export                 Exports the lock file to alternative formats.
  help                   Display the manual of a command
  init                   Creates a basic pyproject.toml file in the current directory.
  install                Installs the project dependencies.
  lock                   Locks the project dependencies.
  new                    Creates a new Python project at <path>.
  publish                Publishes a package to a remote repository.
  remove                 Removes a package from the project dependencies.
  run                    Runs a command in the appropriate environment.
  search                 Searches for packages on remote repositories.
  self                   Interact with Poetry directly.
  shell                  Spawns a shell within the virtual environment.
  show                   Shows information about packages.
  update                 Update the dependencies as according to the pyproject.toml file.
  version                Shows the version of the project or bumps it when a valid bump rule is provided.

c:\Files\Source\Choco-Python-Poetry>where poetry
C:\Users\aaron.steers\.poetry\bin\poetry
C:\Users\aaron.steers\.poetry\bin\poetry.bat

c:\Files\Source\Choco-Python-Poetry>choco uninstall python-poetry
Chocolatey v0.10.15
Uninstalling the following packages:
python-poetry

python-poetry v0.0.2-beta
The package python-poetry wants to run 'chocolateyuninstall.ps1'.
Note: If you don't run this script, the installation will fail.
Note: To confirm automatically next time, use '-y' or consider:
choco feature enable -n allowGlobalConfirmation
Do you want to run the script?([Y]es/[A]ll - yes to all/[N]o/[P]rint): a

0
 Skipping auto uninstaller - No registry snapshot.
 python-poetry has been successfully uninstalled.
Environment Vars (like PATH) have changed. Close/reopen your shell to
 see the changes (or in powershell/cmd.exe just type `refreshenv`).

Chocolatey uninstalled 1/1 packages.
 See the log for details (C:\ProgramData\chocolatey\logs\chocolatey.log).

c:\Files\Source\Choco-Python-Poetry>where poetry
INFO: Could not find files for the given pattern(s).

c:\Files\Source\Choco-Python-Poetry>
Secrus commented 2 years ago

Poetry will not provide other means of installation except for those already documented (install script, pipx, pip).

github-actions[bot] commented 8 months ago

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.