Respectable Activestate community I have a problem: I am trying to download the executable of Active state perl but it is impossible. Is there another site or another way that can help me to download the executable of the last version of perl?
Thanking those who want to answer to my question, I salute all the community.
I’ll give you an informal answer (I don’t work for ActiveState), in the hope that it will help you understand how ActiveState differs from other Perl distributions, and prepare you for more precise answers that may come from other members of this community.
Like you, I was expecting to download an executable, add packages and be on my way. In fact, that’s what I did with ActivePerl 5.16 and 5.28 (and probably other versions before that). About a year ago, I needed to update to a more recent version and discovered what follows.
ActiveState no longer provides “packaged executables”; they provide a platform that you use to specify what you need (a project), and you get a runtime that is built by ActiveState’s servers. You then download this runtime on your computer. Quoting from the ActiveState site:
Each project contains a runtime, a ready-to-use language bundled with just the packages you need.
To create a runtime, you need to create an account for yourself on ActiveState, configure your project on the ActiveState site, download and install the state tool on your computer, and use this tool to download and install your runtime.
Early on, I struggled with this notion of runtime because of the possibility of having multiple runtimes concurrently, each with a different version of Perl or a different set of packages. I don’t need that, and in fact you cannot have more than one runtime unless you pay for a higher-level tier. What I need is one instance of Perl available to all users, in the same location. I came up with repeatable steps here: How do I get rid of extra runtimes?. As noted later in that thread, state auth is not required.
Yes, it is initially more complicated than downloading a Perl executable like we used to do. In return for this initial effort, you get easier updates (go to your ActiveState account, add or update packages, build and download) and easier support (the ActiveState staff can have a look at your project configuration). If this process doesn’t fit your needs, then you’ll have to look at other distributions or repositories, such as Strawberry Perl or Cygwin.
By the way, you didn’t provide much information in your request. What did you try and what happened? What operating system do you use? Why do you need this executable? Without this information, it’s harder to help you, and perhaps my answer above totally missed the mark.
Our platform is designed so that you create a project that contains the core language (perl) and packages (modules) that you select. This results in a smaller build which results in fewer vulnerabilities and reduces the number of packages you need to worry about keeping current.
If you are unsure what packages you may need you have a few options.
If you have a cpanfile or META.json requirements file for your project create a new project and then select the import option - link
Start with one of our Perl Projects that includes a language core and packages by forking it. Click here to go to our Fruity / Perl Popular Modules Project [ActiveState]. The modules in this project are just a mixed selection of popular packages, these packages are a similar set as contained in Strawberry Perl.
Start with an empty perl project and add modules one by one as your software indicates they are missing.
I just want an exe! How do I get one? / What happened to ActivePerl?
We used to offer a single download (exe) of the perl language core and a selection of popular modules.
This process was laborious process which caused this slow release cycle, and it was a one-size-fits all solution which did not offer customization if it was missing a package you needed. The large number of packages resulted in it containing vulnerable packages which a specific user might not even be utilizing.
We have since changed the way we work so that we build new binaries continuously?/daily and make these up to date binaries available to you in our catalog. You then use our CLI Package Manager State Tool (similar to the way you would use CPAN command-line tools) as you need them. This reduces the vulnerabilities you may have as there are fewer packages and it can be updated to current versions without needing to wait on a formal release.
If you require an offline installer (exe) for use in air gapped or restricted connectivity environments - you can talk to sales, or you could check out Strawberry Perl.
How is ActiveState different from strawberry perl?
ActiveState is a platform which enables you to customize a perl project to include only the modules you need, reducing the size of the project, resulting in less modules to keep up to date, and reducing the total number of potential vulnerabilities. We update the available packages in our platform for you to be able to use continuously. You are able to review the vulnerability information and license information for your project to make sure it complies with any policies you must adhere to. We can even offer indemnification and OEM licensing to some of our customers. We do not include compilers (like MinGW or GCC) by default, and only support them on a best effort basis, as we expect you will be selecting modules from our catalog which we have already compiled.
Strawberry Perl is a Perl distribution for Windows that includes a C compiler (like MinGW) along with many essential CPAN modules. “Strawberry Perl is a perl environment for MS Windows containing all you need to run and develop perl applications. It is designed to be as close as possible to perl environment on UNIX systems.” It is designed so that you can use CPAN clients directly. It updates infrequently, which may result in using out of date modules or vulnerable modules. Due to the all-in-one bundling you will get “all or nothing” for the packages they have selected. If you are coding in an environment that prohibits the use of one or more of the licenses, you are unable to exclude them from this pre-packaged selection. You will need to review all the modules licenses and remove any after download and before use with prohibited licenses, for example some of the modules have Oracle Berkeley DB Licensing Information which may not be permitted in some uses without payment.
If you don’t need to compile, but are used to strawberry perl you could fork this project [ActiveState] as a quick start, or read about how to discover which modules you need here [the shane link again]
If you do need to compile - you can get the specific compilers you need locally and use them in parallel to our tool, or go grab strawberry perl, Cygwin, Windows Subsystem for Linux (WSL), or Chocolatey.