berrybrew, the Perlbrew for Windows has been updated
berrybrew, the Perlbrew for Windows has been updated.
The significant new feature is the ability to automatically fetch the available Perl instances using Strawberry's new JSON releases file. This does not happen every time you use
available, as I didn't want to force a user to have to be connected to the Internet while using
berrybrew. Instead, I added a new
berrybrew fetch command that does the work.
Things to know:
- we now only list the most recent point version of each major release (this may change in the future)
- we list the 64bit, 32bit and the PDL version of each major release, where available (this may also change to include other versions, such as
- upon the first fetch, if any of the currently installed instances are lower than the most recent point release per version, we register them as
custominstalls. This allows them to continue to be maintained by
berrybrew, and don't fall off the map as orphaned instances
I have also introduced changes to
berrybrew upgrade. Previously, we'd make a backup of all JSON configuration files, then after the binary upgrade, we'd put those files back into the
data/ production directory. Now, we still back up all of the configs, but the only one restored is the
perls_custom.json file. If any custom modifications were made to any of the other config files, they will have to be manually merged back into the equivalent file in the
data/ directory from the backups. That said, it is my understanding that very few people modify the configs anyway, so this shouldn't concern many.
To install without already having
berrybrew installed, either
git clone https://github.com/stevieb9/berrybrew or download the pre-built zip archive, and unzip it to anywhere other than
- close cmd window, open new one
berrybrew install ...
- close cmd, open new one
- and you're good to go
Note that because I maintain David Farrell's original repository of the project that mine was based off of, it has been updated as well.
Here's the process to do an upgrade from a previous version. First show the list that appears within the current version:
> berrybrew available The following Strawberry Perls are available: 5.24.1_64 [installed] * 5.24.1_32 5.24.0_64 [installed] 5.24.0_64_PDL 5.24.0_32 5.22.3_64 5.22.3_32 5.22.2_64 5.22.2_64_PDL 5.22.2_32 5.22.1_64 [installed] 5.22.1_32 5.20.3_64 5.20.3_64_PDL 5.20.3_32 5.20.3_32_PDL 5.18.4_64 5.18.4_32 5.16.3_64 5.16.3_32 5.14.4_64 5.14.4_32 5.12.3_32 5.10.1_32 * Currently using
> cd berrybrew_repo
git pull, or extract out the zip file over the existing installation. The older version of
upgrade will trample on the new configuration file, so if you use
berrybrew upgrade, download the config.json file from the repository, and place it into your
berrybrew available will show if you have orphans that aren't listed in the new available file:
WARNING! orphaned perl installations: 5.22.1_64 5.24.0_64
Run the fetch, and your previous installs that don't line up with the current Perls are registered for use with
> berrybrew fetch > berrybrew available The following Strawberry Perls are available: 5.24.1_64 [installed] * 5.24.1_64_PDL 5.24.1_32 5.22.3_64 5.22.3_64_PDL 5.22.3_32 5.20.3_64 5.20.3_64_PDL 5.20.3_32 5.18.4_64 5.18.4_32 5.16.3_64 5.16.3_32 5.14.4_64 5.14.4_32 5.12.3_32 5.10.1_32 5.8.9_32 5.22.1_64 [custom] [installed] 5.24.0_64 [custom] [installed] * Currently using
You can now...
berrybrew switch $version
... to them, and continue using them as normal.