├── ARM64 └── installtargzgoeshere ├── x64 └── installtargzgoeshere ├── PengwinEnterpriseUI ├── pch.cpp ├── App.idl ├── Assets │ ├── StoreLogo.png │ ├── SplashScreen.scale-200.png │ ├── LockScreenLogo.scale-200.png │ ├── Square150x150Logo.scale-200.png │ ├── Square44x44Logo.scale-200.png │ ├── Wide310x150Logo.scale-200.png │ └── Square44x44Logo.targetsize-24_altform-unplated.png ├── MainPage.idl ├── App.xaml ├── packages.config ├── pch.h ├── MainPage.h ├── MainPage.xaml ├── PropertySheet.props ├── App.h ├── MainPage.cpp ├── readme.txt ├── Package.appxmanifest ├── PengwinEnterpriseUI.vcxproj.filters └── App.cpp ├── linux_files ├── DB_CONFIG ├── wsl.conf ├── local.conf ├── upgrade.sh └── 00-wle.sh ├── LauncherShared ├── messages.rc ├── images │ └── icon.ico ├── targetver.h ├── stdafx.cpp ├── resource.h ├── Helpers.h ├── stdafx.h ├── DistributionInfo.h ├── DistroLauncher.rc ├── WslApiLoader.h ├── LauncherShared.vcxitems.filters ├── Helpers.cpp ├── WslApiLoader.cpp ├── messages.mc ├── LauncherShared.vcxitems └── messages.h ├── PengwinEnterprise ├── Assets │ ├── background.png │ ├── pengwinenterprise.png │ └── pengwinenterprise.theme-dark.png ├── Images │ ├── StoreLogo.backup.png │ ├── LargeTile.scale-100.png │ ├── LargeTile.scale-125.png │ ├── LargeTile.scale-150.png │ ├── LargeTile.scale-200.png │ ├── LargeTile.scale-400.png │ ├── SmallTile.scale-100.png │ ├── SmallTile.scale-125.png │ ├── SmallTile.scale-150.png │ ├── SmallTile.scale-200.png │ ├── SmallTile.scale-400.png │ ├── StoreLogo.scale-100.png │ ├── StoreLogo.scale-125.png │ ├── StoreLogo.scale-150.png │ ├── StoreLogo.scale-200.png │ ├── StoreLogo.scale-400.png │ ├── LockScreenLogo.scale-200.png │ ├── SplashScreen.scale-100.png │ ├── SplashScreen.scale-125.png │ ├── SplashScreen.scale-150.png │ ├── SplashScreen.scale-200.png │ ├── SplashScreen.scale-400.png │ ├── Square44x44Logo.scale-100.png │ ├── Square44x44Logo.scale-125.png │ ├── Square44x44Logo.scale-150.png │ ├── Square44x44Logo.scale-200.png │ ├── Square44x44Logo.scale-400.png │ ├── Wide310x150Logo.scale-100.png │ ├── Wide310x150Logo.scale-125.png │ ├── Wide310x150Logo.scale-150.png │ ├── Wide310x150Logo.scale-200.png │ ├── Wide310x150Logo.scale-400.png │ ├── Square150x150Logo.scale-100.png │ ├── Square150x150Logo.scale-125.png │ ├── Square150x150Logo.scale-150.png │ ├── Square150x150Logo.scale-200.png │ ├── Square150x150Logo.scale-400.png │ ├── Square44x44Logo.targetsize-16.png │ ├── Square44x44Logo.targetsize-24.png │ ├── Square44x44Logo.targetsize-32.png │ ├── Square44x44Logo.targetsize-48.png │ ├── Square44x44Logo.targetsize-256.png │ ├── Square44x44Logo.altform-unplated_targetsize-16.png │ ├── Square44x44Logo.altform-unplated_targetsize-32.png │ ├── Square44x44Logo.altform-unplated_targetsize-48.png │ ├── Square44x44Logo.targetsize-24_altform-unplated.png │ ├── Square44x44Logo.altform-unplated_targetsize-256.png │ ├── Square44x44Logo.altform-lightunplated_targetsize-16.png │ ├── Square44x44Logo.altform-lightunplated_targetsize-24.png │ ├── Square44x44Logo.altform-lightunplated_targetsize-32.png │ ├── Square44x44Logo.altform-lightunplated_targetsize-48.png │ └── Square44x44Logo.altform-lightunplated_targetsize-256.png └── Public │ └── Fragments │ └── PengwinEnterprise7.json ├── PengwinEnterprise8 ├── Assets │ ├── background.png │ ├── pengwinenterprise.png │ └── pengwinenterprise.theme-dark.png ├── Images │ ├── LargeTile.scale-100.png │ ├── LargeTile.scale-125.png │ ├── LargeTile.scale-150.png │ ├── LargeTile.scale-200.png │ ├── LargeTile.scale-400.png │ ├── SmallTile.scale-100.png │ ├── SmallTile.scale-125.png │ ├── SmallTile.scale-150.png │ ├── SmallTile.scale-200.png │ ├── SmallTile.scale-400.png │ ├── StoreLogo.scale-100.png │ ├── StoreLogo.scale-125.png │ ├── StoreLogo.scale-150.png │ ├── StoreLogo.scale-200.png │ ├── StoreLogo.scale-400.png │ ├── SplashScreen.scale-100.png │ ├── SplashScreen.scale-125.png │ ├── SplashScreen.scale-150.png │ ├── SplashScreen.scale-200.png │ ├── SplashScreen.scale-400.png │ ├── Square44x44Logo.scale-100.png │ ├── Square44x44Logo.scale-125.png │ ├── Square44x44Logo.scale-150.png │ ├── Square44x44Logo.scale-200.png │ ├── Square44x44Logo.scale-400.png │ ├── Wide310x150Logo.scale-100.png │ ├── Wide310x150Logo.scale-125.png │ ├── Wide310x150Logo.scale-150.png │ ├── Wide310x150Logo.scale-200.png │ ├── Wide310x150Logo.scale-400.png │ ├── Square150x150Logo.scale-100.png │ ├── Square150x150Logo.scale-125.png │ ├── Square150x150Logo.scale-150.png │ ├── Square150x150Logo.scale-200.png │ ├── Square150x150Logo.scale-400.png │ ├── Square44x44Logo.targetsize-16.png │ ├── Square44x44Logo.targetsize-24.png │ ├── Square44x44Logo.targetsize-256.png │ ├── Square44x44Logo.targetsize-32.png │ ├── Square44x44Logo.targetsize-48.png │ ├── Square44x44Logo.altform-unplated_targetsize-16.png │ ├── Square44x44Logo.altform-unplated_targetsize-24.png │ ├── Square44x44Logo.altform-unplated_targetsize-256.png │ ├── Square44x44Logo.altform-unplated_targetsize-32.png │ ├── Square44x44Logo.altform-unplated_targetsize-48.png │ ├── Square44x44Logo.altform-lightunplated_targetsize-16.png │ ├── Square44x44Logo.altform-lightunplated_targetsize-24.png │ ├── Square44x44Logo.altform-lightunplated_targetsize-256.png │ ├── Square44x44Logo.altform-lightunplated_targetsize-32.png │ └── Square44x44Logo.altform-lightunplated_targetsize-48.png └── Public │ └── Fragments │ └── PengwinEnterprise8.json ├── PengwinEnterprise9 ├── Assets │ ├── background.png │ ├── pengwinenterprise.png │ └── pengwinenterprise.theme-dark.png ├── Images │ ├── StoreLogo.backup.png │ ├── LargeTile.scale-100.png │ ├── LargeTile.scale-125.png │ ├── LargeTile.scale-150.png │ ├── LargeTile.scale-200.png │ ├── LargeTile.scale-400.png │ ├── SmallTile.scale-100.png │ ├── SmallTile.scale-125.png │ ├── SmallTile.scale-150.png │ ├── SmallTile.scale-200.png │ ├── SmallTile.scale-400.png │ ├── StoreLogo.scale-100.png │ ├── StoreLogo.scale-125.png │ ├── StoreLogo.scale-150.png │ ├── StoreLogo.scale-200.png │ ├── StoreLogo.scale-400.png │ ├── SplashScreen.scale-100.png │ ├── SplashScreen.scale-125.png │ ├── SplashScreen.scale-150.png │ ├── SplashScreen.scale-200.png │ ├── SplashScreen.scale-400.png │ ├── LockScreenLogo.scale-200.png │ ├── Square44x44Logo.scale-100.png │ ├── Square44x44Logo.scale-125.png │ ├── Square44x44Logo.scale-150.png │ ├── Square44x44Logo.scale-200.png │ ├── Square44x44Logo.scale-400.png │ ├── Wide310x150Logo.scale-100.png │ ├── Wide310x150Logo.scale-125.png │ ├── Wide310x150Logo.scale-150.png │ ├── Wide310x150Logo.scale-200.png │ ├── Wide310x150Logo.scale-400.png │ ├── Square150x150Logo.scale-100.png │ ├── Square150x150Logo.scale-125.png │ ├── Square150x150Logo.scale-150.png │ ├── Square150x150Logo.scale-200.png │ ├── Square150x150Logo.scale-400.png │ ├── Square44x44Logo.targetsize-16.png │ ├── Square44x44Logo.targetsize-24.png │ ├── Square44x44Logo.targetsize-256.png │ ├── Square44x44Logo.targetsize-32.png │ ├── Square44x44Logo.targetsize-48.png │ ├── Square44x44Logo.altform-unplated_targetsize-16.png │ ├── Square44x44Logo.altform-unplated_targetsize-24.png │ ├── Square44x44Logo.altform-unplated_targetsize-256.png │ ├── Square44x44Logo.altform-unplated_targetsize-32.png │ ├── Square44x44Logo.altform-unplated_targetsize-48.png │ ├── Square44x44Logo.altform-lightunplated_targetsize-16.png │ ├── Square44x44Logo.altform-lightunplated_targetsize-24.png │ ├── Square44x44Logo.altform-lightunplated_targetsize-256.png │ ├── Square44x44Logo.altform-lightunplated_targetsize-32.png │ └── Square44x44Logo.altform-lightunplated_targetsize-48.png └── Public │ └── Fragments │ └── PengwinEnterprise9.json ├── PengwinEnterprise10 ├── Assets │ ├── background.png │ ├── pengwinenterprise.png │ └── pengwinenterprise.theme-dark.png ├── Images │ ├── StoreLogo.backup.png │ ├── LargeTile.scale-100.png │ ├── LargeTile.scale-125.png │ ├── LargeTile.scale-150.png │ ├── LargeTile.scale-200.png │ ├── LargeTile.scale-400.png │ ├── SmallTile.scale-100.png │ ├── SmallTile.scale-125.png │ ├── SmallTile.scale-150.png │ ├── SmallTile.scale-200.png │ ├── SmallTile.scale-400.png │ ├── StoreLogo.scale-100.png │ ├── StoreLogo.scale-125.png │ ├── StoreLogo.scale-150.png │ ├── StoreLogo.scale-200.png │ ├── StoreLogo.scale-400.png │ ├── SplashScreen.scale-100.png │ ├── SplashScreen.scale-125.png │ ├── SplashScreen.scale-150.png │ ├── SplashScreen.scale-200.png │ ├── SplashScreen.scale-400.png │ ├── LockScreenLogo.scale-200.png │ ├── Square150x150Logo.scale-100.png │ ├── Square150x150Logo.scale-125.png │ ├── Square150x150Logo.scale-150.png │ ├── Square150x150Logo.scale-200.png │ ├── Square150x150Logo.scale-400.png │ ├── Square44x44Logo.scale-100.png │ ├── Square44x44Logo.scale-125.png │ ├── Square44x44Logo.scale-150.png │ ├── Square44x44Logo.scale-200.png │ ├── Square44x44Logo.scale-400.png │ ├── Wide310x150Logo.scale-100.png │ ├── Wide310x150Logo.scale-125.png │ ├── Wide310x150Logo.scale-150.png │ ├── Wide310x150Logo.scale-200.png │ ├── Wide310x150Logo.scale-400.png │ ├── Square44x44Logo.targetsize-16.png │ ├── Square44x44Logo.targetsize-24.png │ ├── Square44x44Logo.targetsize-32.png │ ├── Square44x44Logo.targetsize-48.png │ ├── Square44x44Logo.targetsize-256.png │ ├── Square44x44Logo.altform-unplated_targetsize-16.png │ ├── Square44x44Logo.altform-unplated_targetsize-24.png │ ├── Square44x44Logo.altform-unplated_targetsize-256.png │ ├── Square44x44Logo.altform-unplated_targetsize-32.png │ ├── Square44x44Logo.altform-unplated_targetsize-48.png │ ├── Square44x44Logo.altform-lightunplated_targetsize-16.png │ ├── Square44x44Logo.altform-lightunplated_targetsize-24.png │ ├── Square44x44Logo.altform-lightunplated_targetsize-256.png │ ├── Square44x44Logo.altform-lightunplated_targetsize-32.png │ └── Square44x44Logo.altform-lightunplated_targetsize-48.png └── Public │ └── Fragments │ └── PengwinEnterprise10.json ├── PengwinEnterprise9W ├── PengwinEnterprise9W.vcxproj.filters └── PengwinEnterprise9W.vcxproj ├── Launcher8 ├── packages.config └── Launcher8.vcxproj.filters ├── Launcher9 ├── packages.config ├── Launcher9.vcxproj.filters └── PropertySheet.props ├── PengwinEnterprise9SW ├── PengwinEnterprise9SW.vcxproj.filters └── PengwinEnterprise9SW.vcxproj ├── DistroLauncher ├── packages.config └── DistroLauncher.vcxproj.filters ├── PengwinEnterprise7S ├── packages.config └── PengwinEnterprise7S.vcxproj.filters ├── PengwinEnterprise8S ├── packages.config └── PengwinEnterprise8S.vcxproj.filters ├── PengwinEnterprise9S ├── packages.config ├── PengwinEnterprise9S.vcxproj.filters └── PropertySheet.props ├── WrapperShared ├── targetver.h ├── framework.h ├── WrapperShared.vcxitems.filters ├── WrapperShared.vcxitems └── Wrapper.cpp ├── appMetadata └── en │ └── baseListing │ ├── features.txt │ ├── releaseNotes.txt │ └── description.txt ├── BUILDING.md ├── appMetadata9 └── en-us │ └── baseListing │ ├── features.txt │ ├── releaseNotes.txt │ └── description.txt ├── .gitattributes ├── .github └── ISSUE_TEMPLATE │ ├── feature_request.md │ ├── bug_report.md │ └── WSL_error.md ├── PengwinEnterprise7W ├── PengwinEnterprise7W.vcxproj.filters └── PengwinEnterprise7W.vcxproj ├── PengwinEnterprise8W ├── PengwinEnterprise8W.vcxproj.filters └── PengwinEnterprise8W.vcxproj ├── PengwinEnterprise7SW ├── PengwinEnterprise7SW.vcxproj.filters └── PengwinEnterprise7SW.vcxproj ├── PengwinEnterprise8SW ├── PengwinEnterprise8SW.vcxproj.filters └── PengwinEnterprise8SW.vcxproj ├── appMetadata8 └── en-us │ └── baseListing │ ├── releaseNotes.txt │ ├── features.txt │ └── description.txt ├── licenses ├── Python.md ├── Ruby.md └── PHP.md ├── azure-pipelines.yml └── CODEOFCONDUCT.md /ARM64/installtargzgoeshere: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /x64/installtargzgoeshere: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /PengwinEnterpriseUI/pch.cpp: -------------------------------------------------------------------------------- 1 | #include "pch.h" 2 | -------------------------------------------------------------------------------- /linux_files/DB_CONFIG: -------------------------------------------------------------------------------- 1 | set_cachesize 0 35840 1 2 | -------------------------------------------------------------------------------- /LauncherShared/messages.rc: -------------------------------------------------------------------------------- 1 | LANGUAGE 0x9,0x1 2 | 1 11 "MSG00409.bin" 3 | -------------------------------------------------------------------------------- /PengwinEnterpriseUI/App.idl: -------------------------------------------------------------------------------- 1 | namespace PengwinEnterpriseUI 2 | { 3 | } 4 | -------------------------------------------------------------------------------- /LauncherShared/images/icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/LauncherShared/images/icon.ico -------------------------------------------------------------------------------- /PengwinEnterprise/Assets/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Assets/background.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Assets/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Assets/background.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Assets/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Assets/background.png -------------------------------------------------------------------------------- /PengwinEnterpriseUI/Assets/StoreLogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterpriseUI/Assets/StoreLogo.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Assets/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Assets/background.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/StoreLogo.backup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/StoreLogo.backup.png -------------------------------------------------------------------------------- /PengwinEnterprise/Assets/pengwinenterprise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Assets/pengwinenterprise.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/LargeTile.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/LargeTile.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/LargeTile.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/LargeTile.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/LargeTile.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/LargeTile.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/LargeTile.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/LargeTile.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/LargeTile.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/LargeTile.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/SmallTile.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/SmallTile.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/SmallTile.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/SmallTile.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/SmallTile.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/SmallTile.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/SmallTile.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/SmallTile.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/SmallTile.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/SmallTile.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/StoreLogo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/StoreLogo.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/StoreLogo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/StoreLogo.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/StoreLogo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/StoreLogo.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/StoreLogo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/StoreLogo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/StoreLogo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/StoreLogo.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Assets/pengwinenterprise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Assets/pengwinenterprise.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/StoreLogo.backup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/StoreLogo.backup.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Assets/pengwinenterprise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Assets/pengwinenterprise.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Assets/pengwinenterprise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Assets/pengwinenterprise.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/StoreLogo.backup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/StoreLogo.backup.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/LargeTile.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/LargeTile.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/LargeTile.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/LargeTile.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/LargeTile.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/LargeTile.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/LargeTile.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/LargeTile.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/LargeTile.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/LargeTile.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/SmallTile.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/SmallTile.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/SmallTile.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/SmallTile.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/SmallTile.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/SmallTile.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/SmallTile.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/SmallTile.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/SmallTile.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/SmallTile.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/StoreLogo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/StoreLogo.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/StoreLogo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/StoreLogo.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/StoreLogo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/StoreLogo.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/StoreLogo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/StoreLogo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/StoreLogo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/StoreLogo.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/LargeTile.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/LargeTile.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/LargeTile.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/LargeTile.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/LargeTile.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/LargeTile.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/LargeTile.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/LargeTile.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/LargeTile.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/LargeTile.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/SmallTile.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/SmallTile.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/SmallTile.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/SmallTile.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/SmallTile.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/SmallTile.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/SmallTile.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/SmallTile.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/SmallTile.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/SmallTile.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/StoreLogo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/StoreLogo.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/StoreLogo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/StoreLogo.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/StoreLogo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/StoreLogo.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/StoreLogo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/StoreLogo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/StoreLogo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/StoreLogo.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/LargeTile.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/LargeTile.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/LargeTile.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/LargeTile.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/LargeTile.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/LargeTile.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/LargeTile.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/LargeTile.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/LargeTile.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/LargeTile.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/SmallTile.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/SmallTile.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/SmallTile.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/SmallTile.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/SmallTile.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/SmallTile.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/SmallTile.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/SmallTile.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/SmallTile.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/SmallTile.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/StoreLogo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/StoreLogo.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/StoreLogo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/StoreLogo.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/StoreLogo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/StoreLogo.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/StoreLogo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/StoreLogo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/StoreLogo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/StoreLogo.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/LockScreenLogo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/LockScreenLogo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/SplashScreen.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/SplashScreen.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/SplashScreen.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/SplashScreen.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/SplashScreen.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/SplashScreen.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/SplashScreen.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/SplashScreen.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/SplashScreen.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/SplashScreen.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/SplashScreen.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/SplashScreen.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/SplashScreen.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/SplashScreen.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/SplashScreen.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/SplashScreen.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/SplashScreen.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/SplashScreen.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/SplashScreen.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/SplashScreen.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/SplashScreen.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/SplashScreen.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/SplashScreen.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/SplashScreen.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/SplashScreen.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/SplashScreen.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/SplashScreen.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/SplashScreen.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/SplashScreen.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/SplashScreen.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/SplashScreen.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/SplashScreen.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/SplashScreen.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/SplashScreen.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/SplashScreen.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/SplashScreen.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/SplashScreen.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/SplashScreen.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/SplashScreen.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/SplashScreen.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterpriseUI/Assets/SplashScreen.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterpriseUI/Assets/SplashScreen.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square44x44Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square44x44Logo.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square44x44Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square44x44Logo.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square44x44Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square44x44Logo.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square44x44Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square44x44Logo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square44x44Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square44x44Logo.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Wide310x150Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Wide310x150Logo.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Wide310x150Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Wide310x150Logo.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Wide310x150Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Wide310x150Logo.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Wide310x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Wide310x150Logo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Wide310x150Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Wide310x150Logo.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/LockScreenLogo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/LockScreenLogo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square44x44Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square44x44Logo.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square44x44Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square44x44Logo.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square44x44Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square44x44Logo.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square44x44Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square44x44Logo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square44x44Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square44x44Logo.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Wide310x150Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Wide310x150Logo.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Wide310x150Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Wide310x150Logo.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Wide310x150Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Wide310x150Logo.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Wide310x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Wide310x150Logo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Wide310x150Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Wide310x150Logo.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/LockScreenLogo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/LockScreenLogo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square44x44Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square44x44Logo.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square44x44Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square44x44Logo.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square44x44Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square44x44Logo.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square44x44Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square44x44Logo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square44x44Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square44x44Logo.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Wide310x150Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Wide310x150Logo.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Wide310x150Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Wide310x150Logo.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Wide310x150Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Wide310x150Logo.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Wide310x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Wide310x150Logo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Wide310x150Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Wide310x150Logo.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterpriseUI/Assets/LockScreenLogo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterpriseUI/Assets/LockScreenLogo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise/Assets/pengwinenterprise.theme-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Assets/pengwinenterprise.theme-dark.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square150x150Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square150x150Logo.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square150x150Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square150x150Logo.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square150x150Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square150x150Logo.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square150x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square150x150Logo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square150x150Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square150x150Logo.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square44x44Logo.targetsize-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square44x44Logo.targetsize-16.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square44x44Logo.targetsize-24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square44x44Logo.targetsize-24.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square44x44Logo.targetsize-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square44x44Logo.targetsize-32.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square44x44Logo.targetsize-48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square44x44Logo.targetsize-48.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square150x150Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square150x150Logo.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square150x150Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square150x150Logo.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square150x150Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square150x150Logo.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square150x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square150x150Logo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square150x150Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square150x150Logo.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square44x44Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square44x44Logo.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square44x44Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square44x44Logo.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square44x44Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square44x44Logo.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square44x44Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square44x44Logo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square44x44Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square44x44Logo.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Wide310x150Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Wide310x150Logo.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Wide310x150Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Wide310x150Logo.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Wide310x150Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Wide310x150Logo.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Wide310x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Wide310x150Logo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Wide310x150Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Wide310x150Logo.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Assets/pengwinenterprise.theme-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Assets/pengwinenterprise.theme-dark.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square150x150Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square150x150Logo.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square150x150Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square150x150Logo.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square150x150Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square150x150Logo.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square150x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square150x150Logo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square150x150Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square150x150Logo.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Assets/pengwinenterprise.theme-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Assets/pengwinenterprise.theme-dark.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square150x150Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square150x150Logo.scale-100.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square150x150Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square150x150Logo.scale-125.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square150x150Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square150x150Logo.scale-150.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square150x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square150x150Logo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square150x150Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square150x150Logo.scale-400.png -------------------------------------------------------------------------------- /PengwinEnterprise9W/PengwinEnterprise9W.vcxproj.filters: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /PengwinEnterpriseUI/Assets/Square150x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterpriseUI/Assets/Square150x150Logo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterpriseUI/Assets/Square44x44Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterpriseUI/Assets/Square44x44Logo.scale-200.png -------------------------------------------------------------------------------- /PengwinEnterpriseUI/Assets/Wide310x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterpriseUI/Assets/Wide310x150Logo.scale-200.png -------------------------------------------------------------------------------- /Launcher8/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Launcher9/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square44x44Logo.targetsize-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square44x44Logo.targetsize-256.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Assets/pengwinenterprise.theme-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Assets/pengwinenterprise.theme-dark.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square44x44Logo.targetsize-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square44x44Logo.targetsize-16.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square44x44Logo.targetsize-24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square44x44Logo.targetsize-24.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square44x44Logo.targetsize-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square44x44Logo.targetsize-32.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square44x44Logo.targetsize-48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square44x44Logo.targetsize-48.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square44x44Logo.targetsize-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square44x44Logo.targetsize-16.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square44x44Logo.targetsize-24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square44x44Logo.targetsize-24.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square44x44Logo.targetsize-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square44x44Logo.targetsize-256.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square44x44Logo.targetsize-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square44x44Logo.targetsize-32.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square44x44Logo.targetsize-48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square44x44Logo.targetsize-48.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square44x44Logo.targetsize-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square44x44Logo.targetsize-16.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square44x44Logo.targetsize-24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square44x44Logo.targetsize-24.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square44x44Logo.targetsize-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square44x44Logo.targetsize-256.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square44x44Logo.targetsize-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square44x44Logo.targetsize-32.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square44x44Logo.targetsize-48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square44x44Logo.targetsize-48.png -------------------------------------------------------------------------------- /PengwinEnterprise9SW/PengwinEnterprise9SW.vcxproj.filters: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /DistroLauncher/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square44x44Logo.targetsize-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square44x44Logo.targetsize-256.png -------------------------------------------------------------------------------- /PengwinEnterprise7S/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /PengwinEnterprise8S/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /PengwinEnterprise9S/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /linux_files/wsl.conf: -------------------------------------------------------------------------------- 1 | [automount] 2 | enabled = true 3 | options = "metadata,uid=1000,gid=1000,umask=22,fmask=11,case=off" 4 | mountFsTab = true 5 | 6 | [network] 7 | generateHosts = true 8 | generateResolvConf = true -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square44x44Logo.altform-unplated_targetsize-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square44x44Logo.altform-unplated_targetsize-16.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square44x44Logo.altform-unplated_targetsize-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square44x44Logo.altform-unplated_targetsize-32.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square44x44Logo.altform-unplated_targetsize-48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square44x44Logo.altform-unplated_targetsize-48.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square44x44Logo.targetsize-24_altform-unplated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square44x44Logo.targetsize-24_altform-unplated.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square44x44Logo.altform-unplated_targetsize-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square44x44Logo.altform-unplated_targetsize-256.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square44x44Logo.altform-unplated_targetsize-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square44x44Logo.altform-unplated_targetsize-16.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square44x44Logo.altform-unplated_targetsize-24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square44x44Logo.altform-unplated_targetsize-24.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square44x44Logo.altform-unplated_targetsize-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square44x44Logo.altform-unplated_targetsize-256.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square44x44Logo.altform-unplated_targetsize-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square44x44Logo.altform-unplated_targetsize-32.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square44x44Logo.altform-unplated_targetsize-48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square44x44Logo.altform-unplated_targetsize-48.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square44x44Logo.altform-unplated_targetsize-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square44x44Logo.altform-unplated_targetsize-16.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square44x44Logo.altform-unplated_targetsize-24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square44x44Logo.altform-unplated_targetsize-24.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square44x44Logo.altform-unplated_targetsize-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square44x44Logo.altform-unplated_targetsize-256.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square44x44Logo.altform-unplated_targetsize-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square44x44Logo.altform-unplated_targetsize-32.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square44x44Logo.altform-unplated_targetsize-48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square44x44Logo.altform-unplated_targetsize-48.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square44x44Logo.altform-unplated_targetsize-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square44x44Logo.altform-unplated_targetsize-16.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square44x44Logo.altform-unplated_targetsize-24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square44x44Logo.altform-unplated_targetsize-24.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square44x44Logo.altform-unplated_targetsize-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square44x44Logo.altform-unplated_targetsize-256.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square44x44Logo.altform-unplated_targetsize-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square44x44Logo.altform-unplated_targetsize-32.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square44x44Logo.altform-unplated_targetsize-48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square44x44Logo.altform-unplated_targetsize-48.png -------------------------------------------------------------------------------- /PengwinEnterpriseUI/Assets/Square44x44Logo.targetsize-24_altform-unplated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterpriseUI/Assets/Square44x44Logo.targetsize-24_altform-unplated.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square44x44Logo.altform-lightunplated_targetsize-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square44x44Logo.altform-lightunplated_targetsize-16.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square44x44Logo.altform-lightunplated_targetsize-24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square44x44Logo.altform-lightunplated_targetsize-24.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square44x44Logo.altform-lightunplated_targetsize-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square44x44Logo.altform-lightunplated_targetsize-32.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square44x44Logo.altform-lightunplated_targetsize-48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square44x44Logo.altform-lightunplated_targetsize-48.png -------------------------------------------------------------------------------- /PengwinEnterprise/Images/Square44x44Logo.altform-lightunplated_targetsize-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise/Images/Square44x44Logo.altform-lightunplated_targetsize-256.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square44x44Logo.altform-lightunplated_targetsize-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square44x44Logo.altform-lightunplated_targetsize-16.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square44x44Logo.altform-lightunplated_targetsize-24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square44x44Logo.altform-lightunplated_targetsize-24.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square44x44Logo.altform-lightunplated_targetsize-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square44x44Logo.altform-lightunplated_targetsize-256.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square44x44Logo.altform-lightunplated_targetsize-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square44x44Logo.altform-lightunplated_targetsize-32.png -------------------------------------------------------------------------------- /PengwinEnterprise10/Images/Square44x44Logo.altform-lightunplated_targetsize-48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise10/Images/Square44x44Logo.altform-lightunplated_targetsize-48.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square44x44Logo.altform-lightunplated_targetsize-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square44x44Logo.altform-lightunplated_targetsize-16.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square44x44Logo.altform-lightunplated_targetsize-24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square44x44Logo.altform-lightunplated_targetsize-24.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square44x44Logo.altform-lightunplated_targetsize-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square44x44Logo.altform-lightunplated_targetsize-256.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square44x44Logo.altform-lightunplated_targetsize-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square44x44Logo.altform-lightunplated_targetsize-32.png -------------------------------------------------------------------------------- /PengwinEnterprise8/Images/Square44x44Logo.altform-lightunplated_targetsize-48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise8/Images/Square44x44Logo.altform-lightunplated_targetsize-48.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square44x44Logo.altform-lightunplated_targetsize-16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square44x44Logo.altform-lightunplated_targetsize-16.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square44x44Logo.altform-lightunplated_targetsize-24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square44x44Logo.altform-lightunplated_targetsize-24.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square44x44Logo.altform-lightunplated_targetsize-256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square44x44Logo.altform-lightunplated_targetsize-256.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square44x44Logo.altform-lightunplated_targetsize-32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square44x44Logo.altform-lightunplated_targetsize-32.png -------------------------------------------------------------------------------- /PengwinEnterprise9/Images/Square44x44Logo.altform-lightunplated_targetsize-48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/HEAD/PengwinEnterprise9/Images/Square44x44Logo.altform-lightunplated_targetsize-48.png -------------------------------------------------------------------------------- /linux_files/local.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | /mnt/c/Windows/Fonts 5 | ~/winhome/AppData/Local/Microsoft/Windows/Fonts 6 | 7 | -------------------------------------------------------------------------------- /PengwinEnterpriseUI/MainPage.idl: -------------------------------------------------------------------------------- 1 | namespace PengwinEnterpriseUI 2 | { 3 | [default_interface] 4 | runtimeclass MainPage : Windows.UI.Xaml.Controls.Page 5 | { 6 | MainPage(); 7 | Int32 MyProperty; 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /Launcher8/Launcher8.vcxproj.filters: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /PengwinEnterpriseUI/App.xaml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /DistroLauncher/DistroLauncher.vcxproj.filters: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /PengwinEnterpriseUI/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /Launcher9/Launcher9.vcxproj.filters: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /WrapperShared/targetver.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | // // Including SDKDDKVer.h defines the highest available Windows platform. 4 | // If you wish to build your application for a previous Windows platform, include WinSDKVer.h and 5 | // set the _WIN32_WINNT macro to the platform you wish to support before including SDKDDKVer.h. 6 | #include 7 | -------------------------------------------------------------------------------- /appMetadata/en/baseListing/features.txt: -------------------------------------------------------------------------------- 1 | Compatible with Red Hat Enterprise Linux. 2 | Use yum. 3 | Support for many Linux graphical applications with no need to configure display or libGL. Requires a Windows-based X client, such as X410 or VcXsrv. 4 | A stable enterprise-grade distribution. It is focused on stability and security over new features. 5 | -------------------------------------------------------------------------------- /LauncherShared/targetver.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | // Including SDKDDKVer.h defines the highest available Windows platform. 4 | 5 | // If you wish to build your application for a previous Windows platform, include WinSDKVer.h and 6 | // set the _WIN32_WINNT macro to the platform you wish to support before including SDKDDKVer.h. 7 | 8 | #include 9 | -------------------------------------------------------------------------------- /PengwinEnterprise9S/PengwinEnterprise9S.vcxproj.filters: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /WrapperShared/framework.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "targetver.h" 4 | #define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers 5 | // Windows Header Files 6 | #include 7 | // C RunTime Header Files 8 | #include 9 | #include 10 | #include 11 | #include 12 | #include 13 | #include 14 | -------------------------------------------------------------------------------- /LauncherShared/stdafx.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) Microsoft. All rights reserved. 3 | // Licensed under the terms described in the LICENSE file in the root of this project. 4 | // 5 | // stdafx.cpp : source file that includes just the standard includes 6 | // DistroInstaller.pch will be the pre-compiled header 7 | // stdafx.obj will contain the pre-compiled type information 8 | // 9 | 10 | #include "stdafx.h" 11 | 12 | // Reference any additional headers you need in stdafx.h and not in this file. 13 | -------------------------------------------------------------------------------- /BUILDING.md: -------------------------------------------------------------------------------- 1 | For building steps, generally follow the Pengwin building guide [here](https://github.com/WhitewaterFoundry/Pengwin/blob/master/BUILDING.md). 2 | 3 | .diff: 4 | 5 | create-targz-x64.sh must be run on an existing enterprise Linux build instead of Debian. 6 | 7 | The create-targz-x64.sh was moved to https://github.com/WhitewaterFoundry/pengwin-enterprise-rootfs-builds 8 | Because the building process uses libvrtd and that is currently unsupported on WSL running create-targz-x64.sh on bare metal is required. 9 | -------------------------------------------------------------------------------- /appMetadata9/en-us/baseListing/features.txt: -------------------------------------------------------------------------------- 1 | Compatible with Red Hat Enterprise Linux. 2 | Use yum and dnf. 3 | Support for many Linux graphical applications with no need to configure display or libGL. Requires a Windows-based X client, such as X410 or VcXsrv. 4 | A stable enterprise-grade distribution. It is focused on stability and security over new features. 5 | You have access to your Windows home directly from your Linux one via winhome symbolic link. 6 | We have handcrafted a Windows Terminal profile for a pleasant experience. 7 | -------------------------------------------------------------------------------- /LauncherShared/resource.h: -------------------------------------------------------------------------------- 1 | //{{NO_DEPENDENCIES}} 2 | // Microsoft Visual C++ generated include file. 3 | // Used by DistroInstaller.rc 4 | // 5 | #define IDI_ICON1 101 6 | 7 | // Next default values for new objects 8 | // 9 | #ifdef APSTUDIO_INVOKED 10 | #ifndef APSTUDIO_READONLY_SYMBOLS 11 | #define _APS_NEXT_RESOURCE_VALUE 103 12 | #define _APS_NEXT_COMMAND_VALUE 40001 13 | #define _APS_NEXT_CONTROL_VALUE 1001 14 | #define _APS_NEXT_SYMED_VALUE 101 15 | #endif 16 | #endif 17 | -------------------------------------------------------------------------------- /LauncherShared/Helpers.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) Microsoft. All rights reserved. 3 | // Licensed under the terms described in the LICENSE file in the root of this project. 4 | // 5 | 6 | #pragma once 7 | 8 | #define UID_INVALID ((ULONG)-1) 9 | 10 | namespace Helpers 11 | { 12 | std::wstring GetUserInput(DWORD promptMsg, DWORD maxCharacters); 13 | void PrintErrorMessage(HRESULT hr); 14 | HRESULT PrintMessage(DWORD messageId, ...); 15 | void PromptForInput(); 16 | void SendStartProcessSignal(); 17 | void SendStopProcessSignal(); 18 | } 19 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # These files are text and should be normalized (convert crlf => lf) 2 | *.cs text eol=crlf diff=csharp 3 | *.xaml text eol=crlf 4 | *.csproj text eol=crlf 5 | *.sln text eol=crlf 6 | *.tt text eol=crlf 7 | *.ps1 text eol=crlf 8 | *.cmd text eol=crlf 9 | *.msbuild text eol=crlf 10 | *.md text eol=lf 11 | *.sh text eol=lf 12 | 13 | # Images should be treated as binary 14 | # (binary is a macro for -text -diff) 15 | *.png binary 16 | *.jpg binary 17 | *.jpeg binary 18 | 19 | *.sdf binary 20 | 21 | * text=auto -------------------------------------------------------------------------------- /PengwinEnterpriseUI/pch.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include 3 | #include 4 | #include 5 | #include 6 | #include 7 | #include 8 | #include 9 | #include 10 | #include 11 | #include 12 | #include 13 | #include 14 | #include 15 | #include 16 | -------------------------------------------------------------------------------- /PengwinEnterpriseUI/MainPage.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "MainPage.g.h" 4 | 5 | namespace winrt::PengwinEnterpriseUI::implementation 6 | { 7 | struct MainPage : MainPageT 8 | { 9 | MainPage(); 10 | 11 | int32_t MyProperty(); 12 | void MyProperty(int32_t value); 13 | 14 | void ClickHandler(Windows::Foundation::IInspectable const& sender, Windows::UI::Xaml::RoutedEventArgs const& args); 15 | }; 16 | } 17 | 18 | namespace winrt::PengwinEnterpriseUI::factory_implementation 19 | { 20 | struct MainPage : MainPageT 21 | { 22 | }; 23 | } 24 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Suggest an idea for this project 4 | 5 | --- 6 | 7 | **Is your feature request related to a problem? Please describe.** 8 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] 9 | 10 | **Describe the solution you'd like** 11 | A clear and concise description of what you want to happen. 12 | 13 | **Describe alternatives you've considered** 14 | A clear and concise description of any alternative solutions or features you've considered. 15 | 16 | **Additional context** 17 | Add any other context or screenshots about the feature request here. 18 | -------------------------------------------------------------------------------- /Launcher9/PropertySheet.props: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /PengwinEnterpriseUI/MainPage.xaml: -------------------------------------------------------------------------------- 1 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /PengwinEnterprise9S/PropertySheet.props: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /PengwinEnterpriseUI/PropertySheet.props: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /PengwinEnterpriseUI/App.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "App.xaml.g.h" 3 | 4 | namespace winrt::PengwinEnterpriseUI::implementation 5 | { 6 | struct App : AppT 7 | { 8 | App(); 9 | 10 | void OnLaunched(const Windows::ApplicationModel::Activation::LaunchActivatedEventArgs&); 11 | void OnSuspending(const IInspectable&, const Windows::ApplicationModel::SuspendingEventArgs&); 12 | void OnNavigationFailed(const IInspectable&, const Windows::UI::Xaml::Navigation::NavigationFailedEventArgs&); 13 | fire_and_forget SetupPushNotifications() const; 14 | void OnActivated(const Windows::ApplicationModel::Activation::IActivatedEventArgs&); 15 | }; 16 | } 17 | -------------------------------------------------------------------------------- /PengwinEnterpriseUI/MainPage.cpp: -------------------------------------------------------------------------------- 1 | #include "pch.h" 2 | #include "MainPage.h" 3 | #include "MainPage.g.cpp" 4 | 5 | using namespace winrt; 6 | using namespace Windows::UI::Xaml; 7 | 8 | namespace winrt::PengwinEnterpriseUI::implementation 9 | { 10 | MainPage::MainPage() 11 | { 12 | InitializeComponent(); 13 | } 14 | 15 | int32_t MainPage::MyProperty() 16 | { 17 | throw hresult_not_implemented(); 18 | } 19 | 20 | void MainPage::MyProperty(int32_t /* value */) 21 | { 22 | throw hresult_not_implemented(); 23 | } 24 | 25 | void MainPage::ClickHandler(IInspectable const&, RoutedEventArgs const&) 26 | { 27 | myButton().Content(box_value(L"Clicked")); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /PengwinEnterprise7W/PengwinEnterprise7W.vcxproj.filters: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd 11 | 12 | 13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} 14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms 15 | 16 | 17 | -------------------------------------------------------------------------------- /PengwinEnterprise8W/PengwinEnterprise8W.vcxproj.filters: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd 11 | 12 | 13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} 14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms 15 | 16 | 17 | -------------------------------------------------------------------------------- /PengwinEnterprise7SW/PengwinEnterprise7SW.vcxproj.filters: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd 11 | 12 | 13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} 14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms 15 | 16 | 17 | -------------------------------------------------------------------------------- /PengwinEnterprise8SW/PengwinEnterprise8SW.vcxproj.filters: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd 11 | 12 | 13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} 14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms 15 | 16 | 17 | -------------------------------------------------------------------------------- /LauncherShared/stdafx.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) Microsoft. All rights reserved. 3 | // Licensed under the terms described in the LICENSE file in the root of this project. 4 | // 5 | // stdafx.h : include file for standard system include files, 6 | // or project specific include files that are used frequently, but 7 | // are changed infrequently 8 | // 9 | 10 | #pragma once 11 | 12 | #include "targetver.h" 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | #include 22 | #include 23 | #include 24 | #include 25 | #include 26 | #include 27 | #include 28 | 29 | #include 30 | #include 31 | 32 | #include "WslApiLoader.h" 33 | #include "Helpers.h" 34 | #include "DistributionInfo.h" 35 | 36 | // Message strings compiled from .MC file. 37 | #include "messages.h" 38 | -------------------------------------------------------------------------------- /linux_files/upgrade.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | BASE_URL="https://raw.githubusercontent.com/WhitewaterFoundry/pengwin-enterprise-rootfs-builds/master" 4 | sha256sum /usr/local/bin/upgrade.sh >/tmp/sum.txt 5 | sudo curl -L -f "${BASE_URL}/linux_files/upgrade.sh" -o /usr/local/bin/upgrade.sh 6 | sudo chmod +x /usr/local/bin/upgrade.sh 7 | sha256sum -c /tmp/sum.txt 8 | 9 | CHANGED=$? 10 | rm -r /tmp/sum.txt 11 | 12 | # the script has changed? run the newer one 13 | if [ ${CHANGED} -eq 1 ]; then 14 | echo Running the updated script 15 | bash /usr/local/bin/upgrade.sh 16 | exit 0 17 | fi 18 | 19 | #enable wslu repo 20 | sudo yum-config-manager --add-repo https://download.opensuse.org/repositories/home:/wslutilities/ScientificLinux_7/home:wslutilities.repo 21 | sudo yum -y update 22 | 23 | # Update the release and main startup script files 24 | sudo curl -L -f "${BASE_URL}/linux_files/00-wle.sh" -o /etc/profile.d/00-wle.sh 25 | 26 | # Add local.conf to fonts 27 | sudo mkdir -p /etc/fonts 28 | sudo curl -L -f "${BASE_URL}/linux_files/local.conf" -o /etc/fonts/local.conf 29 | -------------------------------------------------------------------------------- /WrapperShared/WrapperShared.vcxitems.filters: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | {1ebc5615-5068-410b-bf19-f5c099b2e874} 6 | 7 | 8 | {65d1b7d0-c031-42ae-8d09-47f9eedba552} 9 | 10 | 11 | {82bfaeec-38a8-4a41-aa0c-c97c36933969} 12 | 13 | 14 | 15 | 16 | Source Files 17 | 18 | 19 | 20 | 21 | Header Files 22 | 23 | 24 | Header Files 25 | 26 | 27 | -------------------------------------------------------------------------------- /PengwinEnterprise7S/PengwinEnterprise7S.vcxproj.filters: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd 11 | 12 | 13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} 14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms 15 | 16 | 17 | 18 | 19 | Resource Files 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /PengwinEnterprise8S/PengwinEnterprise8S.vcxproj.filters: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd 11 | 12 | 13 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} 14 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms 15 | 16 | 17 | 18 | 19 | Resource Files 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /WrapperShared/WrapperShared.vcxitems: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | true 6 | {978639e1-f2a2-4e7c-8ebf-5153d7d686ab} 7 | 8 | 9 | 10 | %(AdditionalIncludeDirectories);$(MSBuildThisFileDirectory) 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /appMetadata9/en-us/baseListing/releaseNotes.txt: -------------------------------------------------------------------------------- 1 | Existing users may apply these updates by running $ update.sh. To enable systemd, please edit /etc/wsl.conf. 2 | 3 | 9.6.0 4 | * Upgraded to Rocky Linux 9.6 5 | * Systemd by default: Now enabled and optimised for WSL, with conflicting services safely masked to ensure maximum compatibility. 6 | * Desktop installer: Updated for newer desktop environments with clearer guidance, improved validation, and automatic hostname detection for greater discoverability. 7 | * Graphics: Introduces a vGEM loader as a workaround for GPU video acceleration issues in WSL 2.5.x, alongside Mesa 24.2.8. Full codec support is now included, with VP9 and AV1 hardware acceleration enabled. This Mesa release also incorporates Microsoft OpenCLOn12, providing an OpenCL 1.2 implementation atop D3D12 for the first time. 8 | * Quality-of-life (non-systemd users): Enhanced support for dbus and graphical applications when systemd is not in use. A new create_userpath.sh utility ensures /run/user/ and /etc/xdg are present, while shell prompt scripts have been refined. 9 | 10 | 9.4.0 11 | * Upgraded to Rocky Linux 9.4 12 | -------------------------------------------------------------------------------- /PengwinEnterpriseUI/readme.txt: -------------------------------------------------------------------------------- 1 | ======================================================================== 2 | C++/WinRT PengwinEnterpriseUI Project Overview 3 | ======================================================================== 4 | 5 | This project demonstrates how to get started writing XAML apps directly 6 | with standard C++, using the C++/WinRT SDK component and XAML compiler 7 | support to generate implementation headers from interface (IDL) files. 8 | These headers can then be used to implement the local Windows Runtime 9 | classes referenced in the app's XAML pages. 10 | 11 | Steps: 12 | 1. Create an interface (IDL) file to define any local Windows Runtime 13 | classes referenced in the app's XAML pages. 14 | 2. Build the project once to generate implementation templates under 15 | the "Generated Files" folder, as well as skeleton class definitions 16 | under "Generated Files\sources". 17 | 3. Use the skeleton class definitions for reference to implement your 18 | Windows Runtime classes. 19 | 20 | ======================================================================== 21 | Learn more about C++/WinRT here: 22 | http://aka.ms/cppwinrt/ 23 | ======================================================================== 24 | -------------------------------------------------------------------------------- /appMetadata8/en-us/baseListing/releaseNotes.txt: -------------------------------------------------------------------------------- 1 | Existing users can update immediately by running $ update.sh 2 | 3 | 8.10.3 4 | * Systemd by default: Now enabled and optimised for WSL, with conflicting services safely masked to ensure maximum compatibility. 5 | * Desktop installer: Updated for newer desktop environments with clearer guidance, improved validation, and automatic hostname detection for greater discoverability. 6 | * Graphics: Introduces a vGEM loader as a workaround for GPU video acceleration issues in WSL 2.5.x, alongside Mesa 23.1.4. Full codec support is now included, with VP9 and AV1 hardware acceleration enabled. 7 | * Quality-of-life (non-systemd users): Enhanced support for dbus and graphical applications when systemd is not in use. A new create_userpath.sh utility ensures /run/user/ and /etc/xdg are present, while shell prompt scripts have been refined. 8 | 9 | 8.10.0 10 | * Upgraded to Rocky Linux 8.10 11 | 12 | 8.8.3 13 | * Fixed an incompatibility with WSL 2.0.9 when you are launching or installing Pengwin Enterprise. 14 | 15 | 8.8.2 16 | * Upgraded to Rocky Linux 8.8 17 | * Upgraded Mesa to 22.3.0 with OpenGL 4 support and video acceleration 18 | * Added experimental prompt escape sequences for Windows Terminal 1.18 Shell Integration 19 | * When the distro is being installed, now a progress icon appears in the Windows Terminal tab 20 | 21 | -------------------------------------------------------------------------------- /LauncherShared/DistributionInfo.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) Microsoft. All rights reserved. 3 | // Licensed under the terms described in the LICENSE file in the root of this project. 4 | // 5 | 6 | #pragma once 7 | 8 | namespace DistributionInfo 9 | { 10 | // The name of the distribution. This will be displayed to the user via 11 | // wslconfig.exe and in other places. It must conform to the following 12 | // regular expression: ^[a-zA-Z0-9._-]+$ 13 | // 14 | // WARNING: This value must not change between versions of your app, 15 | // otherwise users upgrading from older versions will see launch failures. 16 | #ifdef VERSION7 17 | const std::wstring Name = L"WLE"; 18 | #elif VERSION8 19 | const std::wstring Name = L"PengwinEnterprise8"; 20 | #elif VERSION9 21 | const std::wstring Name = L"PengwinEnterprise9"; 22 | #elif VERSIONX 23 | const std::wstring Name = L"PengwinEnterpriseX"; 24 | #endif 25 | 26 | // The title bar for the console window while the distribution is installing. 27 | const std::wstring WindowTitle = L"Pengwin Enterprise"; 28 | 29 | // Set root user password 30 | bool SetRootPassword(); 31 | 32 | // Create and configure a user account. 33 | bool CreateUser(std::wstring_view userName); 34 | 35 | // Query the UID of the user account. 36 | ULONG QueryUid(std::wstring_view userName); 37 | 38 | // Changes the default user in /etc/wsl.conf 39 | void ChangeDefaultUserInWslConf(std::wstring_view userName); 40 | } 41 | -------------------------------------------------------------------------------- /appMetadata8/en-us/baseListing/features.txt: -------------------------------------------------------------------------------- 1 | Pengwin Enterprise is a secure Windows Subsystem for Linux solution for the enterprise. 2 | It allows you to deploy Enterprise Linux on Windows and access Linux command-line tools and open source development tools on the Windows workstations you already have and manage. 3 | It supports various compatible Linux distributions, such as Red Hat Enterprise Linux, Oracle Linux, Scientific Linux, and CentOS. 4 | A stable enterprise-grade distribution. It is focused on stability and security over new features. 5 | Use yum and dnf. 6 | Support for many Linux graphical applications. 7 | It enables you to use powerful Linux software on Windows and Windows Server, such as Azure and Amazon cloud tools, Apache, Docker, Git, Go, Node.js, OpenJDK, Ruby on Rails, and Rust. 8 | It lets you securely connect to and administer Linux/BSD servers, both on-site and cloud, from Windows devices, such as a Surface Pro. 9 | It helps you automate routine Windows and Linux tasks with Bash, Python, PowerShell, and other scripting languages, weaving tools from both platforms together. 10 | It integrates with Visual Studio, Code, and JetBrains IDEs to conduct continuous integration testing and simplify DevOps. 11 | You have access to your Windows home directly from your Linux one via winhome symbolic link. 12 | We have handcrafted a Windows Terminal profile for a pleasant experience. 13 | It can be customized by Whitewater Foundry to fit your organization’s needs and leverage your existing enterprise Linux subscriptions and infrastructure. 14 | 15 | -------------------------------------------------------------------------------- /appMetadata/en/baseListing/releaseNotes.txt: -------------------------------------------------------------------------------- 1 | Existing users can update immediately by running $ update.sh 2 | 3 | 7.9.17 4 | * Fixed an incompatibility with WSL 2.0.9 when you are launching or installing Pengwin Enterprise. 5 | 6 | 7.9.15 7 | * Added experimental prompt escape sequences for Windows Terminal 1.18 Shell Integration 8 | * When the distro is being installed, now a progress icon appears in the Windows Terminal tab 9 | * [FIX] After performing a Reset in App Settings, the distro can be installed again without reinstalling the app. 10 | * [FIX] Now, if you configure Pengwin Enterprise as your Default Profile in Windows Terminal, right-click a folder in File Explorer and select Open in Terminal, it will correctly open in the desired directory. 11 | * [FIX] The icon is now correctly displayed in the Windows Terminal tab with the default dark theme. 12 | 13 | 7.9.11 14 | * Added SystemD optional support, creating a new Start Menu icon and a profile in Windows Terminal. Both have (SystemD) in their name. 15 | * Added a new command wslsystemctl to start services without starting SystemD, as other distros like Ubuntu does with the service command. 16 | 17 | 7.9.10 18 | * Fix a launch error with Windows Terminal 1.12 19 | 20 | 7.9.9 21 | * If Windows Terminal is the default console, now it correctly shows the profile when you double-click Pengwin Enterprise 7 in start menu 22 | * Corrected the logo look in Windows 11 light theme 23 | 24 | 7.9.6 25 | * Corrected some wrong file permissions 26 | 27 | 7.9.5 28 | * When the distro is initialized now the user name is save in /etc/wsl.conf for easier export and import 29 | * It now includes a Windows Terminal profile with menu logo, background and color theme 30 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Bug report 3 | about: Create a report to help us improve 4 | 5 | --- 6 | 7 | **Describe the bug** 8 | A clear and concise description of what the bug is. 9 | 10 | **To Reproduce** 11 | Steps to reproduce the behavior: 12 | 1. Go to '...' 13 | 2. Click on '....' 14 | 3. Scroll down to '....' 15 | 4. See error 16 | 17 | **Expected behavior** 18 | A clear and concise description of what you expected to happen. 19 | 20 | **Screenshots** 21 | If applicable, add screenshots to help explain your problem. 22 | 23 | **Additional context** 24 | Add any other context about the problem here. 25 | 26 | **Basic Troubleshooting Checklist** 27 | 28 | [ ] I have searched Google for the error message. 29 | [ ] I have checked official WSL troubleshooting documentation: https://docs.microsoft.com/en-us/windows/wsl/troubleshooting#confirm-wsl-is-enabled. 30 | [ ] I have searched the official Microsoft WSL issues page: https://github.com/Microsoft/WSL/issues. 31 | [ ] I have searched the WLinux issues page: https://github.com/WhitewaterFoundry/WLinux/issues. 32 | [ ] I have reset WLinux: Settings->Apps->Apps & features->WLinux->Advanced Options->Reset. 33 | [ ] I have disabled and re-enabled WSL in Windows Features. 34 | [ ] I have run Windows 10 updates and restarted. 35 | 36 | What other troubleshooting have you attempted? 37 | 38 | Insert here: 39 | 40 | **WLinux Version** 41 | 42 | Find: Settings->Apps->Apps & features->WLinux->Advanced Options->Version. 43 | 44 | Insert here: 45 | 46 | **Windows Build** 47 | 48 | Run 'systeminfo | findstr /C:"OS"' in Command Prompt and insert here: 49 | 50 | For help on retrieving: https://docs.microsoft.com/en-us/windows/wsl/troubleshooting#check-your-build-number 51 | -------------------------------------------------------------------------------- /PengwinEnterpriseUI/Package.appxmanifest: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 8 | 9 | PengwinEnterpriseUI 10 | hcram 11 | Assets\StoreLogo.png 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /LauncherShared/DistroLauncher.rc: -------------------------------------------------------------------------------- 1 | // Microsoft Visual C++ generated resource script. 2 | // 3 | #include "resource.h" 4 | 5 | #define APSTUDIO_READONLY_SYMBOLS 6 | ///////////////////////////////////////////////////////////////////////////// 7 | // 8 | // Generated from the TEXTINCLUDE 2 resource. 9 | // 10 | #include "winres.h" 11 | 12 | ///////////////////////////////////////////////////////////////////////////// 13 | #undef APSTUDIO_READONLY_SYMBOLS 14 | 15 | ///////////////////////////////////////////////////////////////////////////// 16 | // English (United States) resources 17 | 18 | #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) 19 | LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US 20 | 21 | #ifdef APSTUDIO_INVOKED 22 | ///////////////////////////////////////////////////////////////////////////// 23 | // 24 | // TEXTINCLUDE 25 | // 26 | 27 | 1 TEXTINCLUDE 28 | BEGIN 29 | "resource.h\0" 30 | END 31 | 32 | 2 TEXTINCLUDE 33 | BEGIN 34 | "#include ""winres.h""\r\n" 35 | "\0" 36 | END 37 | 38 | 3 TEXTINCLUDE 39 | BEGIN 40 | "\r\n" 41 | "\0" 42 | END 43 | 44 | #endif // APSTUDIO_INVOKED 45 | 46 | 47 | ///////////////////////////////////////////////////////////////////////////// 48 | // 49 | // Icon 50 | // 51 | 52 | // Icon with lowest ID value placed first to ensure application icon 53 | // remains consistent on all systems. 54 | IDI_ICON1 ICON ".\images\icon.ico" 55 | 56 | #endif // English (United States) resources 57 | ///////////////////////////////////////////////////////////////////////////// 58 | 59 | 60 | 61 | #ifndef APSTUDIO_INVOKED 62 | ///////////////////////////////////////////////////////////////////////////// 63 | // 64 | // Generated from the TEXTINCLUDE 3 resource. 65 | // 66 | 67 | 68 | ///////////////////////////////////////////////////////////////////////////// 69 | #endif // not APSTUDIO_INVOKED 70 | 71 | #include "messages.rc" 72 | 73 | -------------------------------------------------------------------------------- /PengwinEnterprise10/Public/Fragments/PengwinEnterprise10.json: -------------------------------------------------------------------------------- 1 | { 2 | "profiles": [ 3 | { 4 | "hidden": true, 5 | "updates": "{c3d4e5f6-a7b8-4c9d-0e1f-2a3b4c5d6e7f}" 6 | }, 7 | { 8 | "commandline": "PengwinEnterprise10.exe", 9 | "icon": "https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/refs/heads/master/PengwinEnterprise10/Assets/pengwinenterprise.theme-dark.png", 10 | "name": "Pengwin Enterprise 10", 11 | "guid": "{d4e5f6a7-b8c9-4d0e-1f2a-3b4c5d6e7f8a}", 12 | "pathTranslationStyle": "wsl", 13 | "wsl.distribution-type": "rhel", 14 | "wsl.distribution-version": "10.0", 15 | "backgroundImage": "https://raw.githubusercontent.com/WhitewaterFoundry/Pengwin-Enterprise/refs/heads/master/PengwinEnterprise10/Assets/background.png", 16 | "backgroundImageAlignment": "bottomRight", 17 | "backgroundImageOpacity": 0.15, 18 | "backgroundImageStretchMode": "none", 19 | "bellStyle": "none", 20 | "colorScheme": "Pengwin Enterprise 10", 21 | "cursorShape": "filledBox", 22 | "fontFace": "Cascadia Code", 23 | "startingDirectory": null, 24 | "showMarksOnScrollbar": true, 25 | "autoMarkPrompts": true 26 | } 27 | ], 28 | "schemes": [ 29 | { 30 | "name": "Pengwin Enterprise 10", 31 | 32 | "background": "#1E1E1E", 33 | "black": "#171421", 34 | "blue": "#12488B", 35 | "brightBlack": "#5E5C64", 36 | "brightBlue": "#2A7BDE", 37 | "brightCyan": "#33C7DE", 38 | "brightGreen": "#33DA7A", 39 | "brightPurple": "#C061CB", 40 | "brightRed": "#F66151", 41 | "brightWhite": "#FFFFFF", 42 | "brightYellow": "#E9AD0C", 43 | "cursorColor": "#FFFFFF", 44 | "cyan": "#2AA1B3", 45 | "foreground": "#E8E8E8", 46 | "green": "#26A269", 47 | "purple": "#A347BA", 48 | "red": "#C01C28", 49 | "selectionBackground": "#FFFFFF", 50 | "white": "#D0CFCC", 51 | "yellow": "#A2734C" 52 | } 53 | ] 54 | } 55 | -------------------------------------------------------------------------------- /PengwinEnterprise9/Public/Fragments/PengwinEnterprise9.json: -------------------------------------------------------------------------------- 1 | { 2 | "profiles": [ 3 | { 4 | "hidden": true, 5 | "updates": "{8b5eb413-23b0-5ec1-be7c-244d8f9ee208}" 6 | }, 7 | { 8 | "commandline": "\"%ProgramFiles%\\WindowsApps\\WhitewaterFoundry.PengwinEnterprise9_9.2.0.0_x64__r1wwvvmhjq692\\Launcher9\\PengwinEnterprise9.exe\"", 9 | "icon": "%LOCALAPPDATA%\\Packages\\WhitewaterFoundry.PengwinEnterprise9_r1wwvvmhjq692\\LocalState\\pengwinenterprise.png", 10 | "name": "Pengwin Enterprise 9", 11 | "guid": "{cd7a6dbb-fab4-5d5d-b42d-3adf32f21ed6}", 12 | "pathTranslationStyle": "wsl", 13 | "wsl.distribution-type": "rhel", 14 | "wsl.distribution-version": "9.6", 15 | "backgroundImage": "%LOCALAPPDATA%\\Packages\\WhitewaterFoundry.PengwinEnterprise9_r1wwvvmhjq692\\LocalState\\background.png", 16 | "backgroundImageAlignment": "bottomRight", 17 | "backgroundImageOpacity": 0.15, 18 | "backgroundImageStretchMode": "none", 19 | "bellStyle": "none", 20 | "colorScheme": "Pengwin Enterprise 9", 21 | "cursorShape": "filledBox", 22 | "fontFace": "Cascadia Code", 23 | "startingDirectory": null, 24 | "showMarksOnScrollbar": true, 25 | "autoMarkPrompts": true 26 | } 27 | ], 28 | "schemes": [ 29 | { 30 | "name": "Pengwin Enterprise 9", 31 | 32 | "background": "#1E1E1E", 33 | "black": "#171421", 34 | "blue": "#12488B", 35 | "brightBlack": "#5E5C64", 36 | "brightBlue": "#2A7BDE", 37 | "brightCyan": "#33C7DE", 38 | "brightGreen": "#33DA7A", 39 | "brightPurple": "#C061CB", 40 | "brightRed": "#F66151", 41 | "brightWhite": "#FFFFFF", 42 | "brightYellow": "#E9AD0C", 43 | "cursorColor": "#FFFFFF", 44 | "cyan": "#2AA1B3", 45 | "foreground": "#E8E8E8", 46 | "green": "#26A269", 47 | "purple": "#A347BA", 48 | "red": "#C01C28", 49 | "selectionBackground": "#FFFFFF", 50 | "white": "#D0CFCC", 51 | "yellow": "#A2734C" 52 | } 53 | ] 54 | } 55 | -------------------------------------------------------------------------------- /PengwinEnterprise8/Public/Fragments/PengwinEnterprise8.json: -------------------------------------------------------------------------------- 1 | { 2 | "profiles": [ 3 | { 4 | "hidden": true, 5 | "updates": "{32101ab0-27ea-518c-9551-3231daf3fd14}", 6 | }, 7 | { 8 | "commandline": "\"%ProgramFiles%\\WindowsApps\\WhitewaterFoundry.PengwinEnterprise8_8.8.2.0_x64__r1wwvvmhjq692\\Launcher8\\PengwinEnterprise8.exe\"", 9 | "icon": "%LOCALAPPDATA%\\Packages\\WhitewaterFoundry.PengwinEnterprise8_r1wwvvmhjq692\\LocalState\\pengwinenterprise.png", 10 | "name": "Pengwin Enterprise 8", 11 | "guid": "{6e8e35db-ae48-55c4-87c5-0739900d86ca}", 12 | "pathTranslationStyle": "wsl", 13 | "wsl.distribution-type": "rhel", 14 | "wsl.distribution-version": "8.10", 15 | "backgroundImage": "%LOCALAPPDATA%\\Packages\\WhitewaterFoundry.PengwinEnterprise8_r1wwvvmhjq692\\LocalState\\background.png", 16 | "backgroundImageAlignment": "bottomRight", 17 | "backgroundImageOpacity": 0.15, 18 | "backgroundImageStretchMode": "none", 19 | "bellStyle": "none", 20 | "colorScheme": "Pengwin Enterprise 8", 21 | "cursorShape": "filledBox", 22 | "fontFace": "Cascadia Code", 23 | "startingDirectory": null, 24 | "showMarksOnScrollbar": true, 25 | "autoMarkPrompts": true 26 | } 27 | ], 28 | "schemes": [ 29 | { 30 | "name": "Pengwin Enterprise 8", 31 | 32 | "background": "#1E1E1E", 33 | "black": "#171421", 34 | "blue": "#12488B", 35 | "brightBlack": "#5E5C64", 36 | "brightBlue": "#2A7BDE", 37 | "brightCyan": "#33C7DE", 38 | "brightGreen": "#33DA7A", 39 | "brightPurple": "#C061CB", 40 | "brightRed": "#F66151", 41 | "brightWhite": "#FFFFFF", 42 | "brightYellow": "#E9AD0C", 43 | "cursorColor": "#FFFFFF", 44 | "cyan": "#2AA1B3", 45 | "foreground": "#E8E8E8", 46 | "green": "#26A269", 47 | "purple": "#A347BA", 48 | "red": "#C01C28", 49 | "selectionBackground": "#FFFFFF", 50 | "white": "#D0CFCC", 51 | "yellow": "#A2734C" 52 | } 53 | ] 54 | } 55 | -------------------------------------------------------------------------------- /PengwinEnterpriseUI/PengwinEnterpriseUI.vcxproj.filters: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | Assets 25 | 26 | 27 | Assets 28 | 29 | 30 | Assets 31 | 32 | 33 | Assets 34 | 35 | 36 | Assets 37 | 38 | 39 | Assets 40 | 41 | 42 | Assets 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | {e48dc53e-40b1-40cb-970a-f89935452892} 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/WSL_error.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: WSL Error on Launch 3 | about: Report errors like 0x800320306 on launch. 4 | 5 | --- 6 | 7 | **Note** 8 | 9 | These WSL error messages occur from time to time and can tricky to troubleshoot short of reinstalling WSL. 10 | 11 | They are usually not an issue with WLinux itself but a glitch with the underlying Windows Subsystem for Linux in Windows 10. 12 | 13 | You can help us help you and Microsoft improve WSL and address these if you can provide us some debugging information. 14 | 15 | [ ] I have read the above statement. 16 | 17 | **Basic Troubleshooting** 18 | 19 | Please check: 20 | 21 | [ ] I have confirmed WSL is enabled: https://docs.microsoft.com/en-us/windows/wsl/troubleshooting#confirm-wsl-is-enabled. 22 | [ ] I have searched Google for the error message. 23 | [ ] I have searched the official Microsoft WSL issues page: https://github.com/Microsoft/WSL/issues. 24 | [ ] I have searched the WLinux issues page: https://github.com/WhitewaterFoundry/WLinux/issues. 25 | [ ] I have reset WLinux: Settings->Apps->Apps & features->WLinux->Advanced Options->Reset. 26 | [ ] I have disabled and re-enabled WSL in Windows Features. 27 | [ ] I have run Windows 10 updates and restarted. 28 | 29 | What other troubleshooting have you attempted to date? 30 | 31 | **Error Code** 32 | 33 | Insert here: 34 | 35 | Please check: 36 | 37 | [ ] This error code is not one listed below. 38 | 39 | Known Error Codes 40 | 0x80040306 Fix: https://docs.microsoft.com/en-us/windows/wsl/troubleshooting#error-0x80040306-on-installation 41 | 0x80040154 Fix: https://docs.microsoft.com/en-us/windows/wsl/troubleshooting#error-0x80040154-after-windows-update 42 | 43 | **Version** 44 | 45 | Find: Settings->Apps->Apps & features->WLinux->Advanced Options->Version. 46 | 47 | Insert here: 48 | 49 | **Screenshot** 50 | 51 | Insert here: 52 | 53 | **Windows Build** 54 | 55 | Run 'systeminfo | findstr /C:"OS"' in Command Prompt and insert here: 56 | 57 | For help on retrieving: https://docs.microsoft.com/en-us/windows/wsl/troubleshooting#check-your-build-number 58 | 59 | **WSL Debug Data** 60 | 61 | Please collect and attach .etl files by following this guide: https://docs.microsoft.com/en-us/windows/wsl/troubleshooting#starting-bash-gives-an-error-code 62 | -------------------------------------------------------------------------------- /licenses/Python.md: -------------------------------------------------------------------------------- 1 | 1. This LICENSE AGREEMENT is between the Python Software Foundation ("PSF"), and 2 | the Individual or Organization ("Licensee") accessing and otherwise using Python 3 | 3.7.1rc2 software in source or binary form and its associated documentation. 4 | 5 | 2. Subject to the terms and conditions of this License Agreement, PSF hereby 6 | grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce, 7 | analyze, test, perform and/or display publicly, prepare derivative works, 8 | distribute, and otherwise use Python 3.7.1rc2 alone or in any derivative 9 | version, provided, however, that PSF's License Agreement and PSF's notice of 10 | copyright, i.e., "Copyright © 2001-2018 Python Software Foundation; All Rights 11 | Reserved" are retained in Python 3.7.1rc2 alone or in any derivative version 12 | prepared by Licensee. 13 | 14 | 3. In the event Licensee prepares a derivative work that is based on or 15 | incorporates Python 3.7.1rc2 or any part thereof, and wants to make the 16 | derivative work available to others as provided herein, then Licensee hereby 17 | agrees to include in any such work a brief summary of the changes made to Python 18 | 3.7.1rc2. 19 | 20 | 4. PSF is making Python 3.7.1rc2 available to Licensee on an "AS IS" basis. 21 | PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED. BY WAY OF 22 | EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND DISCLAIMS ANY REPRESENTATION OR 23 | WARRANTY OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE 24 | USE OF PYTHON 3.7.1rc2 WILL NOT INFRINGE ANY THIRD PARTY RIGHTS. 25 | 26 | 5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON 3.7.1rc2 27 | FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS A RESULT OF 28 | MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON 3.7.1rc2, OR ANY DERIVATIVE 29 | THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. 30 | 31 | 6. This License Agreement will automatically terminate upon a material breach of 32 | its terms and conditions. 33 | 34 | 7. Nothing in this License Agreement shall be deemed to create any relationship 35 | of agency, partnership, or joint venture between PSF and Licensee. This License 36 | Agreement does not grant permission to use PSF trademarks or trade name in a 37 | trademark sense to endorse or promote products or services of Licensee, or any 38 | third party. 39 | 40 | 8. By copying, installing or otherwise using Python 3.7.1rc2, Licensee agrees 41 | to be bound by the terms and conditions of this License Agreement. -------------------------------------------------------------------------------- /LauncherShared/WslApiLoader.h: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) Microsoft. All rights reserved. 3 | // Licensed under the terms described in the LICENSE file in the root of this project. 4 | // 5 | 6 | #pragma once 7 | #include 8 | 9 | // This error definition is present in the Spring Creators Update SDK. 10 | #ifndef ERROR_LINUX_SUBSYSTEM_NOT_PRESENT 11 | #define ERROR_LINUX_SUBSYSTEM_NOT_PRESENT 414L 12 | #endif // !ERROR_LINUX_SUBSYSTEM_NOT_PRESENT 13 | 14 | using WSL_IS_DISTRIBUTION_REGISTERED = BOOL(STDAPICALLTYPE*)(PCWSTR); 15 | using WSL_REGISTER_DISTRIBUTION = HRESULT(STDAPICALLTYPE*)(PCWSTR, PCWSTR); 16 | using WSL_UN_REGISTER_DISTRIBUTION = HRESULT(STDAPICALLTYPE*)(PCWSTR); 17 | using WSL_CONFIGURE_DISTRIBUTION = HRESULT(STDAPICALLTYPE*)(PCWSTR, ULONG, WSL_DISTRIBUTION_FLAGS); 18 | using WSL_GET_DISTRIBUTION_CONFIGURATION = HRESULT(STDAPICALLTYPE*)(PCWSTR, ULONG*, ULONG*, WSL_DISTRIBUTION_FLAGS*, 19 | PSTR**, ULONG*); 20 | using WSL_LAUNCH_INTERACTIVE = HRESULT(STDAPICALLTYPE*)(PCWSTR, PCWSTR, BOOL, DWORD*); 21 | using WSL_LAUNCH = HRESULT(STDAPICALLTYPE*)(PCWSTR, PCWSTR, BOOL, HANDLE, HANDLE, HANDLE, HANDLE*); 22 | 23 | class WslApiLoader 24 | { 25 | public: 26 | WslApiLoader(const std::wstring& distributionName); 27 | ~WslApiLoader(); 28 | 29 | BOOL WslIsOptionalComponentInstalled(); 30 | 31 | BOOL WslIsDistributionRegistered(); 32 | 33 | HRESULT WslRegisterDistribution(); 34 | 35 | HRESULT WslUnregisterDistribution() const; 36 | 37 | HRESULT WslConfigureDistribution(ULONG defaultUID, 38 | WSL_DISTRIBUTION_FLAGS wslDistributionFlags); 39 | 40 | HRESULT WslLaunchInteractive(PCWSTR command, 41 | BOOL useCurrentWorkingDirectory, 42 | DWORD* exitCode); 43 | 44 | HRESULT WslLaunch(PCWSTR command, 45 | BOOL useCurrentWorkingDirectory, 46 | HANDLE stdIn, 47 | HANDLE stdOut, 48 | HANDLE stdErr, 49 | HANDLE* process); 50 | 51 | private: 52 | std::wstring _distributionName; 53 | HMODULE _wslApiDll; 54 | WSL_IS_DISTRIBUTION_REGISTERED _isDistributionRegistered; 55 | WSL_REGISTER_DISTRIBUTION _registerDistribution; 56 | WSL_UN_REGISTER_DISTRIBUTION _unRegisterDistribution; 57 | WSL_CONFIGURE_DISTRIBUTION _configureDistribution; 58 | WSL_LAUNCH_INTERACTIVE _launchInteractive; 59 | WSL_LAUNCH _launch; 60 | }; 61 | 62 | extern WslApiLoader g_wslApi; 63 | -------------------------------------------------------------------------------- /licenses/Ruby.md: -------------------------------------------------------------------------------- 1 | Ruby is copyrighted free software by Yukihiro Matsumoto . 2 | You can redistribute it and/or modify it under either the terms of the 3 | 2-clause BSDL (see the file BSDL), or the conditions below: 4 | 5 | 1. You may make and give away verbatim copies of the source form of the 6 | software without restriction, provided that you duplicate all of the 7 | original copyright notices and associated disclaimers. 8 | 9 | 2. You may modify your copy of the software in any way, provided that 10 | you do at least ONE of the following: 11 | 12 | a) place your modifications in the Public Domain or otherwise 13 | make them Freely Available, such as by posting said 14 | modifications to Usenet or an equivalent medium, or by allowing 15 | the author to include your modifications in the software. 16 | 17 | b) use the modified software only within your corporation or 18 | organization. 19 | 20 | c) give non-standard binaries non-standard names, with 21 | instructions on where to get the original software distribution. 22 | 23 | d) make other distribution arrangements with the author. 24 | 25 | 3. You may distribute the software in object code or binary form, 26 | provided that you do at least ONE of the following: 27 | 28 | a) distribute the binaries and library files of the software, 29 | together with instructions (in the manual page or equivalent) 30 | on where to get the original distribution. 31 | 32 | b) accompany the distribution with the machine-readable source of 33 | the software. 34 | 35 | c) give non-standard binaries non-standard names, with 36 | instructions on where to get the original software distribution. 37 | 38 | d) make other distribution arrangements with the author. 39 | 40 | 4. You may modify and include the part of the software into any other 41 | software (possibly commercial). But some files in the distribution 42 | are not written by the author, so that they are not under these terms. 43 | 44 | For the list of those files and their copying conditions, see the 45 | file LEGAL. 46 | 47 | 5. The scripts and library files supplied as input to or produced as 48 | output from the software do not automatically fall under the 49 | copyright of the software, but belong to whomever generated them, 50 | and may be sold commercially, and may be aggregated with this 51 | software. 52 | 53 | 6. THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR 54 | IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED 55 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 56 | PURPOSE. -------------------------------------------------------------------------------- /LauncherShared/LauncherShared.vcxitems.filters: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | {bd9c0e1f-ead0-4c54-b357-5acb095401da} 6 | 7 | 8 | {b31ebb36-829d-43fa-a8d3-406b6a4ecf01} 9 | 10 | 11 | {b8a635d2-99b1-4f73-b7fe-e31731dd0bdf} 12 | 13 | 14 | 15 | 16 | Source Files 17 | 18 | 19 | Source Files 20 | 21 | 22 | Source Files 23 | 24 | 25 | Source Files 26 | 27 | 28 | Source Files 29 | 30 | 31 | 32 | 33 | Resource Files 34 | 35 | 36 | 37 | 38 | Header Files 39 | 40 | 41 | Header Files 42 | 43 | 44 | Header Files 45 | 46 | 47 | Header Files 48 | 49 | 50 | Header Files 51 | 52 | 53 | Header Files 54 | 55 | 56 | Header Files 57 | 58 | 59 | 60 | 61 | Resource Files 62 | 63 | 64 | 65 | 66 | 67 | -------------------------------------------------------------------------------- /PengwinEnterprise/Public/Fragments/PengwinEnterprise7.json: -------------------------------------------------------------------------------- 1 | { 2 | "profiles": [ 3 | { 4 | "updates": "{0cd3ffa6-df28-5801-92e3-7778802cafe8}", 5 | "commandline": "\"%ProgramFiles%\\WindowsApps\\WhitewaterFoundryLtd.Co.WLinuxEnterprise_7.9.15.0_x64__kd1vv0z0vy70w\\DistroLauncher\\wle.exe\"", 6 | "icon": "%LOCALAPPDATA%\\Packages\\WhitewaterFoundryLtd.Co.WLinuxEnterprise_kd1vv0z0vy70w\\LocalState\\pengwinenterprise.png", 7 | "name": "Pengwin Enterprise 7", 8 | "backgroundImage": "%LOCALAPPDATA%\\Packages\\WhitewaterFoundryLtd.Co.WLinuxEnterprise_kd1vv0z0vy70w\\LocalState\\background.png", 9 | "backgroundImageAlignment": "bottomRight", 10 | "backgroundImageOpacity": 0.15, 11 | "backgroundImageStretchMode": "none", 12 | "bellStyle": "none", 13 | "colorScheme": "Pengwin Enterprise 7", 14 | "cursorShape": "filledBox", 15 | "fontFace": "Cascadia Code", 16 | "startingDirectory": null, 17 | "experimental.showMarksOnScrollbar": true, 18 | "experimental.autoMarkPrompts": true 19 | }, 20 | { 21 | "commandline": "\"%ProgramFiles%\\WindowsApps\\WhitewaterFoundryLtd.Co.WLinuxEnterprise_7.9.16.0_x64__kd1vv0z0vy70w\\PengwinEnterprise7S\\PengwinEnterprise7S.exe\"", 22 | "icon": "%LOCALAPPDATA%\\Packages\\WhitewaterFoundryLtd.Co.WLinuxEnterprise_kd1vv0z0vy70w\\LocalState\\pengwinenterprise.png", 23 | "name": "Pengwin Enterprise 7 (systemd)", 24 | "backgroundImage": "%LOCALAPPDATA%\\Packages\\WhitewaterFoundryLtd.Co.WLinuxEnterprise_kd1vv0z0vy70w\\LocalState\\background.png", 25 | "backgroundImageAlignment": "bottomRight", 26 | "backgroundImageOpacity": 0.15, 27 | "backgroundImageStretchMode": "none", 28 | "bellStyle": "none", 29 | "colorScheme": "Pengwin Enterprise 7", 30 | "cursorShape": "filledBox", 31 | "fontFace": "Cascadia Code", 32 | "startingDirectory": null, 33 | "experimental.showMarksOnScrollbar": true, 34 | "experimental.autoMarkPrompts": true 35 | } 36 | ], 37 | "schemes": [ 38 | { 39 | "name": "Pengwin Enterprise 7", 40 | 41 | "background": "#1E1E1E", 42 | "black": "#171421", 43 | "blue": "#12488B", 44 | "brightBlack": "#5E5C64", 45 | "brightBlue": "#2A7BDE", 46 | "brightCyan": "#33C7DE", 47 | "brightGreen": "#33DA7A", 48 | "brightPurple": "#C061CB", 49 | "brightRed": "#F66151", 50 | "brightWhite": "#FFFFFF", 51 | "brightYellow": "#E9AD0C", 52 | "cursorColor": "#FFFFFF", 53 | "cyan": "#2AA1B3", 54 | "foreground": "#E8E8E8", 55 | "green": "#26A269", 56 | "purple": "#A347BA", 57 | "red": "#C01C28", 58 | "selectionBackground": "#FFFFFF", 59 | "white": "#D0CFCC", 60 | "yellow": "#A2734C" 61 | } 62 | ] 63 | } 64 | -------------------------------------------------------------------------------- /linux_files/00-wle.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # Only the default WSL user should run this script 4 | if ! (id -Gn | grep -c "adm.*wheel\|wheel.*adm" >/dev/null); then 5 | return 6 | fi 7 | 8 | # check whether it is WSL1 or WSL2 9 | if [ -n "${WSL_INTEROP}" ]; then 10 | #Export an environment variable for helping other processes 11 | export WSL2=1 12 | # enable external x display for WSL 2 13 | 14 | ipconfig_exec=$(wslpath "C:\\Windows\\System32\\ipconfig.exe") 15 | if (command -v ipconfig.exe >/dev/null 2>&1); then 16 | ipconfig_exec=$(command -v ipconfig.exe) 17 | fi 18 | 19 | wsl2_d_tmp="$(eval "$ipconfig_exec 2> /dev/null" | grep -n -m 1 "Default Gateway.*: [0-9a-z]" | cut -d : -f 1)" 20 | 21 | if [ -n "${wsl2_d_tmp}" ]; then 22 | 23 | wsl2_d_tmp="$(eval "$ipconfig_exec" | sed "$((wsl2_d_tmp - 4))"','"$((wsl2_d_tmp + 0))"'!d' | grep IPv4 | cut -d : -f 2 | sed -e "s|\s||g" -e "s|\r||g")" 24 | export DISPLAY=${wsl2_d_tmp}:0 25 | else 26 | wsl2_d_tmp="$(grep /dev/null 2>&1); then 42 | unset LIBGL_ALWAYS_INDIRECT 43 | else 44 | export LIBGL_ALWAYS_INDIRECT=1 45 | fi 46 | 47 | # if dbus-launch is installed then load it 48 | if (command -v dbus-launch >/dev/null 2>&1); then 49 | eval "$(timeout 2s dbus-launch --auto-syntax)" 50 | fi 51 | 52 | # speed up some GUI apps like gedit 53 | export NO_AT_BRIDGE=1 54 | 55 | export TERM=xterm-256color 56 | 57 | # Fix 'clear' scrolling issues 58 | alias clear='clear -x' 59 | 60 | # Custom aliases 61 | alias ll='ls -al' 62 | 63 | # Check if we have Windows Path 64 | if (command -v cmd.exe >/dev/null 2>&1); then 65 | 66 | # Create a symbolic link to the windows home 67 | 68 | # Here have a issue: %HOMEDRIVE% might be using a custom set location 69 | # moving cmd to where Windows is installed might help: %SYSTEMDRIVE% 70 | wHomeWinPath=$(cmd.exe /c 'cd %SYSTEMDRIVE%\ && echo %HOMEDRIVE%%HOMEPATH%' 2>/dev/null | tr -d '\r') 71 | 72 | if [ ${#wHomeWinPath} -le 3 ]; then #wHomeWinPath contains something like H:\ 73 | wHomeWinPath=$(cmd.exe /c 'cd %SYSTEMDRIVE%\ && echo %USERPROFILE%' 2>/dev/null | tr -d '\r') 74 | fi 75 | 76 | # shellcheck disable=SC2155 77 | export WIN_HOME=$(wslpath -u "${wHomeWinPath}") 78 | 79 | win_home_lnk=${HOME}/winhome 80 | if [ ! -e "${win_home_lnk}" ]; then 81 | ln -s -f "${WIN_HOME}" "${win_home_lnk}" >/dev/null 2>&1 82 | fi 83 | 84 | unset win_home_lnk 85 | 86 | fi 87 | -------------------------------------------------------------------------------- /WrapperShared/Wrapper.cpp: -------------------------------------------------------------------------------- 1 | // FedoraRemixW.cpp : Defines the entry point for the application. 2 | // 3 | 4 | #include "framework.h" 5 | 6 | using namespace std; 7 | 8 | #ifdef VERSION7 9 | constexpr auto EXE_PATH = L"DistroLauncher"; 10 | constexpr auto EXE_NAME = L"WLE.exe"; 11 | #elif VERSION8 12 | constexpr auto EXE_PATH = L"Launcher8"; 13 | constexpr auto EXE_NAME = L"PengwinEnterprise8.exe"; 14 | #elif VERSION9 15 | constexpr auto EXE_PATH = L"Launcher9"; 16 | constexpr auto EXE_NAME = L"PengwinEnterprise9.exe"; 17 | #elif VERSIONX 18 | constexpr auto EXE_PATH = L"LauncherX"; 19 | constexpr auto EXE_NAME = L"PengwinEnterpriseX.exe"; 20 | #endif 21 | 22 | #ifdef SYSTEMD 23 | constexpr auto EXE_PARAMETER = L" -s"; 24 | #else 25 | constexpr auto EXE_PARAMETER = L" "; 26 | #endif 27 | 28 | void RunProcess(LPWSTR cmdline) 29 | { 30 | // additional information 31 | STARTUPINFOW si; 32 | PROCESS_INFORMATION pi; 33 | 34 | // set the size of the structures 35 | ZeroMemory(&si, sizeof si); 36 | si.cb = sizeof si; 37 | ZeroMemory(&pi, sizeof pi); 38 | 39 | si.dwFlags = STARTF_USESHOWWINDOW; 40 | 41 | #ifdef NOWINDOW 42 | si.wShowWindow = SW_HIDE; 43 | #else 44 | si.wShowWindow = SW_NORMAL; 45 | #endif 46 | 47 | // start the program up 48 | CreateProcessW 49 | ( 50 | nullptr, // the path 51 | cmdline, // Command line 52 | nullptr, // Process handle not inheritable 53 | nullptr, // Thread handle not inheritable 54 | FALSE, // Set handle inheritance to FALSE 55 | 0, // Opens file in a separate console 56 | nullptr, // Use parent's environment block 57 | nullptr, // Use parent's starting directory 58 | &si, // Pointer to STARTUPINFO structure 59 | &pi // Pointer to PROCESS_INFORMATION structure 60 | ); 61 | 62 | // Wait until child process exits. 63 | //WaitForSingleObject(pi.hProcess, INFINITE); 64 | 65 | // Close process and thread handles. 66 | CloseHandle(pi.hProcess); 67 | CloseHandle(pi.hThread); 68 | } 69 | 70 | int APIENTRY wWinMain(_In_ HINSTANCE hInstance, 71 | _In_opt_ HINSTANCE hPrevInstance, 72 | _In_ LPWSTR lpCmdLine, 73 | _In_ int nCmdShow) 74 | { 75 | wchar_t buff[1024]; 76 | 77 | GetModuleFileNameW(nullptr, 78 | buff, _countof(buff)); 79 | 80 | PathCchRemoveFileSpec(buff, _countof(buff)); 81 | PathCchRemoveFileSpec(buff, _countof(buff)); 82 | PathCchAppendEx(buff, _countof(buff), EXE_PATH, PATHCCH_ALLOW_LONG_PATHS); 83 | PathCchAppendEx(buff, _countof(buff), EXE_NAME, PATHCCH_ALLOW_LONG_PATHS); 84 | 85 | wcscat_s(buff, _countof(buff), EXE_PARAMETER); 86 | wcscat_s(buff, _countof(buff), lpCmdLine); 87 | 88 | RunProcess(buff); 89 | 90 | return 0; 91 | } 92 | -------------------------------------------------------------------------------- /appMetadata/en/baseListing/description.txt: -------------------------------------------------------------------------------- 1 | Pengwin Enterprise is a Windows Subsystem for Linux (WSL) solution compatible with mainstream enterprise Linux distributions such as **Oracle Linux** and **Red Hat Enterprise Linux**. It is designed for enterprise users who need a secure, reliable, and fast Linux environment on their Windows machines. 2 | 3 | Pengwin Enterprise can be customized to fit the organization's needs and leverage existing Linux infrastructure and subscriptions. Pengwin Enterprise also comes with a rich set of tools and packages to help you work productively with Linux on Windows. 4 | 5 | Whether you are a developer, a system administrator, a data scientist, or a power user, Pengwin Enterprise can meet your needs and enhance your workflow. 6 | 7 | Pengwin Enterprise installs itself as a menu entry in Windows Terminal. We crafted the background and the color palette for the best looking and usability in Windows Terminal. Configuring Pengwin Enterprise as your Default Profile in Windows Terminal allows greater integration with the Windows environment. Specifically, right-click a folder in File Explorer and select Open in Terminal. It will open in the chosen directory, making it easier to access all necessary files and tools from within the terminal. 8 | 9 | Access your C:\ drive at /mnt/C automatically. Copy and paste from Visual Studio into Emacs. Open Word from zsh. Pipe ifconfig.exe output into a Python script. It is a hybrid world. Pengwin Enterprise bridges the gap between Windows and Linux. 10 | 11 | Pengwin Enterprise is designed for custom deployments in consultation with Whitewater Foundry's international team of WSL experts. 12 | 13 | This build provided on the Microsoft Store is built from Scientific Linux, for demonstration purposes and personal use only. 14 | 15 | Businesses and institutions who wish to license Pengwin Enterprise, use Pengwin Enterprise with Red Hat Enterprise Linux (Red Hat Enterprise Linux subscription required), and obtain a support contract for Pengwin Enterprise should e-mail enterprise@whitewaterfoundry.com or visit https://www.whitewaterfoundry.com/pengwin-enterprise for details. 16 | 17 | Individual end-users are very strongly encouraged to obtain Pengwin or Fedora Remix for WSL instead. Pengwin includes end-user support and several usability modifications and tools, such as pengwin-setup, to improve the overall WSL experience for end-users. 18 | 19 | The Pengwin Enterprise build provided on the Microsoft Store does NOT include Red Hat Enterprise Linux packages, end-user support, pengwin-setup, or the WSL usability features that accompany Pengwin or are built into Pengwin Enterprise in a custom deployment. 20 | 21 | Whitewater Foundry is a Microsoft Partner, Red Hat Business Partner, and licensee in the Open Innovation Network. 22 | 23 | Pengwin Enterprise is not endorsed by or affiliated with the CentOS Project, Scientific Linux, Rocky Linux, or Fermi National Accelerator Laboratory. 24 | 25 | DISCLAIMER: Windows Insider Preview versions are not production-ready and can contain incompatibilities or bugs that affect the performance of Pengwin. We support insider versions on a best-effort basis. 26 | -------------------------------------------------------------------------------- /appMetadata8/en-us/baseListing/description.txt: -------------------------------------------------------------------------------- 1 | Pengwin Enterprise is a Windows Subsystem for Linux (WSL) solution compatible with mainstream enterprise Linux distributions such as **Oracle Linux** and **Red Hat Enterprise Linux**. It is designed for enterprise users who need a secure, reliable, and fast Linux environment on their Windows machines. 2 | 3 | Pengwin Enterprise can be customized to fit the organization's needs and leverage existing Linux infrastructure and subscriptions. Pengwin Enterprise also comes with a rich set of tools and packages to help you work productively with Linux on Windows. 4 | 5 | Whether you are a developer, a system administrator, a data scientist, or a power user, Pengwin Enterprise can meet your needs and enhance your workflow. 6 | 7 | Pengwin Enterprise installs itself as a menu entry in Windows Terminal. We crafted the background and the color palette for the best looking and usability in Windows Terminal. Configuring Pengwin Enterprise as your Default Profile in Windows Terminal allows greater integration with the Windows environment. Specifically, right-click a folder in File Explorer and select Open in Terminal. It will open in the chosen directory, making it easier to access all necessary files and tools from within the terminal. 8 | 9 | Access your C:\ drive at /mnt/C automatically. Copy and paste from Visual Studio into Emacs. Open Word from zsh. Pipe ifconfig.exe output into a Python script. It is a hybrid world. Pengwin Enterprise bridges the gap between Windows and Linux. 10 | 11 | Pengwin Enterprise is designed for custom deployments in consultation with Whitewater Foundry's international team of WSL experts. 12 | 13 | This build provided on the Microsoft Store is built from Rocky Linux, for demonstration purposes and personal use only. 14 | 15 | Businesses and institutions who wish to license Pengwin Enterprise, use Pengwin Enterprise with Red Hat Enterprise Linux (Red Hat Enterprise Linux subscription required), and obtain a support contract for Pengwin Enterprise should e-mail enterprise@whitewaterfoundry.com or visit https://www.whitewaterfoundry.com/pengwin-enterprise for details. 16 | 17 | Individual end-users are very strongly encouraged to obtain Pengwin or Fedora Remix for WSL instead. Pengwin includes end-user support and several usability modifications and tools, such as pengwin-setup, to improve the overall WSL experience for end-users. 18 | 19 | The Pengwin Enterprise build provided on the Microsoft Store does NOT include Red Hat Enterprise Linux packages, end-user support, pengwin-setup, or the WSL usability features that accompany Pengwin or are built into Pengwin Enterprise in a custom deployment. 20 | 21 | Whitewater Foundry is a Microsoft Partner, Red Hat Business Partner, and licensee in the Open Innovation Network. 22 | 23 | Pengwin Enterprise is not endorsed by or affiliated with the CentOS Project, Scientific Linux, Rocky Linux, or Fermi National Accelerator Laboratory. 24 | 25 | DISCLAIMER: Windows Insider Preview versions are not production-ready and can contain incompatibilities or bugs that affect the performance of Pengwin. We support insider versions on a best-effort basis. 26 | -------------------------------------------------------------------------------- /appMetadata9/en-us/baseListing/description.txt: -------------------------------------------------------------------------------- 1 | Pengwin Enterprise is a Windows Subsystem for Linux (WSL) solution compatible with mainstream enterprise Linux distributions such as **Oracle Linux** and **Red Hat Enterprise Linux**. It is designed for enterprise users who need a secure, reliable, and fast Linux environment on their Windows machines. 2 | 3 | Pengwin Enterprise can be customized to fit the organization's needs and leverage existing Linux infrastructure and subscriptions. Pengwin Enterprise also comes with a rich set of tools and packages to help you work productively with Linux on Windows. 4 | 5 | Whether you are a developer, a system administrator, a data scientist, or a power user, Pengwin Enterprise can meet your needs and enhance your workflow. 6 | 7 | Pengwin Enterprise installs itself as a menu entry in Windows Terminal. We crafted the background and the color palette for the best looking and usability in Windows Terminal. Configuring Pengwin Enterprise as your Default Profile in Windows Terminal allows greater integration with the Windows environment. Specifically, right-click a folder in File Explorer and select Open in Terminal. It will open in the chosen directory, making it easier to access all necessary files and tools from within the terminal. 8 | 9 | Access your C:\ drive at /mnt/C automatically. Copy and paste from Visual Studio into Emacs. Open Word from zsh. Pipe ifconfig.exe output into a Python script. It is a hybrid world. Pengwin Enterprise bridges the gap between Windows and Linux. 10 | 11 | Pengwin Enterprise is designed for custom deployments in consultation with Whitewater Foundry's international team of WSL experts. 12 | 13 | This build provided on the Microsoft Store is built from Rocky Linux, for demonstration purposes and personal use only. 14 | 15 | Businesses and institutions who wish to license Pengwin Enterprise, use Pengwin Enterprise with Red Hat Enterprise Linux (Red Hat Enterprise Linux subscription required), and obtain a support contract for Pengwin Enterprise should e-mail enterprise@whitewaterfoundry.com or visit https://www.whitewaterfoundry.com/pengwin-enterprise for details. 16 | 17 | Individual end-users are very strongly encouraged to obtain Pengwin or Fedora Remix for WSL instead. Pengwin includes end-user support and several usability modifications and tools, such as pengwin-setup, to improve the overall WSL experience for end-users. 18 | 19 | The Pengwin Enterprise build provided on the Microsoft Store does NOT include Red Hat Enterprise Linux packages, end-user support, pengwin-setup, or the WSL usability features that accompany Pengwin or are built into Pengwin Enterprise in a custom deployment. 20 | 21 | Whitewater Foundry is a Microsoft Partner, Red Hat Business Partner, and licensee in the Open Innovation Network. 22 | 23 | Pengwin Enterprise is not endorsed by or affiliated with the CentOS Project, Scientific Linux, Rocky Linux, or Fermi National Accelerator Laboratory. 24 | 25 | DISCLAIMER: Windows Insider Preview versions are not production-ready and can contain incompatibilities or bugs that affect the performance of Pengwin. We support insider versions on a best-effort basis. 26 | -------------------------------------------------------------------------------- /azure-pipelines.yml: -------------------------------------------------------------------------------- 1 | trigger: 2 | - master 3 | 4 | pool: 5 | vmImage: 'windows-2022' 6 | 7 | variables: 8 | - name: solution 9 | value: '**/*.sln' 10 | - name: buildPlatform 11 | value: 'x64' 12 | - name: buildConfiguration 13 | value: 'Release' 14 | - name: appxPackageDir 15 | value: '$(System.DefaultWorkingDirectory)\AppxPackages' 16 | 17 | steps: 18 | - task: NuGetToolInstaller@1 19 | 20 | - task: NuGetCommand@2 21 | inputs: 22 | restoreSolution: '$(solution)' 23 | 24 | - task: DownloadSecureFile@1 25 | name: signingCertDD0 26 | inputs: 27 | secureFile: 'store-DD0.pfx' 28 | - task: Bash@3 29 | inputs: 30 | targetType: 'inline' 31 | script: | 32 | version=$(sed -n -E '/^ +Version=/s/^ +Version="([0-9\.]*)(.*)/\1/p' PengwinEnterprise8/Package.appxmanifest) 33 | sed -E -i "s/(^.*commandline.*PengwinEnterprise8_)([0-9\.]+)(_.*$)/\1${version}\3/g" PengwinEnterprise8/Public/Fragments/PengwinEnterprise8.json 34 | 35 | version=$(sed -n -E '/^ +Version=/s/^ +Version="([0-9\.]*)(.*)/\1/p' PengwinEnterprise9/Package.appxmanifest) 36 | sed -E -i "s/(^.*commandline.*PengwinEnterprise9_)([0-9\.]+)(_.*$)/\1${version}\3/g" PengwinEnterprise9/Public/Fragments/PengwinEnterprise9.json 37 | shortVersion=$(echo "${version}" | cut -d. -f1,2) 38 | sed -E -i "s/(^.*wsl\.distribution-version[^0-9]*)([0-9\.]+)(.*$)/\1${shortVersion}\3/g" PengwinEnterprise9/Public/Fragments/PengwinEnterprise9.json 39 | 40 | version=$(sed -n -E '/^ +Version=/s/^ +Version="([0-9\.]*)(.*)/\1/p' PengwinEnterprise10/Package.appxmanifest) 41 | sed -E -i "s/(^.*commandline.*PengwinEnterprise10_)([0-9\.]+)(_.*$)/\1${version}\3/g" PengwinEnterprise10/Public/Fragments/PengwinEnterprise10.json 42 | shortVersion=$(echo "${version}" | cut -d. -f1,2) 43 | sed -E -i "s/(^.*wsl\.distribution-version[^0-9]*)([0-9\.]+)(.*$)/\1${shortVersion}\3/g" PengwinEnterprise9/Public/Fragments/PengwinEnterprise10.json 44 | 45 | version=$(sed -n -E '/^ +Version=/s/^ +Version="([0-9\.]*)(.*)/\1/p' PengwinEnterprise/Package.appxmanifest) 46 | sed -E -i "s/(^.*commandline.*WLinuxEnterprise_)([0-9\.]+)(_.*$)/\1${version}\3/g" PengwinEnterprise/Public/Fragments/PengwinEnterprise7.json 47 | 48 | - task: DownloadSecureFile@1 49 | name: signingCertDCF 50 | inputs: 51 | secureFile: 'store-DCF.pfx' 52 | 53 | - template: build-version.yml 54 | parameters: 55 | pipeline: '17' 56 | install_version: '9' 57 | distro_version: '9' 58 | certificate_name: 'signingCertDD0' 59 | app_id: '9P70GX2HQNHN' 60 | package_name: 'PengwinEnterprise9' 61 | 62 | - template: build-version.yml 63 | parameters: 64 | pipeline: '12' 65 | install_version: '8' 66 | distro_version: '8' 67 | certificate_name: 'signingCertDD0' 68 | app_id: '9N2XZFWMRRQW' 69 | package_name: 'PengwinEnterprise8' 70 | 71 | #- template: build-version.yml 72 | # parameters: 73 | # pipeline: '7' 74 | # install_version: '' 75 | # distro_version: '7' 76 | # certificate_name: 'signingCertDCF' 77 | # app_id: '9N8LP0X93VCP' 78 | # package_name: 'WLinuxEnterprise' 79 | 80 | - task: PublishBuildArtifacts@1 81 | inputs: 82 | PathtoPublish: '$(Build.ArtifactStagingDirectory)' 83 | ArtifactName: 'drop' 84 | publishLocation: 'Container' 85 | -------------------------------------------------------------------------------- /licenses/PHP.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------- 2 | The PHP License, version 3.01 3 | Copyright (c) 1999 - 2018 The PHP Group. All rights reserved. 4 | -------------------------------------------------------------------- 5 | 6 | Redistribution and use in source and binary forms, with or without 7 | modification, is permitted provided that the following conditions 8 | are met: 9 | 10 | 1. Redistributions of source code must retain the above copyright 11 | notice, this list of conditions and the following disclaimer. 12 | 13 | 2. Redistributions in binary form must reproduce the above copyright 14 | notice, this list of conditions and the following disclaimer in 15 | the documentation and/or other materials provided with the 16 | distribution. 17 | 18 | 3. The name "PHP" must not be used to endorse or promote products 19 | derived from this software without prior written permission. For 20 | written permission, please contact group@php.net. 21 | 22 | 4. Products derived from this software may not be called "PHP", nor 23 | may "PHP" appear in their name, without prior written permission 24 | from group@php.net. You may indicate that your software works in 25 | conjunction with PHP by saying "Foo for PHP" instead of calling 26 | it "PHP Foo" or "phpfoo" 27 | 28 | 5. The PHP Group may publish revised and/or new versions of the 29 | license from time to time. Each version will be given a 30 | distinguishing version number. 31 | Once covered code has been published under a particular version 32 | of the license, you may always continue to use it under the terms 33 | of that version. You may also choose to use such covered code 34 | under the terms of any subsequent version of the license 35 | published by the PHP Group. No one other than the PHP Group has 36 | the right to modify the terms applicable to covered code created 37 | under this License. 38 | 39 | 6. Redistributions of any form whatsoever must retain the following 40 | acknowledgment: 41 | "This product includes PHP software, freely available from 42 | ". 43 | 44 | THIS SOFTWARE IS PROVIDED BY THE PHP DEVELOPMENT TEAM ``AS IS'' AND 45 | ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 46 | THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A 47 | PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE PHP 48 | DEVELOPMENT TEAM OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 49 | INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 50 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 51 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 52 | HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 53 | STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 54 | ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 55 | OF THE POSSIBILITY OF SUCH DAMAGE. 56 | 57 | -------------------------------------------------------------------- 58 | 59 | This software consists of voluntary contributions made by many 60 | individuals on behalf of the PHP Group. 61 | 62 | The PHP Group can be contacted via Email at group@php.net. 63 | 64 | For more information on the PHP Group and the PHP project, 65 | please see . 66 | 67 | PHP includes the Zend Engine, freely available at 68 | . -------------------------------------------------------------------------------- /LauncherShared/Helpers.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) Microsoft. All rights reserved. 3 | // Licensed under the terms described in the LICENSE file in the root of this project. 4 | // 5 | 6 | #include "stdafx.h" 7 | 8 | namespace 9 | { 10 | HRESULT FormatMessageHelperVa(DWORD messageId, va_list vaList, std::wstring* message); 11 | HRESULT PrintMessageVa(DWORD messageId, va_list vaList); 12 | } 13 | 14 | std::wstring Helpers::GetUserInput(DWORD promptMsg, DWORD maxCharacters) 15 | { 16 | PrintMessage(promptMsg); 17 | const size_t bufferSize = maxCharacters + 1; 18 | const std::unique_ptr inputBuffer(new wchar_t[bufferSize]); 19 | std::wstring input; 20 | if (wscanf_s(L"%s", inputBuffer.get(), static_cast(bufferSize)) == 1) 21 | { 22 | input = inputBuffer.get(); 23 | } 24 | 25 | // Throw away any additional chracters that did not fit in the buffer. 26 | wchar_t wch; 27 | do 28 | { 29 | wch = getwchar(); 30 | } 31 | while (wch != L'\n' && wch != WEOF); 32 | 33 | return input; 34 | } 35 | 36 | void Helpers::PrintErrorMessage(HRESULT error) 37 | { 38 | PWSTR buffer = nullptr; 39 | FormatMessageW(FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_ALLOCATE_BUFFER, 40 | nullptr, 41 | error, 42 | 0, 43 | (PWSTR)&buffer, 44 | 0, 45 | nullptr); 46 | 47 | PrintMessage(MSG_ERROR_CODE, error, buffer); 48 | if (buffer != nullptr) 49 | { 50 | HeapFree(GetProcessHeap(), 0, buffer); 51 | } 52 | } 53 | 54 | HRESULT Helpers::PrintMessage(DWORD messageId, ...) 55 | { 56 | va_list argList; 57 | va_start(argList, messageId); 58 | const HRESULT hr = PrintMessageVa(messageId, argList); 59 | va_end(argList); 60 | return hr; 61 | } 62 | 63 | void Helpers::PromptForInput() 64 | { 65 | // ReSharper disable once CppFunctionResultShouldBeUsed 66 | PrintMessage(MSG_PRESS_A_KEY); 67 | _getwch(); 68 | } 69 | 70 | void Helpers::SendStartProcessSignal() 71 | { 72 | wprintf(L"\033]9;4;3;100\033\\"); 73 | } 74 | 75 | void Helpers::SendStopProcessSignal() 76 | { 77 | wprintf(L"\033]9;4;0;100\033\\"); 78 | } 79 | 80 | namespace 81 | { 82 | HRESULT FormatMessageHelperVa(DWORD messageId, va_list vaList, std::wstring* message) 83 | { 84 | PWSTR buffer = nullptr; 85 | const DWORD written = FormatMessageW(FORMAT_MESSAGE_FROM_HMODULE | FORMAT_MESSAGE_ALLOCATE_BUFFER, 86 | nullptr, 87 | messageId, 88 | 0, 89 | (PWSTR)&buffer, 90 | 10, 91 | &vaList); 92 | *message = buffer; 93 | if (buffer != nullptr) 94 | { 95 | HeapFree(GetProcessHeap(), 0, buffer); 96 | } 97 | 98 | return written > 0 ? S_OK : HRESULT_FROM_WIN32(GetLastError()); 99 | } 100 | 101 | HRESULT PrintMessageVa(DWORD messageId, va_list vaList) 102 | { 103 | std::wstring message; 104 | const HRESULT hr = FormatMessageHelperVa(messageId, vaList, &message); 105 | if (SUCCEEDED(hr)) 106 | { 107 | wprintf(L"%ls", message.c_str()); 108 | } 109 | 110 | return hr; 111 | } 112 | } 113 | -------------------------------------------------------------------------------- /LauncherShared/WslApiLoader.cpp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) Microsoft. All rights reserved. 3 | // Licensed under the terms described in the LICENSE file in the root of this project. 4 | // 5 | 6 | #include "stdafx.h" 7 | #include "WslApiLoader.h" 8 | 9 | WslApiLoader::WslApiLoader(const std::wstring& distributionName) : 10 | _distributionName(distributionName) 11 | { 12 | _wslApiDll = LoadLibraryExW(L"wslapi.dll", nullptr, LOAD_LIBRARY_SEARCH_SYSTEM32); 13 | if (_wslApiDll != nullptr) 14 | { 15 | _isDistributionRegistered = (WSL_IS_DISTRIBUTION_REGISTERED)GetProcAddress( 16 | _wslApiDll, "WslIsDistributionRegistered"); 17 | _registerDistribution = (WSL_REGISTER_DISTRIBUTION)GetProcAddress(_wslApiDll, "WslRegisterDistribution"); 18 | _unRegisterDistribution = (WSL_UN_REGISTER_DISTRIBUTION)GetProcAddress(_wslApiDll, "WslUnregisterDistribution"); 19 | _configureDistribution = (WSL_CONFIGURE_DISTRIBUTION)GetProcAddress(_wslApiDll, "WslConfigureDistribution"); 20 | _launchInteractive = (WSL_LAUNCH_INTERACTIVE)GetProcAddress(_wslApiDll, "WslLaunchInteractive"); 21 | _launch = (WSL_LAUNCH)GetProcAddress(_wslApiDll, "WslLaunch"); 22 | } 23 | } 24 | 25 | WslApiLoader::~WslApiLoader() 26 | { 27 | if (_wslApiDll != nullptr) 28 | { 29 | FreeLibrary(_wslApiDll); 30 | } 31 | } 32 | 33 | BOOL WslApiLoader::WslIsOptionalComponentInstalled() 34 | { 35 | return _wslApiDll != nullptr && 36 | _isDistributionRegistered != nullptr && 37 | _registerDistribution != nullptr && 38 | _configureDistribution != nullptr && 39 | _launchInteractive != nullptr && 40 | _launch != nullptr; 41 | } 42 | 43 | BOOL WslApiLoader::WslIsDistributionRegistered() 44 | { 45 | return _isDistributionRegistered(_distributionName.c_str()); 46 | } 47 | 48 | HRESULT WslApiLoader::WslRegisterDistribution() 49 | { 50 | const HRESULT hr = _registerDistribution(_distributionName.c_str(), L"install.tar.gz"); 51 | if (FAILED(hr)) 52 | { 53 | Helpers::PrintMessage(MSG_WSL_REGISTER_DISTRIBUTION_FAILED, hr); 54 | } 55 | 56 | return hr; 57 | } 58 | 59 | HRESULT WslApiLoader::WslUnregisterDistribution() const 60 | { 61 | const auto hr = _unRegisterDistribution(_distributionName.c_str()); 62 | if (FAILED(hr)) 63 | { 64 | wprintf(L"failed"); 65 | Helpers::PrintMessage(MSG_WSL_UN_REGISTER_DISTRIBUTION_FAILED, hr); 66 | } 67 | 68 | return hr; 69 | } 70 | 71 | HRESULT WslApiLoader::WslConfigureDistribution(ULONG defaultUID, WSL_DISTRIBUTION_FLAGS wslDistributionFlags) 72 | { 73 | const HRESULT hr = _configureDistribution(_distributionName.c_str(), defaultUID, wslDistributionFlags); 74 | if (FAILED(hr)) 75 | { 76 | Helpers::PrintMessage(MSG_WSL_CONFIGURE_DISTRIBUTION_FAILED, hr); 77 | } 78 | 79 | return hr; 80 | } 81 | 82 | HRESULT WslApiLoader::WslLaunchInteractive(PCWSTR command, BOOL useCurrentWorkingDirectory, DWORD* exitCode) 83 | { 84 | const HRESULT hr = _launchInteractive(_distributionName.c_str(), command, useCurrentWorkingDirectory, exitCode); 85 | if (FAILED(hr)) 86 | { 87 | Helpers::PrintMessage(MSG_WSL_LAUNCH_INTERACTIVE_FAILED, command, hr); 88 | } 89 | 90 | return hr; 91 | } 92 | 93 | HRESULT WslApiLoader::WslLaunch(PCWSTR command, BOOL useCurrentWorkingDirectory, HANDLE stdIn, HANDLE stdOut, 94 | HANDLE stdErr, HANDLE* process) 95 | { 96 | const HRESULT hr = _launch(_distributionName.c_str(), command, useCurrentWorkingDirectory, stdIn, stdOut, stdErr, 97 | process); 98 | if (FAILED(hr)) 99 | { 100 | Helpers::PrintMessage(MSG_WSL_LAUNCH_FAILED, command, hr); 101 | } 102 | 103 | return hr; 104 | } 105 | -------------------------------------------------------------------------------- /LauncherShared/messages.mc: -------------------------------------------------------------------------------- 1 | LanguageNames = (English=0x409:MSG00409) 2 | 3 | MessageId=1001 SymbolicName=MSG_WSL_REGISTER_DISTRIBUTION_FAILED 4 | Language=English 5 | WslRegisterDistribution failed with error: 0x%1!x! 6 | . 7 | 8 | MessageId=1002 SymbolicName=MSG_WSL_CONFIGURE_DISTRIBUTION_FAILED 9 | Language=English 10 | WslGetDistributionConfiguration failed with error: 0x%1!x! 11 | . 12 | 13 | MessageId=1003 SymbolicName=MSG_WSL_LAUNCH_INTERACTIVE_FAILED 14 | Language=English 15 | WslLaunchInteractive %1 failed with error: 0x%2!x! 16 | . 17 | 18 | MessageId=1004 SymbolicName=MSG_WSL_LAUNCH_FAILED 19 | Language=English 20 | WslLaunch %1 failed with error: 0x%2!x! 21 | . 22 | 23 | MessageId=1005 SymbolicName=MSG_USAGE 24 | Language=English 25 | Launches or configures a Linux distribution. 26 | 27 | Usage: 28 | 29 | Launches the user's default shell in the user's home directory. 30 | 31 | --systemd, -s 32 | Launches the user's default shell in the user's home directory via systemd. 33 | 34 | install [--root] 35 | Install the distribuiton and do not launch the shell when complete. 36 | --root 37 | Do not create a user account and leave the default user set to root. 38 | 39 | run, -c 40 | Run the provided command line in the current working directory. If no 41 | command line is provided, the default shell is launched. 42 | 43 | config [setting [value]] 44 | Configure settings for this distribution. 45 | Settings: 46 | --default-user 47 | Sets the default user to . This must be an existing user. 48 | 49 | help 50 | Print usage information. 51 | . 52 | 53 | MessageId=1006 SymbolicName=MSG_STATUS_INSTALLING 54 | Language=English 55 | Unpacking Pengwin Enterprise, this may take a few minutes... 56 | . 57 | 58 | MessageId=1007 SymbolicName=MSG_INSTALL_SUCCESS 59 | Language=English 60 | Installation successful! 61 | . 62 | 63 | MessageId=1008 SymbolicName=MSG_ERROR_CODE 64 | Language=English 65 | Error: 0x%1!x! %2 66 | . 67 | 68 | MessageId=1009 SymbolicName=MSG_ENTER_USERNAME 69 | Language=English 70 | Enter new UNIX username: %0 71 | . 72 | 73 | MessageId=1010 SymbolicName=MSG_CREATE_USER_PROMPT 74 | Language=English 75 | Please create a default Linux user account. The username does not need to match your Windows username. 76 | For more information visit: https://aka.ms/wslusers 77 | . 78 | 79 | MessageId=1011 SymbolicName=MSG_PRESS_A_KEY 80 | Language=English 81 | Press any key to continue... 82 | . 83 | 84 | MessageId=1012 SymbolicName=MSG_MISSING_OPTIONAL_COMPONENT 85 | Language=English 86 | The Windows Subsystem for Linux optional component is not enabled. Please enable it and try again. 87 | See https://aka.ms/wslinstall for details. 88 | . 89 | 90 | MessageId=1013 SymbolicName=MSG_INSTALL_ALREADY_EXISTS 91 | Language=English 92 | The distribution installation has become corrupted. 93 | Please select Reset from App Settings or uninstall and reinstall the app. 94 | . 95 | 96 | MessageId=1014 SymbolicName=MSG_CREATE_ROOT_PROMPT 97 | Language=English 98 | Please create a root account password. This is the account used to perform administrative functions on Linux. 99 | . 100 | 101 | MessageId=1015 SymbolicName=MSG_WELCOME_MSG_PROMPT 102 | Language=English 103 | Welcome to Pengwin Enterprise. 104 | . 105 | 106 | MessageId=1016 SymbolicName=MSG_ENABLE_VIRTUALIZATION 107 | Language=English 108 | Please enable the Virtual Machine Platform Windows feature and ensure virtualization is enabled in the BIOS. 109 | For information please visit https://aka.ms/enablevirtualization 110 | . 111 | 112 | MessageId=1017 SymbolicName=MSG_WSL_UN_REGISTER_DISTRIBUTION_FAILED 113 | Language=English 114 | WslUnRegisterDistribution failed with error: 0x%1!x! 115 | . 116 | -------------------------------------------------------------------------------- /PengwinEnterprise9W/PengwinEnterprise9W.vcxproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Debug 6 | x64 7 | 8 | 9 | Release 10 | x64 11 | 12 | 13 | 14 | 16.0 15 | Win32Proj 16 | {750176be-b029-4a07-80b1-2df57c39e81b} 17 | PengwinEnterprise9W 18 | 10.0 19 | 20 | 21 | 22 | Application 23 | true 24 | v143 25 | Unicode 26 | 27 | 28 | Application 29 | false 30 | v143 31 | true 32 | Unicode 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | Level3 50 | true 51 | _DEBUG;_WINDOWS;VERSION9;NOWINDOW;%(PreprocessorDefinitions) 52 | true 53 | 54 | 55 | Windows 56 | true 57 | pathcch.lib;Shlwapi.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) 58 | 59 | 60 | 61 | 62 | Level3 63 | true 64 | true 65 | true 66 | NDEBUG;_WINDOWS;VERSION9;NOWINDOW;%(PreprocessorDefinitions) 67 | true 68 | 69 | 70 | Windows 71 | true 72 | true 73 | true 74 | pathcch.lib;Shlwapi.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) 75 | 76 | 77 | 78 | 79 | 80 | 81 | -------------------------------------------------------------------------------- /LauncherShared/LauncherShared.vcxitems: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath) 5 | true 6 | {87f82700-d870-401f-8bf1-4d11a12ac8d7} 7 | 8 | 9 | 10 | %(AdditionalIncludeDirectories);$(MSBuildThisFileDirectory) 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | Create 22 | Create 23 | Create 24 | Create 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | false 46 | false 47 | false 48 | false 49 | mc %(FullPath) 50 | mc %(FullPath) 51 | mc %(FullPath) 52 | mc %(FullPath) 53 | Compiling Messages... 54 | %(Filename).rc;%(Filename).h;MSG0409.bin 55 | Compiling Messages... 56 | %(Filename).rc;%(Filename).h;MSG0409.bin 57 | Compiling Messages... 58 | %(Filename).rc;%(Filename).h;MSG0409.bin 59 | Compiling Messages... 60 | %(Filename).rc;%(Filename).h;MSG0409.bin 61 | 62 | 63 | -------------------------------------------------------------------------------- /PengwinEnterprise9SW/PengwinEnterprise9SW.vcxproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Debug 6 | x64 7 | 8 | 9 | Release 10 | x64 11 | 12 | 13 | 14 | 16.0 15 | Win32Proj 16 | {c9060a39-e19d-464c-83ea-0d673a0b2b26} 17 | PengwinEnterprise9SW 18 | 10.0 19 | 20 | 21 | 22 | Application 23 | true 24 | v143 25 | Unicode 26 | 27 | 28 | Application 29 | false 30 | v143 31 | true 32 | Unicode 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | Level3 50 | true 51 | _DEBUG;_WINDOWS;VERSION9;NOWINDOW;SYSTEMD;%(PreprocessorDefinitions) 52 | true 53 | 54 | 55 | Windows 56 | true 57 | pathcch.lib;Shlwapi.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) 58 | 59 | 60 | 61 | 62 | Level3 63 | true 64 | true 65 | true 66 | NDEBUG;_WINDOWS;VERSION9;NOWINDOW;SYSTEMD;%(PreprocessorDefinitions) 67 | true 68 | 69 | 70 | Windows 71 | true 72 | true 73 | true 74 | pathcch.lib;Shlwapi.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) 75 | 76 | 77 | 78 | 79 | 80 | 81 | -------------------------------------------------------------------------------- /PengwinEnterprise7W/PengwinEnterprise7W.vcxproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Debug 6 | x64 7 | 8 | 9 | Release 10 | x64 11 | 12 | 13 | 14 | 16.0 15 | Win32Proj 16 | {f9040e6f-cea4-49a4-b5d0-11379a5c1d84} 17 | PengwinEnterprise7W 18 | 10.0 19 | 20 | 21 | 22 | Application 23 | true 24 | v143 25 | Unicode 26 | 27 | 28 | Application 29 | false 30 | v143 31 | true 32 | Unicode 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | Level3 50 | true 51 | VERSION7;NOWINDOW 52 | true 53 | Create 54 | framework.h 55 | 56 | 57 | Windows 58 | true 59 | pathcch.lib;Shlwapi.lib;%(AdditionalDependencies) 60 | 61 | 62 | 63 | 64 | Level3 65 | true 66 | true 67 | true 68 | VERSION7;NOWINDOW 69 | true 70 | Create 71 | framework.h 72 | 73 | 74 | Windows 75 | true 76 | true 77 | true 78 | pathcch.lib;Shlwapi.lib;%(AdditionalDependencies) 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | -------------------------------------------------------------------------------- /PengwinEnterprise8W/PengwinEnterprise8W.vcxproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Debug 6 | x64 7 | 8 | 9 | Release 10 | x64 11 | 12 | 13 | 14 | 16.0 15 | Win32Proj 16 | {6dadda46-7c10-4cb3-a0bd-2d8c2381e15d} 17 | PengwinEnterprise8W 18 | 10.0 19 | 20 | 21 | 22 | Application 23 | true 24 | v143 25 | Unicode 26 | 27 | 28 | Application 29 | false 30 | v143 31 | true 32 | Unicode 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | Level3 50 | true 51 | VERSION8;NOWINDOW 52 | true 53 | Create 54 | framework.h 55 | 56 | 57 | Windows 58 | true 59 | pathcch.lib;Shlwapi.lib;%(AdditionalDependencies) 60 | 61 | 62 | 63 | 64 | Level3 65 | true 66 | true 67 | true 68 | VERSION8;NOWINDOW 69 | true 70 | Create 71 | framework.h 72 | 73 | 74 | Windows 75 | true 76 | true 77 | true 78 | pathcch.lib;Shlwapi.lib;%(AdditionalDependencies) 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | -------------------------------------------------------------------------------- /PengwinEnterprise7SW/PengwinEnterprise7SW.vcxproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Debug 6 | x64 7 | 8 | 9 | Release 10 | x64 11 | 12 | 13 | 14 | 16.0 15 | Win32Proj 16 | {26ba9cd3-ea71-4317-b945-6f62aace5c49} 17 | PengwinEnterprise7SW 18 | 10.0 19 | 20 | 21 | 22 | Application 23 | true 24 | v143 25 | Unicode 26 | 27 | 28 | Application 29 | false 30 | v143 31 | true 32 | Unicode 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | Level3 50 | true 51 | VERSION7;NOWINDOW;SYSTEMD 52 | true 53 | Create 54 | framework.h 55 | 56 | 57 | Windows 58 | true 59 | pathcch.lib;Shlwapi.lib;%(AdditionalDependencies) 60 | 61 | 62 | 63 | 64 | Level3 65 | true 66 | true 67 | true 68 | VERSION7;NOWINDOW;SYSTEMD 69 | true 70 | Create 71 | framework.h 72 | 73 | 74 | Windows 75 | true 76 | true 77 | true 78 | pathcch.lib;Shlwapi.lib;%(AdditionalDependencies) 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | -------------------------------------------------------------------------------- /PengwinEnterprise8SW/PengwinEnterprise8SW.vcxproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Debug 6 | x64 7 | 8 | 9 | Release 10 | x64 11 | 12 | 13 | 14 | 16.0 15 | Win32Proj 16 | {8e3f151b-510b-4691-9862-830f180b22bf} 17 | PengwinEnterprise8SW 18 | 10.0 19 | 20 | 21 | 22 | Application 23 | true 24 | v143 25 | Unicode 26 | 27 | 28 | Application 29 | false 30 | v143 31 | true 32 | Unicode 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | Level3 50 | true 51 | VERSION8;NOWINDOW;SYSTEMD 52 | true 53 | Create 54 | framework.h 55 | 56 | 57 | Windows 58 | true 59 | pathcch.lib;Shlwapi.lib;%(AdditionalDependencies) 60 | 61 | 62 | 63 | 64 | Level3 65 | true 66 | true 67 | true 68 | VERSION8;NOWINDOW;SYSTEMD 69 | true 70 | Create 71 | framework.h 72 | 73 | 74 | Windows 75 | true 76 | true 77 | true 78 | pathcch.lib;Shlwapi.lib;%(AdditionalDependencies) 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | -------------------------------------------------------------------------------- /PengwinEnterpriseUI/App.cpp: -------------------------------------------------------------------------------- 1 | #include "pch.h" 2 | 3 | #include "App.h" 4 | #include "MainPage.h" 5 | #include 6 | 7 | using namespace winrt; 8 | using namespace Windows::ApplicationModel; 9 | using namespace Windows::ApplicationModel::Activation; 10 | using namespace Windows::Foundation; 11 | using namespace Windows::UI::Xaml; 12 | using namespace Windows::UI::Xaml::Controls; 13 | using namespace Windows::UI::Xaml::Navigation; 14 | using namespace PengwinEnterpriseUI; 15 | using namespace PengwinEnterpriseUI::implementation; 16 | using namespace Microsoft::Services::Store::Engagement; 17 | 18 | /// 19 | /// Initializes the singleton application object. This is the first line of authored code 20 | /// executed, and as such is the logical equivalent of main() or WinMain(). 21 | /// 22 | App::App() 23 | { 24 | InitializeComponent(); 25 | Suspending({ this, &App::OnSuspending }); 26 | 27 | #if defined _DEBUG && !defined DISABLE_XAML_GENERATED_BREAK_ON_UNHANDLED_EXCEPTION 28 | UnhandledException([this](IInspectable const&, UnhandledExceptionEventArgs const& e) 29 | { 30 | if (IsDebuggerPresent()) 31 | { 32 | auto errorMessage = e.Message(); 33 | __debugbreak(); 34 | } 35 | }); 36 | #endif 37 | } 38 | 39 | /// 40 | /// Invoked when the application is launched normally by the end user. Other entry points 41 | /// will be used such as when the application is launched to open a specific file. 42 | /// 43 | /// Details about the launch request and process. 44 | void App::OnLaunched(LaunchActivatedEventArgs const& e) 45 | { 46 | Frame rootFrame{ nullptr }; 47 | auto content = Window::Current().Content(); 48 | if (content) 49 | { 50 | rootFrame = content.try_as(); 51 | } 52 | 53 | // Do not repeat app initialization when the Window already has content, 54 | // just ensure that the window is active 55 | if (rootFrame == nullptr) 56 | { 57 | // Create a Frame to act as the navigation context and associate it with 58 | // a SuspensionManager key 59 | rootFrame = Frame(); 60 | 61 | rootFrame.NavigationFailed({ this, &App::OnNavigationFailed }); 62 | 63 | if (e.PreviousExecutionState() == ApplicationExecutionState::Terminated) 64 | { 65 | // Restore the saved session state only when appropriate, scheduling the 66 | // final launch steps after the restore is complete 67 | } 68 | 69 | if (e.PrelaunchActivated() == false) 70 | { 71 | if (rootFrame.Content() == nullptr) 72 | { 73 | // When the navigation stack isn't restored navigate to the first page, 74 | // configuring the new page by passing required information as a navigation 75 | // parameter 76 | rootFrame.Navigate(xaml_typename(), box_value(e.Arguments())); 77 | } 78 | // Place the frame in the current Window 79 | Window::Current().Content(rootFrame); 80 | // Ensure the current window is active 81 | Window::Current().Activate(); 82 | } 83 | } 84 | else 85 | { 86 | if (e.PrelaunchActivated() == false) 87 | { 88 | if (rootFrame.Content() == nullptr) 89 | { 90 | // When the navigation stack isn't restored navigate to the first page, 91 | // configuring the new page by passing required information as a navigation 92 | // parameter 93 | rootFrame.Navigate(xaml_typename(), box_value(e.Arguments())); 94 | } 95 | // Ensure the current window is active 96 | Window::Current().Activate(); 97 | } 98 | } 99 | } 100 | 101 | /// 102 | /// Invoked when application execution is being suspended. Application state is saved 103 | /// without knowing whether the application will be terminated or resumed with the contents 104 | /// of memory still intact. 105 | /// 106 | /// The source of the suspend request. 107 | /// Details about the suspend request. 108 | void App::OnSuspending([[maybe_unused]] IInspectable const& sender, [[maybe_unused]] SuspendingEventArgs const& e) 109 | { 110 | // Save application state and stop any background activity 111 | } 112 | 113 | /// 114 | /// Invoked when Navigation to a certain page fails 115 | /// 116 | /// The Frame which failed navigation 117 | /// Details about the navigation failure 118 | void App::OnNavigationFailed(IInspectable const&, NavigationFailedEventArgs const& e) 119 | { 120 | throw hresult_error(E_FAIL, hstring(L"Failed to load Page ") + e.SourcePageType().Name); 121 | } 122 | 123 | fire_and_forget App::SetupPushNotifications() const 124 | { 125 | // ReSharper disable once CppTooWideScope 126 | const auto engagementManager = StoreServicesEngagementManager::GetDefault(); 127 | if (engagementManager != nullptr) 128 | { 129 | co_await engagementManager.RegisterNotificationChannelAsync(); 130 | 131 | Exit(); 132 | } 133 | } 134 | 135 | // ReSharper disable once CppMemberFunctionMayBeConst 136 | void App::OnActivated(const IActivatedEventArgs& args) 137 | { 138 | if (args.Kind() == ActivationKind::Protocol) 139 | { 140 | // ReSharper disable once CppExpressionWithoutSideEffects 141 | SetupPushNotifications(); 142 | } 143 | } 144 | -------------------------------------------------------------------------------- /CODEOFCONDUCT.md: -------------------------------------------------------------------------------- 1 | **GNU Kind Communications Guidelines** 2 | 3 | by Richard Stallman 4 | 5 | https://www.gnu.org/philosophy/kind-communication.en.html 6 | 7 | The GNU Project encourages contributions from anyone who wishes to advance the development of the GNU system, regardless of gender, race, religion, cultural background, and any other demographic characteristics, as well as personal political views. 8 | 9 | People are sometimes discouraged from participating in GNU development because of certain patterns of communication that strike them as unfriendly, unwelcoming, rejecting, or harsh. This discouragement particularly affects members of disprivileged demographics, but it is not limited to them. Therefore, we ask all contributors to make a conscious effort, in GNU Project discussions, to communicate in ways that avoid that outcome—to avoid practices that will predictably and unnecessarily risk putting some contributors off. 10 | 11 | These guidelines suggest specific ways to accomplish that goal. 12 | 13 | Please assume other participants are posting in good faith, even if you disagree with what they say. When people present code or text as their own work, please accept it as their work. Please do not criticize people for wrongs that you only speculate they may have done; stick to what they actually say and actually do. 14 | 15 | Please think about how to treat other participants with respect, especially when you disagree with them. For instance, call them by the names they use, and honor their preferences about their gender identity[1]. 16 | 17 | Please do not take a harsh tone towards other participants, and especially don't make personal attacks against them. Go out of your way to show that you are criticizing a statement, not a person. 18 | 19 | Please recognize that criticism of your statements is not a personal attack on you. If you feel that someone has attacked you, or offended your personal dignity, please don't “hit back” with another personal attack. That tends to start a vicious circle of escalating verbal aggression. A private response, politely stating your feelings as feelings, and asking for peace, may calm things down. Write it, set it aside for hours or a day, revise it to remove the anger, and only then send it. 20 | 21 | Please avoid statements about the presumed typical desires, capabilities or actions of some demographic group. They can offend people in that group, and they are always off-topic in GNU Project discussions. 22 | 23 | Please be especially kind to other contributors when saying they made a mistake. Programming means making lots of mistakes, and we all do so—this is why regression tests are useful. Conscientious programmers make mistakes, and then fix them. It is helpful to show contributors that being imperfect is normal, so we don't hold it against them, and that we appreciate their imperfect contributions though we hope they follow through by fixing any problems in them. 24 | 25 | Likewise, be kind when pointing out to other contributors that they should stop using certain nonfree software. For their own sake, they ought to free themselves, but we welcome their contributions to our software packages even if they don't do that. So these reminders should be gentle and not too frequent—don't nag. 26 | 27 | By contrast, to suggest that others use nonfree software opposes the basic principles of GNU, so it is not allowed in GNU Project discussions. 28 | 29 | Please respond to what people actually said, not to exaggerations of their views. Your criticism will not be constructive if it is aimed at a target other than their real views. 30 | 31 | If in a discussion someone brings up a tangent to the topic at hand, please keep the discussion on track by focusing on the current topic rather than the tangent. This is not to say that the tangent is bad, or not interesting to discuss—only that it shouldn't interfere with discussion of the issue at hand. In most cases, it is also off-topic, so those interested ought to discuss it somewhere else. 32 | 33 | If you think the tangent is an important and pertinent issue, please bring it up as a separate discussion, with a Subject field to fit, and consider waiting for the end of the current discussion. 34 | 35 | Rather than trying to have the last word, look for the times when there is no need to reply, perhaps because you already made the relevant point clear enough. If you know something about the game of Go, this analogy might clarify that: when the other player's move is not strong enough to require a direct response, it is advantageous to give it none and instead move elsewhere. 36 | 37 | Please don't argue unceasingly for your preferred course of action when a decision for some other course has already been made. That tends to block the activity's progress. 38 | 39 | If other participants complain about the way you express your ideas, please make an effort to cater to them. You can find ways to express the same points while making others more comfortable. You are more likely to persuade others if you don't arouse ire about secondary things. 40 | 41 | Please don't raise unrelated political issues in GNU Project discussions, because they are off-topic. The only political positions that the GNU Project endorses are (1) that users should have control of their own computing (for instance, through free software) and (2) supporting basic human rights in computing. We don't require you as a contributor to agree with these two points, but you do need to accept that our decisions will be based on them. 42 | 43 | By making an effort to follow these guidelines, we will encourage more contribution to our projects, and our discussions will be friendlier and reach conclusions more easily. 44 | 45 | Footnote 46 | 47 | [1] Honoring people's preferences about gender identity includes not referring to them in ways that conflict with that identity. For instance, not to use pronouns for them that conflict with it. There are several ways to avoid that; one way is to use gender-neutral pronouns, since they don't conflict with any possible gender identity. One such pronoun is singular use of “they.” Another is “ person.” 48 | -------------------------------------------------------------------------------- /LauncherShared/messages.h: -------------------------------------------------------------------------------- 1 | // 2 | // Values are 32 bit values laid out as follows: 3 | // 4 | // 3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 5 | // 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 6 | // +---+-+-+-----------------------+-------------------------------+ 7 | // |Sev|C|R| Facility | Code | 8 | // +---+-+-+-----------------------+-------------------------------+ 9 | // 10 | // where 11 | // 12 | // Sev - is the severity code 13 | // 14 | // 00 - Success 15 | // 01 - Informational 16 | // 10 - Warning 17 | // 11 - Error 18 | // 19 | // C - is the Customer code flag 20 | // 21 | // R - is a reserved bit 22 | // 23 | // Facility - is the facility code 24 | // 25 | // Code - is the facility's status code 26 | // 27 | // 28 | // Define the facility codes 29 | // 30 | 31 | 32 | // 33 | // Define the severity codes 34 | // 35 | 36 | 37 | // 38 | // MessageId: MSG_WSL_REGISTER_DISTRIBUTION_FAILED 39 | // 40 | // MessageText: 41 | // 42 | // WslRegisterDistribution failed with error: 0x%1!x! 43 | // 44 | #define MSG_WSL_REGISTER_DISTRIBUTION_FAILED 0x000003E9L 45 | 46 | // 47 | // MessageId: MSG_WSL_CONFIGURE_DISTRIBUTION_FAILED 48 | // 49 | // MessageText: 50 | // 51 | // WslGetDistributionConfiguration failed with error: 0x%1!x! 52 | // 53 | #define MSG_WSL_CONFIGURE_DISTRIBUTION_FAILED 0x000003EAL 54 | 55 | // 56 | // MessageId: MSG_WSL_LAUNCH_INTERACTIVE_FAILED 57 | // 58 | // MessageText: 59 | // 60 | // WslLaunchInteractive %1 failed with error: 0x%2!x! 61 | // 62 | #define MSG_WSL_LAUNCH_INTERACTIVE_FAILED 0x000003EBL 63 | 64 | // 65 | // MessageId: MSG_WSL_LAUNCH_FAILED 66 | // 67 | // MessageText: 68 | // 69 | // WslLaunch %1 failed with error: 0x%2!x! 70 | // 71 | #define MSG_WSL_LAUNCH_FAILED 0x000003ECL 72 | 73 | // 74 | // MessageId: MSG_USAGE 75 | // 76 | // MessageText: 77 | // 78 | // Launches or configures a Linux distribution. 79 | // 80 | // Usage: 81 | // 82 | // Launches the user's default shell in the user's home directory. 83 | // 84 | // --systemd, -s 85 | // Launches the user's default shell in the user's home directory via systemd. 86 | // 87 | // install [--root] 88 | // Install the distribuiton and do not launch the shell when complete. 89 | // --root 90 | // Do not create a user account and leave the default user set to root. 91 | // 92 | // run, -c 93 | // Run the provided command line in the current working directory. If no 94 | // command line is provided, the default shell is launched. 95 | // 96 | // config [setting [value]] 97 | // Configure settings for this distribution. 98 | // Settings: 99 | // --default-user 100 | // Sets the default user to . This must be an existing user. 101 | // 102 | // help 103 | // Print usage information. 104 | // 105 | #define MSG_USAGE 0x000003EDL 106 | 107 | // 108 | // MessageId: MSG_STATUS_INSTALLING 109 | // 110 | // MessageText: 111 | // 112 | // Unpacking Pengwin Enterprise, this may take a few minutes... 113 | // 114 | #define MSG_STATUS_INSTALLING 0x000003EEL 115 | 116 | // 117 | // MessageId: MSG_INSTALL_SUCCESS 118 | // 119 | // MessageText: 120 | // 121 | // Installation successful! 122 | // 123 | #define MSG_INSTALL_SUCCESS 0x000003EFL 124 | 125 | // 126 | // MessageId: MSG_ERROR_CODE 127 | // 128 | // MessageText: 129 | // 130 | // Error: 0x%1!x! %2 131 | // 132 | #define MSG_ERROR_CODE 0x000003F0L 133 | 134 | // 135 | // MessageId: MSG_ENTER_USERNAME 136 | // 137 | // MessageText: 138 | // 139 | // Enter new UNIX username: %0 140 | // 141 | #define MSG_ENTER_USERNAME 0x000003F1L 142 | 143 | // 144 | // MessageId: MSG_CREATE_USER_PROMPT 145 | // 146 | // MessageText: 147 | // 148 | // Please create a default Linux user account. The username does not need to match your Windows username. 149 | // For more information visit: https://aka.ms/wslusers 150 | // 151 | #define MSG_CREATE_USER_PROMPT 0x000003F2L 152 | 153 | // 154 | // MessageId: MSG_PRESS_A_KEY 155 | // 156 | // MessageText: 157 | // 158 | // Press any key to continue... 159 | // 160 | #define MSG_PRESS_A_KEY 0x000003F3L 161 | 162 | // 163 | // MessageId: MSG_MISSING_OPTIONAL_COMPONENT 164 | // 165 | // MessageText: 166 | // 167 | // The Windows Subsystem for Linux optional component is not enabled. Please enable it and try again. 168 | // See https://aka.ms/wslinstall for details. 169 | // 170 | #define MSG_MISSING_OPTIONAL_COMPONENT 0x000003F4L 171 | 172 | // 173 | // MessageId: MSG_INSTALL_ALREADY_EXISTS 174 | // 175 | // MessageText: 176 | // 177 | // The distribution installation has become corrupted. 178 | // Please select Reset from App Settings or uninstall and reinstall the app. 179 | // 180 | #define MSG_INSTALL_ALREADY_EXISTS 0x000003F5L 181 | 182 | // 183 | // MessageId: MSG_CREATE_ROOT_PROMPT 184 | // 185 | // MessageText: 186 | // 187 | // Please create a root account password. This is the account used to perform administrative functions on Linux. 188 | // 189 | #define MSG_CREATE_ROOT_PROMPT 0x000003F6L 190 | 191 | // 192 | // MessageId: MSG_WELCOME_MSG_PROMPT 193 | // 194 | // MessageText: 195 | // 196 | // Welcome to Pengwin Enterprise 7. 197 | // 198 | #define MSG_WELCOME_MSG_PROMPT 0x000003F7L 199 | 200 | // 201 | // MessageId: MSG_ENABLE_VIRTUALIZATION 202 | // 203 | // MessageText: 204 | // 205 | // Please enable the Virtual Machine Platform Windows feature and ensure virtualization is enabled in the BIOS. 206 | // For information please visit https://aka.ms/enablevirtualization 207 | // 208 | #define MSG_ENABLE_VIRTUALIZATION 0x000003F8L 209 | 210 | // 211 | // MessageId: MSG_WSL_UN_REGISTER_DISTRIBUTION_FAILED 212 | // 213 | // MessageText: 214 | // 215 | // WslUnRegisterDistribution failed with error: 0x%1!x! 216 | // 217 | #define MSG_WSL_UN_REGISTER_DISTRIBUTION_FAILED 0x000003F9L 218 | 219 | --------------------------------------------------------------------------------