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

Update the Package Internalizer page #1095

Open
wants to merge 3 commits into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions src/content/docs/en-us/features/package-internalizer.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import Xref from '@components/Xref.astro';

Automatically Internalize/Recompile Existing Packages (Business and MSP Editions Only)

There are thousands of existing packages on the <Xref title="community repository](https://community.chocolatey.org/packages) that are a tremendous resource when it comes to creating packages that have software that can sometimes be tricky! Unfortunately you may be wary of using those packages without changes because many of those packages are subject to distribution rights and thus have an internet dependency (which creates both [trust and control issues" value="community-packages-disclaimer" />). There is a process for downloading and internalizing packages to use internal or embedded locations for that software that is called **internalizing** (also known as recompiling).
There are thousands of existing packages on the [Chocolatey Community Repository](https://community.chocolatey.org/packages) that are a tremendous resource when it comes to creating packages that have software that can sometimes be tricky! Unfortunately you may be wary of using those packages without changes because many of those packages are subject to distribution rights and thus have an internet dependency (which creates both <Xref title="trust and control issues" value="community-packages-disclaimer" />). There is a process for downloading and internalizing packages to use internal or embedded locations for that software that is called **internalizing** (also known as recompiling).

Chocolatey for Business is able to automatically download packages and resources, edit the scripts, and recompile packages to internalize and remove internet dependencies from those packages, saving you hours of time in <Xref title="manually internalizing/recompiling packages" value="recompile-packages" />!

Expand Down Expand Up @@ -40,7 +40,7 @@ This image shows running `choco download --recompile git.install`.
![automatic recompile](/images/gifs/choco_business_features_recompile.gif)

<Callout type="info">
To see all feature videos for Chocolatey for Business, please visit https://chocolatey.org/resources/features#c4b.
See all the [feature videos for Chocolatey for Business](https://chocolatey.org/resources/features#c4b).
</Callout>

## Options and Switches
Expand Down Expand Up @@ -115,10 +115,10 @@ Some packages are already internalized or don't have remote resources. In those

### It was not able to download a resource. Why not?

This feature is in preview, but is able to download/recompile quite a few packages. There are a few that it may have issues with, especially if variables with methods are used (e.g. `$(somevar).Replace(".","")`). In those cases it attempts to warn you ahead of time that it cannot handle those yet.
This feature is able to download/recompile quite a few packages. There are a few that it may have issues with, especially if variables with methods are used (e.g. `$(somevar).Replace(".","")`). In those cases it attempts to warn you ahead of time that it cannot handle those yet.

Future versions of the licensed edition will support advanced scenarios such as these.

### Are all packages guaranteed to be compatible?

Unfortunately not all packages on the community repository are created equal, even with the rigorous moderation process. A few packages do not use the built-in functions for acquiring files from the internet, so they don't lend well to automatic recompiling. Typically Chocolatey will let you know when this is the case and allow you to inspect the package to allow you to finish up the next steps of recompiling. As a future enhancement, it's possible this scenario would also be supported, although it is a very small subset of packages that are created in this way.
Unfortunately not all packages on the Chocolatey Community Repository are created equal, even with the rigorous moderation process. A few packages do not use the built-in functions for acquiring files from the internet, so they don't lend well to automatic recompiling. Typically Chocolatey will let you know when this is the case and allow you to inspect the package to allow you to finish up the next steps of recompiling. As a future enhancement, it's possible this scenario would also be supported, although it is a very small subset of packages that are created in this way.