I know sfdx-cli is not "officially" supported on WSL, but it works for my other teammates but not on my WSL. Every time I try to create a new scratch org on WSL, I receive this error:
=== Component Failures [1]
TYPE FILE NAME PROBLEM
───── ───────────────────────────────────── ─────────────────────────────── ─────────────────────────────────────────────
Error shape/settings/OrgPreference.settings settings/OrgPreference.settings Not available for deploy for this API version
Just run
sfdx force:org:create -f scratch-config.json -a myAlias
I tried turning on and off some features and it doesn't fix the issue.
I expect the scratch org to be created with the correct alias.
The scratch org is created, it expends the scratch org limits, but the scratch org has no alias set in my sfdx-cli. I also cannot run sfdx force:org:open on that scratch org. I can create a password and login but the features that I have setup in my config file are not enabled in the Scratch org.
_Feel free to attach a screenshot_.

SFDX CLI Version(to find the version of the CLI engine run sfdx --version):
sfdx-cli/7.58.2 linux-x64 node-v12.16.3
SFDX plugin Version(to find the version of the CLI plugin run sfdx plugins --core)
@oclif/plugin-autocomplete 0.2.0
@oclif/plugin-commands 1.2.3 (core)
@oclif/plugin-help 2.2.3 (core)
@oclif/plugin-not-found 1.2.4 (core)
@oclif/plugin-plugins 1.7.9 (core)
@oclif/plugin-update 1.3.10 (core)
@oclif/plugin-warn-if-update-available 1.7.0 (core)
@oclif/plugin-which 1.0.3 (core)
@salesforce/sfdx-diff 0.0.6
@salesforce/sfdx-trust 3.0.7 (core)
analytics 1.7.1 (core)
generator 1.1.2 (core)
salesforcedx 48.14.3 (core)
├─ @salesforce/sfdx-plugin-lwc-test 0.1.5 (core)
├─ salesforce-alm 48.15.0 (core)
└─ salesforcedx-templates 48.17.0 (core)
sfdx-cli 7.58.2 (core)
(I had the issue even before installing @oclif plugin)
OS and version:
WSL on Windows 10
@erocheleau there is one thing you could try. Find your os.tmpdir() (e.g. /tmp), delete the created shape folder and try again.
Wow I think it actually worked!
You are a genius!
Where is that coming from that /shape/ folder?
@erocheleau the shape folder and its content is created based on your scratch-config.json file. Each key in this file results in a corresponding settings file in that folder, then all settings are deployed to the scratch org.
As the OrgPreference settings are deprecated the settings were removed from the scratch-config.json file but due to a bug the shape folder is not cleaned or removed after executing force:org:create. So an old generated OrgPreference.settings file still existed in the shape folder on your machine.
So it is not a WSL related issue.
Haha very good to know, I actually did try to go into the metadata.json of the org I was trying to deploy to sometimes to try and remove some of the metadata that was blocking with sfdx. So I guess I wasn't crazy, just not looking in the right place!
Thanks again!
Most helpful comment
@erocheleau there is one thing you could try. Find your
os.tmpdir()(e.g./tmp), delete the createdshapefolder and try again.