-
-
Notifications
You must be signed in to change notification settings - Fork 14.7k
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
Create vcpkg builder #330859
Comments
Originally posted by @h7x4 in #329939 (comment) |
Originally posted by @gracicot in #329939 (comment) |
I think the most viable way for now would be the rely on Fixed Output Derivation |
I have been experimenting with this for a little while now. Based on what I found, I think I would categorize the different builds into these 3 groups, ordered by difficulty.
This is relatively straight forward. Using the already packages
Not as straight forward. You will need the Another thing to note is that you will need to bring the modified vcpkg instance with you to the build derivation or at least be able to check out the baseline in the offline sandbox. If the baseline is incorrect during buildtime, As a side note, I have gotten a classic project with baseline to build by overriding the nixpkgs-package's revision + hash, and and patching the project source to remove the baseline. This effectively transforms it into a classic mode project without a baseline.
These are projects which pull resources for There are also things like external registries with toolchain files that needs patching, but most of that can probably be handled on a case by case basis for now. There also something inbetween here, where you can add a single vcpkg overlay to a classic project, mimicking the behaviour of a manifest project with a single external registry. Not entirely sure how to fit that puzzle piece into the picture, but you can at least download its correct revision as a FOD and point to it with the environment variable |
vcpkg is a C++ package manager. We recently created a Nix package for it, but it can only be used in Nix shells and not for packages.
There were some discussions recently about creating a builder. Let's centralize the information here
The text was updated successfully, but these errors were encountered: