Downloads of v 0.2.4:


Last Update:

26 Feb 2018

Package Maintainer(s):

Software Author(s):

  • Rob Reynolds


nuget odata iis repository chocolatey simple-server simple.server

Chocolatey Server (Simple)

This is not the latest version of Chocolatey Server (Simple) available.

0.2.4 | Updated: 26 Feb 2018



Downloads of v 0.2.4:


Software Author(s):

  • Rob Reynolds

Chocolatey Server (Simple) 0.2.4

This is not the latest version of Chocolatey Server (Simple) available.

This Package Contains an Exempted Check

1 Test Passing and 1 Exempted Test

Validation Testing Passed

Verification Testing Exempt:

Requires .NET Framework 4.6, which needs a reboot.

To install Chocolatey Server (Simple), run the following command from the command line or from PowerShell:


To upgrade Chocolatey Server (Simple), run the following command from the command line or from PowerShell:


To uninstall Chocolatey Server (Simple), run the following command from the command line or from PowerShell:


NOTE: This applies to both open source and commercial editions of Chocolatey.

1. Ensure you are set for organizational deployment

Please see the organizational deployment guide

  • Open Source or Commercial:
    • Proxy Repository - Create a proxy nuget repository on Nexus, Artifactory Pro, or a proxy Chocolatey repository on ProGet. Point your upstream to Packages cache on first access automatically. Make sure your choco clients are using your proxy repository as a source and NOT the default community repository. See source command for more information.
    • You can also just download the package and push it to a repository Download

3. Enter your internal repository url

(this should look similar to

4. Choose your deployment method:

choco upgrade chocolatey.server -y --source="'STEP 3 URL'" [other options]

See options you can pass to upgrade.

See best practices for scripting.

Add this to a PowerShell script or use a Batch script with tools and in places where you are calling directly to Chocolatey. If you are integrating, keep in mind enhanced exit codes.

If you do use a PowerShell script, use the following to ensure bad exit codes are shown as failures:

choco upgrade chocolatey.server -y --source="'STEP 3 URL'"

Write-Verbose "Exit code was $exitCode"
$validExitCodes = @(0, 1605, 1614, 1641, 3010)
if ($validExitCodes -contains $exitCode) {
  Exit 0

Exit $exitCode

- name: Ensure chocolatey.server installed
    name: chocolatey.server
    state: present
    version: 0.2.4
    source: STEP 3 URL

See docs at

Coming early 2020! Central Managment Reporting available now! More information...

chocolatey_package 'chocolatey.server' do
  action    :install
  version  '0.2.4'
  source   'STEP 3 URL'

See docs at

    Name: chocolatey.server,
    Version: 0.2.4,
    Source: STEP 3 URL

Requires Otter Chocolatey Extension. See docs at

cChocoPackageInstaller chocolatey.server
   Name     = 'chocolatey.server'
   Ensure   = 'Present'
   Version  = '0.2.4'
   Source   = 'STEP 3 URL'

Requires cChoco DSC Resource. See docs at

package { 'chocolatey.server':
  provider => 'chocolatey',
  ensure   => '0.2.4',
  source   => 'STEP 3 URL',

Requires Puppet Chocolatey Provider module. See docs at

salt '*' chocolatey.install chocolatey.server version="0.2.4" source="STEP 3 URL"

See docs at

5. If applicable - Chocolatey configuration/installation

See infrastructure management matrix for Chocolatey configuration elements and examples.

This package was approved as a trusted package on 26 Feb 2018.


Chocolatey Server is a simple OData feed built on top of NuGet.Server.

Chocolatey Server builds on NuGet.Server with a few minor adjustments:

  • This is a packaged site, ready to deploy.
  • The apikey is already set.
  • There is more helpful information on the site when accessing locally:
    • There is a link to the Elmah logs
    • The api key is given on the page.
  • The location of packages defaults to a more secure location.

md5: 2E3309647CE678CA313FE3825A57CCB9 | sha1: 792FDECCDDD3CC182EAC3A1ECD7AFFE5B48262C8 | sha256: E6855553350FA6FB23E05839C7F3EF140DAD29D9A0E3495DE4D1B17A9FBF5CA4 | sha512: 5EB2AF380FED7117D45232D42DEC4D05A6F4F6CD6C7D03583C181B235344EA922290B6E0BF6B9683592BCCC0F4A3B2B9B9FD7D41FBFEBF1045BD95B027539DBC
To add packages to the repository place package files (.nupkg files) in this folder or use choco push (see readme on the repo url main page). 

The server will find packages and automatically convert/index them from here.
md5: 77412AF23F6272308871FF0C0A35B509 | sha1: 46A51C33B2BF595436E7E3696A5A7B1953747713 | sha256: 1366C5936118A7E36EFA8CE37420C6C64CBBA4DD76C904C4BD1191E9169F2C1D | sha512: D7D5CDAF5ABE9E6939736CE59352312456A8BA867E7CF1F1CFDA09C535BF22F8FF936F6E02EDA8950FB365F3BE654B1CEE3F112E076B02B3E12E7D43B0864F49
md5: 0F75D53B43725820AAF0D2A9F3BB9599 | sha1: 7D4CF828989047A11E067925F7CCBC09A1765C59 | sha256: 31702AECA2B24AEAB640C88EFC909E14DB7805C0DB7C2AFB9FF3FAF2102B681E | sha512: A775654908B431E4BBA66400C4DBE464E3533166269350DECA921ED555E72CC1473B3705B83325BEDB3D5742C1925FE8934591AADD16707FEE740DDA57BD8CD8
md5: EFC78547A8C80BAFB235877DD7557927 | sha1: 2CCFB515615A5FC4DE56C9802BA3B231CE26848D | sha256: E29F10E47728773F7C0B230456FD33225863C70124D56F2C6EA12915C065D712 | sha512: 8585EBFF296C75A0F93EE62DA82548DCEE05C4B3F69E82DBC4474B081017BD6996F8C1D59E6EAFDA62F55CF1CEECBADDF12E1122E2C74924030B59A087478E70
md5: 5F9FBA56E86C63D985C5108544EC5473 | sha1: 1C0452B49290CE5CC919CA18D76533B4C4267BDA | sha256: 24154C679DE6858BB53C03339FBBE275499280E7A6BC1F9E9586A72063EC6133 | sha512: 750344D705C99A18266F6C7CE21F38C4F42A1C25B9677FD7BB9009F7449CCE02F91033F9FF52AD9C1196C3B8053A42BFE1EB8DB61F755A20CECB3BEE33E7756F
md5: 7BE5A555CEC5C21DFE5E4BDD4F2C171D | sha1: DD99615E96A2F41C175277DCB5DDAFA73CE81A66 | sha256: 6FE12EEC053BCF8F39CA96115B04C52DB4D6F31F5B27AB48C227690816B18E30 | sha512: 96E5A7BB1C23C7F91B183B11602A855D19AF5B0B99060AA072FF5D3E6AEF0A6DDCAF33D9A9662F4571EB02A88BBE96CE44D9304EA77D6FF592CFBD7935CCF932
md5: F8DA1365BAF4D39ED7A10E8AF11649ED | sha1: 03B412CF2FA7F56B94D3F195162CFD62E736551D | sha256: E867012651E85586D4995A5FF85DD7566844F36D77D8D65DD1EDE2D517487C08 | sha512: 5ED765E60D49836B175F5693334A8B43F6F0561602F612BCEB91DAD3B085AE6B315940F6645C0BED7306D1DDBA71A217E570BCFE722867B65E7DEA77295390B8
md5: 2BCB8688F7258358535C096ACF723FF6 | sha1: FFC12C256EC086E31DA0082AE14B5C3D864C1EBF | sha256: 272643AC77EE63962438AC05749C49BCCD220E5E007A038D1B40E12E42449050 | sha512: 275A7A8ACACFC2292127BE853702F5ECCA11DDAD1D2456425F36FB8C3AD72B133D2CDC53B3B0C876C5E07EB7F8C255841519B5892744D6AB78DFA9FCDB531F28
md5: C1835237B9B73888CE388E18C83FCE71 | sha1: FF95F8E20D22E15C18B26EE6DE90C41EAD46C662 | sha256: 459F439ED20D8F160A4B5024A77E2906EC35431F0F14644D3C46605892C406A8 | sha512: B02E6D797AA2542898789BDB29CE94E4C22020003D4654754C8C6F6BF38EF547DA75B82A82670A78A2FDB9761203AC93A335794DBDC390134903A9C40CC9F596
md5: 6368EC654382B35D487A2A8BC0738FD1 | sha1: 6BDD9048B4C2083937D55BB7D69756C91169CC1C | sha256: 92D8360818882A20FC95BD1DBE5154BEB7AAF93B0A4B01F3B6EBB02E6F5FCD39 | sha512: 4D1AEEFDA40ECBF2A559386D6DF2CC93B6BC2F0FD2125F09EEB489E216965C18A6E28000F15D50764C96BE4C61DFFF68AADB040D04F62C676A78415883AB109F
md5: 200745A3D4D3E288140F8D43C22B8466 | sha1: DCEF64F878E763820375B91BF6EC3B2A86A814E7 | sha256: 3CF3149A3543C5582BB16567883E887656520D283EFF2016E514C01AFDCC75D8 | sha512: B69C9199FE5DD2BBC363A8219DEA39C2D8815BE7F9114A7E0EDF5439D105FB110FD34B50C07F04F2C8FA6D6F4ED638F93AE9EFDB836B69102F84681EB7860ADE
md5: C744A02CE9A66E017C921731C2B6D0B0 | sha1: 4154CE2453064D47A4FD4D368A6A56B8300BFE90 | sha256: B6264BF82760ABF5C941654D1964EC7092B17BDD98FA144311B6B1DECCE54222 | sha512: F1CA9D361120A622C068DE7E4D048E400F6D75954C451D9EEFC16BDC87B08393B6DEB7ED58C8EC93B909CB6C966C9AA520D3A7AA792EDF819BE8038C981C21B8
md5: 20930D0CD82471C8FC4EBE97DD1CCE16 | sha1: 7C6442DF4679D80B8762863ABA36CEC02DC7770F | sha256: 500B85B4ABC87B0D895518688F7179D6715DA5B9F889A2142F4021C6B0156281 | sha512: A6EF8F96E5C22ECD4BDE90530F308949A5673B6CB1480FAFABB1962F9ACB78CBAE51EC03E1DF0F3E88316FA5E406243453BCA40D8772AFCE3F383246AA6C6C83
md5: FD66A41F43E6D4A5881FFD914ADEE8E6 | sha1: E931321D5138CD49FD5525479A63EBECE4213C95 | sha256: 015AF4B2633BF7B3074F77CF0EF5E1E9F47746BD73B04E5D2F14A6DCAEA6DCA8 | sha512: EA6714136C55CED85BAC0B2373EAEDB2FFEC78E9E1CDC7E2E1EBC0412C06DCAB122DD9E4746A430FEA66A3B0210ED49FA3A08F9F9CDA138577A1E4F9D982D083
md5: 7D78FF448B137B8598D955F63E070F16 | sha1: 0F703D4F1075F875A8FFCC2756FDA5CD89C58212 | sha256: 38A36F60C17014DF96C93BFFD82FD27ABB8C932B5FEFBE42B518DE6AC320E5EC | sha512: 00141A3740844063EA44658FB19D95085F1DDA0809685E1BC268365D7CA67066AC74BB864CD76784F43DB08362532D694965FB360A67102A005A5725E8589CA2
md5: 7C43ABC6C0E2FC2236DF92F1E3F20A8A | sha1: A4EA53BADB064D2F4E0002B2993431A1544E4F1B | sha256: D0DD13B93AE045BA1437ADF58D651E190386D3901E6B4B154BE81830AC34E098 | sha512: 332BF14381429EB46726F72BB1ED74ED5726D7EB3A3AC7288C281D0CDC82C80BE4704F18EB07CDE5DA690C16D3AE6633F6B416C365D30D1CDA2577B06D92314A
md5: 8E56DB7C91909E62C7EB0DFD204CF70A | sha1: 68DCEBCBA4C2E7591116AFF45A45BC4855F18498 | sha256: 41093FBE0D550C77D6106DE34E312395E8AB3F0E4794CDAD0C8C637E8B7A81FE | sha512: 520486BBFEB55DB02EA7E9A8ECA11B1BD95BF94B1F7056154854865BEF697994C1F16487ECBEB77B896199838E36F1E321DD0651E03AF98BCCC1FE9544B354BF
md5: BDFED17359345771C1515B69F0AB30E3 | sha1: 7A687C0D9E5B5C1333246C1277B19919C9EADF80 | sha256: 628F7D949F401455D764E2C6BFF72B25AFB519A0ADC9966A154E28073D63B7AF | sha512: 0AF55F6D70013B76F0A5033D13434F0A39E49E3FF16D70BD3D4588A4A9F82B8BF32889305DB8B8D3BAF3DC3D2FBAD123574E9872E62DDEF4CF2B9EA3C56167B8
md5: 77115B1AF8D299AC7A5ABFDC419C10C4 | sha1: 58CC5F71E118D5E964D628E597FD37DEE08954CE | sha256: DAA85D3D7F267BC709826B7B30A257E9C0D81B3949A4D57A34954141BCFA2B7F | sha512: 4F05B6AC8A2CD3F4ED0800A95A8F18916981976C880E8D06F8C63DAF3C381A4A309B51A8DC58CAC152D67515158CC697AB4D211D73AD6821C84581004044C550
md5: 3F4237AFD30B3457D00698F7309C2493 | sha1: EE89FB0441AC512597754F44BC5A6396E5455382 | sha256: D75ECD8C4835A5B5DAA64911F1DE0597A17A0CB91FF34145C1E0C5B92D640406 | sha512: DFA29611366C99D0594DD78209C5277A79A5452921FAA59DE1D6C1E1D43C16FDFF06D804E8EEF9C9A27549800EEE2DC54C99574047D831D65D482946C3CDD713
md5: D1CDBF97C3475315B5E0E2066BAD8837 | sha1: 1EDCA51A998F56AB73F7CB33C4320A1EB5F3574C | sha256: F5B48E6EEADE7469D729ACD58ECB52D83A0779BD8A28AB4684C9598C3605251B | sha512: 6429948C04EF21ADE3A0B2C1A1764C65E2017236C6B7BB7AE6E7F295D38BDDD7D18075C86F5130C6094863D66ABE040509307A069EDB28BA37CD87E5CE16481A
md5: 7328F79D866FD3C8AD5292E6C37438E6 | sha1: 36536A398FEC895E5966C0C04D461A2F66BB7552 | sha256: 5783744B6C19136F87435040EC256FC3C2F6145263C46724415482283B64F440 | sha512: 2FA5FFE83031F5EF06B14CF989C587976ADCA9B59863EBDEC9C0E24C3D2985D789374925A212F60EF47C7CA6F8E95202B125EC473BE1E9892FD3A0E2F7D0437A
md5: 807D9FE38AD10840F64B829C8C84515D | sha1: 2EB1CC3BA866C149497882608F95688DCEA2184D | sha256: A6BC34DB8F2EEB8CBCF206527C7CCB730987B857AB0094D7F8909AEAFDC20CEE | sha512: 0D7408E6363727BE6E3218AEBAC93A8FCBA065398F672DF195CEB67F3A66C4D7CEED7751A168DC27D9A9F29C1F66AF3FC0ABD059A116750B80DC3173DBE24E4C
md5: 969D6CAF273394F064475292D549516E | sha1: 91F688C235388C8BCEE03FF20D0C8A90DBDD4E3E | sha256: FE18F4259C947C1FD6D74F1827370E72D7AD09AEFB4B720AF227333583E0169F | sha512: B4F6A614E5FC52850E3D02EBF7E85ABF1EBE3FB4EBD6B4F03EC9DC4989CCE88E44714CA2198DD7E632F5ED0F15225A68B31052DA33E5AC3CE48A1C91C3C04446
md5: 6AD7D1E92C9833F4BDDE6A4BC84F2E1A | sha1: B38D23B6A960F5F07664565835137FE3C8FDB7ED | sha256: 13DCF5066E00152238191314D4A46605204FFABDBB830BDD0C97DF3027D1261D | sha512: 01C4ECC46576618394FBBEE701F5A726F97D31FB39D5F1C6305D21CA7AD0B0ABC09B69FB733C42D4D1203FCE78DD3F3D5129C21EA0BC9B92D0AB3A7BF09C006C
md5: F33CBE589B769956284868104686CC2D | sha1: 2FB0BE100DE03680FC4309C9FA5A29E69397A980 | sha256: 973FD70CE48E5AC433A101B42871680C51E2FEBA2AEEC3D400DEA4115AF3A278 | sha512: FFD65F6487BC71C967ABCF90A666080C67B8DB010D5282D2060C9D87A9828519A14F5D3A6FE76D81E1D3251C2104A2E9E6186AF0EFFD5F331B1342682811EBF4
md5: 7E2E527AE1442CE50DB65FEFE07FE32F | sha1: 9007FECFA7CDD9851D340084183774876F6F2728 | sha256: 9CF411844161052D76D6ED6327C61790C0AB18497695DDC7E6E18728D23D5CD6 | sha512: E3C988D2843B11302195D7A3AF8E43658F19BD3022F8A10D5010ECBBA4A17D9898C749B7F88C7EEE5BF5D8B83208C7621C9CAD56B13D17EF2079686EDD31F2DC
md5: DB78DA875C6474644DBC56A79AC278F5 | sha1: 94579EC6C4E2B326D4A1A3F2850F37B1D27F7F0A | sha256: 6D7842B2C4E7443F7B84D5AC0974355F29AFC161437258D883193E188F1D835A | sha512: 7F7DF9142C5752CCB1724E08E8B125A8BE01E0F0345CF0BCF4F0199F63FE8CAD8AADDF80AB4DD5DFC1DFA0632EB7E9D0EDCC374AECF7BFBC8C979D3B97DEB5AC
md5: DEC70A1C21F284D09C11A27DCD818E04 | sha1: AC0B2878E224BA70A5CA29AC4438AD38F3D103E8 | sha256: E0295AB239A971D8BC27AC7D9DE2E1D0BE1AB4330A04F9E24E197CFD64E9EA1B | sha512: E5EACB51FAE58DB3A50BB7E2056A096AF23CCB18EA9781BE8A22BEA9D272FD605EFBEAB9698202BAFC8D7DCAA8E17A70E34BD8E458FDC3E943F3D5FECA968E71
md5: 4F6B6C2F0BC96271BAD3D1433B88CC46 | sha1: BB2A7D61F5262C550C60C25D24C64913D5F5FD29 | sha256: 55CECB7B131D0ACDA9B9B54D2CD1EBC4D87D2FE16072BEA6D9E34E2BD1CC44E0 | sha512: 7A6F1C207D4659A5645AB91DA3E4992E32EE689D823F26063D0A19AD28C85D03F2E0F924B73B6D9E3F1E644BFA9B7FAD39AA9C4976B72860CEA2CE4E36C179D8
md5: E8C2DC68436867E7A078083780757F29 | sha1: 8820FB0CA36CE3F4B94BA3AB89E07561DD40FBA9 | sha256: 83B3DA9416CD4B2DD2F79E5E3490AB7372CC73832F4BDCA4A4E10C46DBC59921 | sha512: 93CD37236F385B88AD92069A94591C38923E7D8D315CDB9E5AA8011603447E2C48E7C4FE3C3EC8855D77C369E1AABEA64234CB7CEF60F7FB139B29BB2D8DDDF0
md5: D1EE9A5EDB99F9CCDA2B84852DB553D4 | sha1: DCD18AD2330C6E33B8AC9379DA560062158A2D56 | sha256: 7344FB8761E784C9D95ADFEC76A690A621E20CD4442C255D35EF018C2B471E78 | sha512: C3D34CB5A2C738EBB2A5909898B3BAE5E95273DA8E65952FF72514D17E370B59EEF92BD3B29A2132E2219FB569C170C6BAF414B440D6BBEEDF8BC9D020CC56B8
md5: 7C502E7808DD5C752CBF942FCB33CE23 | sha1: 5896E2D755538CF3D38BC6209D237A485A6CD359 | sha256: CAD49D1565EEADCD226596AFEBCDC0CD6714204B3ECE2BA9B26CE80278DA63D1 | sha512: 531D0B39669CECCC3FFC8A580C40B06E71E17D59E7368ED1B8ED0E369A3904D17CBBA136BD36EB0FF0E1B2BEFF1BA505EDF68AFD16EC7B0A61DF27419D4A81E7
md5: 6014DE6B71D851888359F7F8ABCD0EA5 | sha1: A2316246BFC7CABBE6B0533258D8527F861F11E6 | sha256: 4E8DA97D8DBBDA325A36D382F1910E2F47F5F7958D6B0CB933FDFE6C3D5A7C0E | sha512: 75A71F31482ADFBE3CF6C7778789D08CEB343E243C4EC2F715304F6F6205441CEEC328C937B6446B89654AACAE88F31773B7046008A2EC7FAC0333E0DD38C228
md5: 589E1B764C0DC53BF645054960626AB1 | sha1: A5616537CA4E4AD5EB0BEB48863AE65E9EA91080 | sha256: 1C7FA94DE5E727852934387B6B0094ABC16F660C6C91B38FB3F5BC580CFBDC1F | sha512: DFD6924DD7BAF7EB1B8D3CC862FD7FB4A311818EE5684C7A85E3106EAD0F3DAE2A79956AAD9B5404C88A1D2607CAD627D0EFD729E9A9C1C1425B907884FBD1D7
md5: 7E11C443A4A7F21A6D64AC158F73DE43 | sha1: 6963B072BA46CF5E0E51061D0B53D7D6DA15409B | sha256: 9B6A3D622DC54C17D9CED39748E74221B8F0A2AA7088274770CC4DB62FEBCB70 | sha512: DD571CE3D9585705BBCC02804CDDEF114CC26B6995C488AE7F04041C32FEB41BD7AE3DB06F8E74D279B985ACF807056C08DD18788D232C782E6DB7ACC360FA98
md5: 1982B5586DE16B532074211AB7DA1CA6 | sha1: ED3E73BA41910D32618EBBB5E82BF9E74B51B062 | sha256: A47387C4A098DF3A57B967F1FF8604C7578F75B1481B2B969DF68DCEEF83ADFA | sha512: CBFFC5946773805EC1AE610C222EC8ABC65E39D561BD7E8CC98DC86655C218B5BD0CC15896D1F63FB061E493D7E5B88F26CF41FB5FAA24C4C754ADDE3792FC2B
md5: 937424C2BAB4E83D73F0F827DF2593EB | sha1: C7E4BEC513915A79687B379A626B4F5AE1997575 | sha256: 5058695333451AC9358AFE43AD6B37A8D141AA37D4D7EF8EACA702C833CC8B85 | sha512: A2D50C0D9148CEBCE4DCB619AC7517BA58611D2CD479AE754AA8E44C34D3FE1073B9E93C2D5D115949FB5009B8BF09FF9F302B89701F0C3462EE555EDDAA3078
md5: C3138D9BC26BCD3D225F551ED8C41792 | sha1: 60E5E95F4D0B06978636760F3375D6E23B28530B | sha256: ACEE4E07C74C6E0E10CFD25111D1E2E6A213EF6DB97449551C0E665250C5C3E9 | sha512: 3B8F4974E8755D4875DA125F2F04B7916C4B1F555E033E02A566F6037AC9A642CFFA4F5F36C83310223C41E1F1F44156C1763F241E7167D3E8CAB6F1A84D3177
md5: E6EBF27FA68C47A434C2E6AC0C08CF5A | sha1: 113B4FBD946CD38A296FF07C6562A88676D7B79B | sha256: D3DA14B92659035996CB517E0A9001093780104F6018D56894355A53CF014900 | sha512: 2CBCDBDBE9C17A09173C36EF35AE4DECAC7D4AB54342E8443781E772C595CAA23E2735533E1BD330C4D6DA52574B3D281714514A35D988AC1E0A0BDD99948968
md5: B5FEB15B47ECB4E6DCA0A9EC25591ADD | sha1: 2B40499D9428A12CC267A75F818FD35450DC5BA9 | sha256: C0978C2C591B31A92EAC6120A10A2330CF705758C12AD84B102427B2A5D1BEA8 | sha512: A300C0F4C046AD9EA296B3275992E1EFD42FB8265C9F339734D26FFA96BA6C527655DA701B57F4A6F4831D859D86BBA0D4B5595874E0A16E9AD045638ED36D90
md5: F097838FAA78F80A15625D470EFBBA2F | sha1: 3238DCD78DFF53D2D8891F7803F18E83F04C206A | sha256: FF28218B9F9C497E8F1E4B63475E55787089021D9AC0D90C0248FF7372572ED7 | sha512: 2B3C6D7EFCA9571EE683A901F782D4271D69FC15FF9E9FEDB475EFCEE50354E17D81655DC7D79DA0E55A1F08801C3A4FF12755EF7979711839525AE256411DDC
md5: F66BC6C12E907750B28CA64D6E5CFE01 | sha1: E681284FF5F27A4A011D2FEFA9F364D1FCC14637 | sha256: 83BE92799D20498517AF3F584559AFA78E46CDC59192541BBDFD80BF4DE92F6E | sha512: DB1ADAF516A6520D43931F22E4D26535BA3874B5561752EAFDCEC246ABBC3C55F4BB30D65FA24CA7BB695C80EC3566A8135B6B576DEFF2ACB125F99CE2859855
md5: 67230955895FD2AA4CDD692BF5620CF9 | sha1: 151E894075167C0D61E28F6AA239668D88A72634 | sha256: E93213144231F521FABCE3BAEB1BE4E5B43E37F1034D2514FFD2696C9F735003 | sha512: E8A79AC44687D18C2B4AF388EEC178656BAFA0D50246218981A1593E2D6114B6217840D41DF746976EE09E3B54E0293ED0594B54821FC71C2EF201C2EA468E9C
md5: DD612956FB8FA1D17AA82CD920BB4E5B | sha1: 21FFCDDAE34DB151CDC9B935418D4EACBFAB9FD3 | sha256: 83194F16ADE40A56BDD9FC39CE25430D7A3FA67AFFA015A90D3C8537022F639B | sha512: E881033A6118D5D03AED02EC4C4F61942F250C60F337146E0CD190AD6CD7CC5C428ABFE161FF1165C07271F64C9C99B66EEC767DB3EAED2E4099502B41922BBF
md5: 8E6834B669C4E8E47E020B36A01F925D | sha1: C988DB0B4DA3AF053AFE6BB2E057864C1C5CA816 | sha256: BB99D6C968464EA668D00B553493544FA49EBC03EB6D321985BB4AE41EE6F778 | sha512: 28D9F1E373D53C269B4171EB74ED14EEC46D39802C8AEE287DF2BC7C19D5A878918326DD86D6AFC9B934F6D68477D21E08E9F0009FA608C426EC95D041E76526
<?xml version="1.0" encoding="utf-8"?>
  For more information on how to configure your ASP.NET application, please visit
    <section name="httpAuth" type="HttpAuth.Configuration.HttpAuthSection,HttpAuthenticationModule" />
    <sectionGroup name="elmah">
      <section name="security" requirePermission="false" type="Elmah.SecuritySectionHandler, Elmah" />
      <section name="errorLog" requirePermission="false" type="Elmah.ErrorLogSectionHandler, Elmah" />
      <section name="errorMail" requirePermission="false" type="Elmah.ErrorMailSectionHandler, Elmah" />
      <section name="errorFilter" requirePermission="false" type="Elmah.ErrorFilterSectionHandler, Elmah" />
  <!-- To turn on basic auth with the HttpAuth Module, perform the following:
       - Set up your users in the credentials section below.
       - In system.web/authorization (section after httpAuth), find the allow 
         without verbs and change the word "allow" to "deny". Leave the allow 
         with 'verbs="PUT,POST"' alone or you won't be able to push packages.
  <httpAuth mode="Basic" realm="Chocolatey Simple Server">
    <!-- The above values have been tested to work. Possible values you can 
         set (with no guarantees or support):
         - Mode - {None|Basic|Digest}
         - Realm - {Plain|Secret|<Pick some value>} 
    <credentials source="Inline" passwordFormat="Clear">
      <!--The above values have been tested to work. Possible values you can 
          set (with no guarantees or support):
          - Source - {Inline|FormsAuthentication|MembershipProvider}
          - PasswordFormat - {Clear|SHA1|MD5|MD5Digest} - MD5Digest only with Digest mode
      <!-- remove or change this user -->
      <user name="choco" password="rocks" />
      <!-- add users here -->
    <compilation debug="false" targetFramework="4.6" />
    <!-- maxRequestLength is specified in Kb -->
    <httpRuntime targetFramework="4.6" executionTimeout="1200" maxRequestLength="2147482548" />
    <!-- <authentication mode="Windows|Forms|Passport|None">-->
    <authentication mode="None" />
      <!-- leave this alone or you won't be able to push packages -->
      <allow users="?" verbs="PUT, POST" />
      <!-- change "allow" below to "deny" to turn on basic auth -->
      <allow users="?" />
      <add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" />
      <add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" />
      <add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" />
      <add name="HttpAuthenticationModule" type="HttpAuth.HttpAuthenticationModule, HttpAuthenticationModule" />
    <customErrors mode="RemoteOnly" />
      <remove name="ExtensionlessUrlHandler-Integrated-4.0" />
      <remove name="OPTIONSVerbHandler" />
      <remove name="TRACEVerbHandler" />
      <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
      <remove name="WebDAV" />
      <add name="PowerShell-Integrated-4.0" path="*.ps1" verb="GET,HEAD" type="System.Web.UI.PageHandlerFactory" modules="ManagedPipelineHandler" preCondition="integratedMode,runtimeVersionv4.0" />
      <!-- Depending on IIS configuration, these may have to be added.
      <remove name="ExtensionlessUrlHandler-Integrated-4.0" />
      <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="GET,HEAD,POST,PUT,DEBUG" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
      <remove name="OPTIONSVerbHandler" /><remove name="TRACEVerbHandler" />
      <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
      <remove fileExtension=".ps1" />
      <mimeMap fileExtension=".nupkg" mimeType="application/zip" />
    <modules runAllManagedModulesForAllRequests="true">
      <remove name="WebDAVModule" />
      <add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" preCondition="managedHandler" />
      <add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" preCondition="managedHandler" />
      <add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" preCondition="managedHandler" />
        <!-- maxAllowedContentLength is specified in Bytes -->
        <requestLimits maxAllowedContentLength="2147482548" />
    <validation validateIntegratedModeConfiguration="false" />
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" />
        See for 
        more information on remote access and securing ELMAH.
    <security allowRemoteAccess="false" />
    <errorLog type="Elmah.XmlFileErrorLog, Elmah" logPath="~/App_Data/Logs" />
  <location path="elmah.axd" inheritInChildApplications="false">
        <add verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" />
        See for 
        more information on using ASP.NET authorization securing ELMAH.

        <allow roles="admin" />
        <deny users="*" />  
        <add name="ELMAH" verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" preCondition="integratedMode" />
    Determines if an Api Key is required to push\delete packages from the server. 
    <add key="requireApiKey" value="true" />

    Set the value here to allow people to push/delete packages from the server.
    NOTE: This is a shared key (password) for all users.
    <add key="apiKey" value="chocolateyrocks" />

    Change the path to the packages folder. Default is ~/Packages.
    This can be a virtual or physical path.
    <add key="packagesPath" value="~/App_Data/Packages" />

    Set allowOverrideExistingPackageOnPush to false if attempts to upload a package that already exists should fail (do not allow overwriting packages with same id + version).
    <add key="allowOverrideExistingPackageOnPush" value="false" />

    Set ignoreSymbolsPackages to true to filter out symbols packages. Since NuGet.Server does not come with a symbol server,
    it makes sense to ignore this type of packages. When enabled, files named `.symbols.nupkg` or packages containing a `/src` folder will be ignored.
    If you only push .symbols.nupkg packages, set this to false so that packages can be uploaded.
    <add key="ignoreSymbolsPackages" value="true" />

    Set enableDelisting to true to enable delist instead of delete as a result of a "nuget delete" command.
    - delete: package is deleted from the repository's local filesystem.
    - delist: 
      - "nuget delete": the "hidden" file attribute of the corresponding nupkg on the repository local filesystem is turned on instead of deleting the file.
      - "nuget list" skips delisted packages, i.e. those that have the hidden attribute set on their nupkg.
      - "nuget install packageid -version version" command will succeed for both listed and delisted packages.
        e.g. delisted packages can still be downloaded by clients that explicitly specify their version.
    <add key="enableDelisting" value="true" />

    Set enableFrameworkFiltering to true to enable filtering packages by their supported frameworks during search.
    <add key="enableFrameworkFiltering" value="false" />

    When running NuGet.Server in a NAT network, ASP.NET may embed the server's internal IP address in the V2 feed.
    Uncomment the following configuration entry to enable NAT support.
    <!-- <add key="aspnet:UseHostHeaderForRequestUrl" value="true" /> -->
    Set enableFileSystemMonitoring to true (default) to enable file system monitoring (which will update the package cache appropriately on file system changes).
    Set it to false to disable file system monitoring.
    NOTE: Disabling file system monitoring may result in increased storage capacity requirements as package cache may only be purged by a background job running 
    on a fixed 1-hour interval.
    <add key="enableFileSystemMonitoring" value="true" />
      Turns off ASP.NET's built in simple membership provider
    <add key="enableSimpleMembership" value="false" />
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
        <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
        <bindingRedirect oldVersion="" newVersion="" />
        <assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="" newVersion="" />
        <assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="" newVersion="" />
        <assemblyIdentity name="Microsoft.Data.Edm" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="" newVersion="" />
        <assemblyIdentity name="Microsoft.Data.OData" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="" newVersion="" />
        <assemblyIdentity name="System.Spatial" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="" newVersion="" />
<?xml version="1.0"?>
<configuration xmlns:xdt="">
  <configSections xdt:Transform="InsertIfMissing">
    <section name="httpAuth" type="HttpAuth.Configuration.HttpAuthSection,HttpAuthenticationModule" xdt:Locator="Match(name)" xdt:Transform="InsertIfMissing" />
  <httpAuth mode="Basic" realm="Chocolatey Simple Server" xdt:Transform="InsertIfMissing">
    <!-- To turn on basic auth with the HttpAuth Module, perform the following:
       - Set up your users in the credentials section below.
       - In system.web/authorization (section after httpAuth), find the allow 
         without verbs and change the word "allow" to "deny". Leave the allow 
         with 'verbs="PUT,POST"' alone or you won't be able to push packages.
	<!-- The above values have been tested to work. Possible values you can 
         set (with no guarantees or support):
         - Mode - {None|Basic|Digest}
         - Realm - {Plain|Secret|<Pick some value>} 
    <credentials source="Inline" passwordFormat="Clear">
	  <!--The above values have been tested to work. Possible values you can 
          set (with no guarantees or support):
          - Source - {Inline|FormsAuthentication|MembershipProvider}
          - PasswordFormat - {Clear|SHA1|MD5|MD5Digest} - MD5Digest only with Digest mode
      <!-- remove or change this user -->
      <user name="choco" password="rocks" />
      <!-- add users here -->
    <compilation debug="false" targetFramework="4.6" xdt:Transform="SetAttributes(targetFramework)" />
    <httpRuntime targetFramework="4.6" xdt:Transform="SetAttributes(targetFramework,executionTimeout,maxRequestLength)" executionTimeout="1200" maxRequestLength="2147482548" />
    <authentication mode="None" xdt:Transform="InsertIfMissing"/>
    <httpModules xdt:Transform="InsertIfMissing">
      <add name="HttpAuthenticationModule" type="HttpAuth.HttpAuthenticationModule, HttpAuthenticationModule" xdt:Locator="Match(name)" xdt:Transform="InsertIfMissing" />
	<customErrors mode="RemoteOnly" xdt:Transform="InsertIfMissing" />
	<authorization xdt:Transform="InsertIfMissing">
      <allow users="?" verbs="PUT, POST" xdt:Transform="InsertIfMissing" />
      <!-- change "allow" below to "deny" to turn on basic auth -->
      <allow users="?" />
    <handlers xdt:Transform="InsertIfMissing">
      <remove name="ExtensionlessUrlHandler-Integrated-4.0" xdt:Locator="Match(name)" xdt:Transform="InsertIfMissing" />
      <remove name="OPTIONSVerbHandler" xdt:Locator="Match(name)" xdt:Transform="InsertIfMissing" />
      <remove name="TRACEVerbHandler" xdt:Locator="Match(name)" xdt:Transform="InsertIfMissing" />
      <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" xdt:Locator="Match(name)" xdt:Transform="InsertIfMissing" />
      <remove name="WebDAV" xdt:Locator="Match(name)" xdt:Transform="InsertIfMissing" />
      <add name="PowerShell-Integrated-4.0" path="*.ps1" verb="GET,HEAD" type="System.Web.UI.PageHandlerFactory" modules="ManagedPipelineHandler" preCondition="integratedMode,runtimeVersionv4.0" xdt:Locator="Match(name)" xdt:Transform="InsertIfMissing" />
    <staticContent xdt:Transform="InsertIfMissing">
      <mimeMap fileExtension=".nupkg" mimeType="application/zip" xdt:Locator="Match(fileExtension)" xdt:Transform="InsertIfMissing" />
      <remove fileExtension=".ps1" xdt:Locator="Match(fileExtension)" xdt:Transform="InsertIfMissing" />
    <modules runAllManagedModulesForAllRequests="true" xdt:Transform="InsertIfMissing">
      <remove name="WebDAVModule" xdt:Locator="Match(name)" xdt:Transform="InsertIfMissing" />
    <security xdt:Transform="InsertIfMissing">
      <requestFiltering xdt:Transform="InsertIfMissing">
        <requestLimits maxAllowedContentLength="2147482548" xdt:Transform="InsertIfMissing" />
  <location path="api/v2/package" xdt:Locator="Match(path)" xdt:Transform="InsertIfMissing" />
  <location path="api/v2/package" xdt:Locator="Match(path)" xdt:Transform="Remove" />
  <location path="chocolatey" xdt:Locator="Match(path)" xdt:Transform="InsertIfMissing" />
  <location path="chocolatey" xdt:Locator="Match(path)" xdt:Transform="Remove" />
    <add key="ignoreSymbolsPackages" value="true" xdt:Locator="Match(key)" xdt:Transform="InsertIfMissing" />
    <add key="enableFileSystemMonitoring" value="true" xdt:Locator="Match(key)" xdt:Transform="InsertIfMissing" />
    <add key="enableSimpleMembership" value="false" xdt:Locator="Match(key)" xdt:Transform="InsertIfMissing" />
  <runtime xdt:Transform="InsertIfMissing">
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1" xdt:Transform="InsertIfMissing">
        <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" xdt:Locator="Match(name)" xdt:Transform="InsertIfMissing" />
        <bindingRedirect oldVersion="" newVersion="" xdt:Transform="InsertIfMissing" />
        <assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" culture="neutral" xdt:Locator="Match(name)" xdt:Transform="InsertIfMissing" />
        <bindingRedirect oldVersion="" newVersion="" xdt:Transform="InsertIfMissing" />
        <assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="31bf3856ad364e35" culture="neutral" xdt:Locator="Match(name)" xdt:Transform="InsertIfMissing" />
        <bindingRedirect oldVersion="" newVersion="" xdt:Transform="InsertIfMissing" />
        <assemblyIdentity name="Microsoft.Data.Edm" publicKeyToken="31bf3856ad364e35" culture="neutral" xdt:Locator="Match(name)" xdt:Transform="InsertIfMissing" />
        <bindingRedirect oldVersion="" newVersion="" xdt:Transform="InsertIfMissing" />
        <assemblyIdentity name="Microsoft.Data.OData" publicKeyToken="31bf3856ad364e35" culture="neutral" xdt:Locator="Match(name)" xdt:Transform="InsertIfMissing" />
        <bindingRedirect oldVersion="" newVersion="" xdt:Transform="InsertIfMissing" />
        <assemblyIdentity name="System.Spatial" publicKeyToken="31bf3856ad364e35" culture="neutral" xdt:Locator="Match(name)" xdt:Transform="InsertIfMissing" />
        <bindingRedirect oldVersion="" newVersion="" xdt:Transform="InsertIfMissing" />
  <system.codedom xdt:Transform="InsertIfMissing" />
  <system.codedom xdt:Transform="Remove" />
$packageName       = $env:ChocolateyPackageName
$toolsDir          = "$(Split-Path -parent $MyInvocation.MyCommand.Definition)"
$webToolsDir       = Join-Path $toolsDir $packageName
$packageWebConfig  = Join-Path $webToolsDir 'Web.config'
$webInstallDir     = Join-Path (Get-ToolsLocation) $packageName
$existingWebConfig = Join-Path $webInstallDir 'Web.config'

If (Test-Path $existingWebConfig) {
  Write-Output "Copying existing web.config to package directory to allow proper updates"
  Copy-Item $existingWebConfig $packageWebConfig -Force -ErrorAction SilentlyContinue
$packageName   = $env:ChocolateyPackageName
$toolsDir      = "$(Split-Path -parent $MyInvocation.MyCommand.Definition)"
$webToolsDir   = Join-Path $toolsDir $packageName
$packageWebConfig  = Join-Path $webToolsDir 'Web.config'
$webInstallDir     = Join-Path (Get-ToolsLocation) $packageName
$existingWebConfig = Join-Path $webInstallDir 'Web.config'

#Enable Web Services
#cinst IIS-WebServerRole -source WindowsFeatures
#cinst IIS-ISAPIFilter -source WindowsFeatures
#cinst IIS-ISAPIExtensions -source WindowsFeatures

# cinst ASPNET -source webpi
# cinst ASPNET_REGIIS -source webpi
# cinst DefaultDocument -source webpi
# cinst DynamicContentCompression -source webpi
# cinst HTTPRedirection -source webpi
# cinst IIS7_ExtensionLessURLs -source webpi
# cinst IISManagementConsole -source webpi
# cinst ISAPIExtensions -source webpi
# cinst ISAPIFilters -source webpi
# cinst NETExtensibility -source webpi
# cinst RequestFiltering -source webpi
# cinst StaticContent -source webpi
# cinst StaticContentCompression -source webpi
# cinst UrlRewrite2 -source webpi

# W3SVC should be running

$osVersion = [Environment]::OSVersion.Version
if ($osVersion -ge [Version]'6.2') #8/2012+
#cinst IIS-NetFxExtensibility45 -source WindowsFeatures
#cinst NetFx4Extended-ASPNET45 -source WindowsFeatures
#cinst IIS-ASPNet45 -source WindowsFeatures

} else { #Windows 7/2008 and below
."$env:windir\\framework\v4.0.30319\aspnet_regiis.exe" -i

If (Test-Path -Path $existingWebConfig) {
  Write-Output "Copying existing web.config to package directory to allow proper updates"
  Copy-Item $existingWebConfig $packageWebConfig -Force -ErrorAction SilentlyContinue
  Write-Warning "Due to transforms happening AFTER this script completes, you will likely need to manually migrate '$packageWebConfig' back to '$existingWebConfig' once upgrade is complete. Also check the config file to make sure that it was not malformed by the XDT transform."

if (! (Test-Path -Path $webInstallDir)) {
  New-Item $webInstallDir -ItemType Directory -Force | Out-Null
  Copy-Item $webToolsDir\* $webInstallDir -Recurse -Force
} else {
  try {
    Write-Debug "Removing all but the App_Data folder in the existing '$webInstallDir'"
    Get-ChildItem -Path "$webInstallDir" -Recurse | % {
      if ($_.FullName -match 'App_Data' -or $_.FullName -match 'Web.config') {
        Write-Debug " - Skipping $($_.FullName)"
      } else {
        Write-Debug " - Removing $($_.FullName)"
        Remove-Item $_.FullName -Recurse -Force -ErrorAction SilentlyContinue
  } catch {
    Write-Warning "Had an error deleting files from '$webInstallDir'. You will need to manually remove files. `n Error: $($_.Message)"

  # Now copy all new except the App_Data folder
  Write-Debug "Copying files from '$webToolsDir' to '$webInstallDir'"
  Get-ChildItem -Path $webToolsDir -Recurse | % {
    if ($_.FullName -match 'App_Data') {
      # leave these items
      Write-Debug "- Skipping $($_.FullName)"
    } else {
      if (! ($_.PSIsContainer)) {
        $srcFile = $_.FullName
        $destinationFile = Join-Path $webInstallDir ($srcFile.Substring($webToolsDir.length))
        $destinationDir = $destinationFile.Replace($destinationFile.Split("\")[-1],"")
        #$destinationDir = Join-Path $webInstallDir ($_.Parent.FullName.Substring($webToolsDir.length))
        if (! (Test-Path -Path $destinationDir)) {
          Write-Debug " - Creating $destinationDir"
          New-Item $destinationDir -ItemType Directory -Force | Out-Null
        try {
          Write-Debug " - Copying '$srcFile' to '$destinationFile'"
          Copy-Item $srcFile -Destination $destinationFile -Force -ErrorAction Stop
        } catch {
          Write-Warning "Unable to copy '$srcFile' to '$destinationFile'. `n Error: $_"

#Import-Module WebAdministration
#Remove-WebSite -Name "Default Web Site" -ErrorAction SilentlyContinue
#Remove-WebSite -Name "ChocolateyServer" -ErrorAction SilentlyContinue
#New-WebSite -ID 1 -Name "ChocolateyServer" -Port 80 -PhysicalPath "$webInstallDir" -Force

# Write-Host "Setting folder permissions on `'$webInstallDir`' to 'Read' for user $networkSvc"
# $acl = Get-Acl $webInstallDir
# $acl.SetAccessRuleProtection($False, $True)
# $rule = New-Object System.Security.AccessControl.FileSystemAccessRule("$networkSvc","Read", "ContainerInherit, ObjectInherit", "None", "Allow");
# $acl.AddAccessRule($rule);
# Set-Acl $webInstallDir $acl

# $webInstallAppDataDir = Join-Path $webInstallDir 'App_Data'
# Write-Host "Setting folder permissions on `'$webInstallAppDataDir`' to 'Modify' for user $networkSvc"
# $acl = Get-Acl $webInstallAppDataDir
# $acl.SetAccessRuleProtection($False, $True)
# $rule = New-Object System.Security.AccessControl.FileSystemAccessRule("$networkSvc","Modify", "ContainerInherit, ObjectInherit", "None", "Allow");
# $acl.AddAccessRule($rule);
# Set-Acl $webInstallAppDataDir $acl
# Import-Module WebAdministration
# $appPoolPath = "IIS:\AppPools\$projectName"
# #$pool = new-object
# Write-Warning "You can safely ignore the next error if it occurs related to getting an app pool that doesn't exist"
# $pool = Get-Item $appPoolPath
# if ($pool -eq $null) {
#   Write-Host "Creating the app pool `'$appPoolPath`'"
#   $pool = New-Item $appPoolPath
# }
# $pool.processModel.identityType = "NetworkService"
# $pool | Set-Item
# Set-itemproperty $appPoolPath -Name "managedRuntimeVersion" -Value "v4.0"
# #Set-itemproperty $appPoolPath -Name "managedPipelineMode" -Value "Integrated"
# Start-WebAppPool "$projectName"
# Write-Host "Creating the site `'$projectName`' with appPool `'$projectName`'"
# New-WebApplication "$projectName" -Site "Default Web Site" -PhysicalPath $srcDir -ApplicationPool "$projectName" -Force

#Client SKUs need to enable firewall
#netsh advfirewall firewall add rule name="Open Port 80" dir=in action=allow protocol=TCP localport=80
$packageName   = $env:ChocolateyPackageName
$webInstallDir = Join-Path (Get-ToolsLocation) $packageName

if (Test-Path $webInstallDir) {
  try {
    Write-Debug "Removing all but the App_Data folder in the existing '$webInstallDir'"
    Get-ChildItem -Path "$webInstallDir" -Recurse | % {
      if ($_.FullName -match 'App_Data' -or $_.FullName -match 'Web.config') {
        Write-Debug " - Skipping $($_.FullName)"
      } else {
        Write-Debug " - Removing $($_.FullName)"
        Remove-Item $_.FullName -Recurse -Force -ErrorAction SilentlyContinue
  catch {
    Write-Warning "Had an error deleting files from '$webInstallDir'. You will need to manually remove files. Error: $_"

  Write-Warning "Removed all from '$webInstallDir' except for App_Data. You should inspect and remove packages/logs manually."
                                 Apache License
                           Version 2.0, January 2004


   1. Definitions.

      "License" shall mean the terms and conditions for use, reproduction,
      and distribution as defined by Sections 1 through 9 of this document.

      "Licensor" shall mean the copyright owner or entity authorized by
      the copyright owner that is granting the License.

      "Legal Entity" shall mean the union of the acting entity and all
      other entities that control, are controlled by, or are under common
      control with that entity. For the purposes of this definition,
      "control" means (i) the power, direct or indirect, to cause the
      direction or management of such entity, whether by contract or
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
      outstanding shares, or (iii) beneficial ownership of such entity.

      "You" (or "Your") shall mean an individual or Legal Entity
      exercising permissions granted by this License.

      "Source" form shall mean the preferred form for making modifications,
      including but not limited to software source code, documentation
      source, and configuration files.

      "Object" form shall mean any form resulting from mechanical
      transformation or translation of a Source form, including but
      not limited to compiled object code, generated documentation,
      and conversions to other media types.

      "Work" shall mean the work of authorship, whether in Source or
      Object form, made available under the License, as indicated by a
      copyright notice that is included in or attached to the work
      (an example is provided in the Appendix below).

      "Derivative Works" shall mean any work, whether in Source or Object
      form, that is based on (or derived from) the Work and for which the
      editorial revisions, annotations, elaborations, or other modifications
      represent, as a whole, an original work of authorship. For the purposes
      of this License, Derivative Works shall not include works that remain
      separable from, or merely link (or bind by name) to the interfaces of,
      the Work and Derivative Works thereof.

      "Contribution" shall mean any work of authorship, including
      the original version of the Work and any modifications or additions
      to that Work or Derivative Works thereof, that is intentionally
      submitted to Licensor for inclusion in the Work by the copyright owner
      or by an individual or Legal Entity authorized to submit on behalf of
      the copyright owner. For the purposes of this definition, "submitted"
      means any form of electronic, verbal, or written communication sent
      to the Licensor or its representatives, including but not limited to
      communication on electronic mailing lists, source code control systems,
      and issue tracking systems that are managed by, or on behalf of, the
      Licensor for the purpose of discussing and improving the Work, but
      excluding communication that is conspicuously marked or otherwise
      designated in writing by the copyright owner as "Not a Contribution."

      "Contributor" shall mean Licensor and any individual or Legal Entity
      on behalf of whom a Contribution has been received by Licensor and
      subsequently incorporated within the Work.

   2. Grant of Copyright License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      copyright license to reproduce, prepare Derivative Works of,
      publicly display, publicly perform, sublicense, and distribute the
      Work and such Derivative Works in Source or Object form.

   3. Grant of Patent License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      (except as stated in this section) patent license to make, have made,
      use, offer to sell, sell, import, and otherwise transfer the Work,
      where such license applies only to those patent claims licensable
      by such Contributor that are necessarily infringed by their
      Contribution(s) alone or by combination of their Contribution(s)
      with the Work to which such Contribution(s) was submitted. If You
      institute patent litigation against any entity (including a
      cross-claim or counterclaim in a lawsuit) alleging that the Work
      or a Contribution incorporated within the Work constitutes direct
      or contributory patent infringement, then any patent licenses
      granted to You under this License for that Work shall terminate
      as of the date such litigation is filed.

   4. Redistribution. You may reproduce and distribute copies of the
      Work or Derivative Works thereof in any medium, with or without
      modifications, and in Source or Object form, provided that You
      meet the following conditions:

      (a) You must give any other recipients of the Work or
          Derivative Works a copy of this License; and

      (b) You must cause any modified files to carry prominent notices
          stating that You changed the files; and

      (c) You must retain, in the Source form of any Derivative Works
          that You distribute, all copyright, patent, trademark, and
          attribution notices from the Source form of the Work,
          excluding those notices that do not pertain to any part of
          the Derivative Works; and

      (d) If the Work includes a "NOTICE" text file as part of its
          distribution, then any Derivative Works that You distribute must
          include a readable copy of the attribution notices contained
          within such NOTICE file, excluding those notices that do not
          pertain to any part of the Derivative Works, in at least one
          of the following places: within a NOTICE text file distributed
          as part of the Derivative Works; within the Source form or
          documentation, if provided along with the Derivative Works; or,
          within a display generated by the Derivative Works, if and
          wherever such third-party notices normally appear. The contents
          of the NOTICE file are for informational purposes only and
          do not modify the License. You may add Your own attribution
          notices within Derivative Works that You distribute, alongside
          or as an addendum to the NOTICE text from the Work, provided
          that such additional attribution notices cannot be construed
          as modifying the License.

      You may add Your own copyright statement to Your modifications and
      may provide additional or different license terms and conditions
      for use, reproduction, or distribution of Your modifications, or
      for any such Derivative Works as a whole, provided Your use,
      reproduction, and distribution of the Work otherwise complies with
      the conditions stated in this License.

   5. Submission of Contributions. Unless You explicitly state otherwise,
      any Contribution intentionally submitted for inclusion in the Work
      by You to the Licensor shall be under the terms and conditions of
      this License, without any additional terms or conditions.
      Notwithstanding the above, nothing herein shall supersede or modify
      the terms of any separate license agreement you may have executed
      with Licensor regarding such Contributions.

   6. Trademarks. This License does not grant permission to use the trade
      names, trademarks, service marks, or product names of the Licensor,
      except as required for reasonable and customary use in describing the
      origin of the Work and reproducing the content of the NOTICE file.

   7. Disclaimer of Warranty. Unless required by applicable law or
      agreed to in writing, Licensor provides the Work (and each
      Contributor provides its Contributions) on an "AS IS" BASIS,
      implied, including, without limitation, any warranties or conditions
      PARTICULAR PURPOSE. You are solely responsible for determining the
      appropriateness of using or redistributing the Work and assume any
      risks associated with Your exercise of permissions under this License.

   8. Limitation of Liability. In no event and under no legal theory,
      whether in tort (including negligence), contract, or otherwise,
      unless required by applicable law (such as deliberate and grossly
      negligent acts) or agreed to in writing, shall any Contributor be
      liable to You for damages, including any direct, indirect, special,
      incidental, or consequential damages of any character arising as a
      result of this License or out of the use or inability to use the
      Work (including but not limited to damages for loss of goodwill,
      work stoppage, computer failure or malfunction, or any and all
      other commercial damages or losses), even if such Contributor
      has been advised of the possibility of such damages.

   9. Accepting Warranty or Additional Liability. While redistributing
      the Work or Derivative Works thereof, You may choose to offer,
      and charge a fee for, acceptance of support, warranty, indemnity,
      or other liability obligations and/or rights consistent with this
      License. However, in accepting such obligations, You may act only
      on Your own behalf and on Your sole responsibility, not on behalf
      of any other Contributor, and only if You agree to indemnify,
      defend, and hold each Contributor harmless for any liability
      incurred by, or claims asserted against, such Contributor by reason
      of your accepting any such warranty or additional liability.
Chocolatey Server is from Chocolatey Software, and we maintain the package.

Log in or click on link to see number of positives.

In cases where actual malware is found, the packages are subject to removal. Software sometimes has false positives. Moderators do not necessarily validate the safety of the underlying software, only that a package retrieves software from the official distribution point and/or validate embedded software against official distribution point (where distribution rights allow redistribution).

Chocolatey Pro provides runtime protection from possible malware.

Version Downloads Last Updated Status
Chocolatey Server (Simple) 0.2.5-beta-20180418 351 Wednesday, April 18, 2018 Approved
Chocolatey Server (Simple) 0.2.4 2189 Monday, February 26, 2018 Approved
Chocolatey Server (Simple) 0.2.3 511 Sunday, February 11, 2018 Approved
Chocolatey Server (Simple) 0.2.2 771 Thursday, January 11, 2018 Approved
Chocolatey Server (Simple) 0.2.1 330 Monday, January 8, 2018 Approved
Chocolatey Server (Simple) 0.2.0 386 Thursday, January 4, 2018 Approved
Chocolatey Server (Simple) 0.1.4 346 Tuesday, January 2, 2018 Approved
Chocolatey Server (Simple) 0.1.3 1264 Friday, October 6, 2017 Approved
Chocolatey Server (Simple) 0.1.2 2632 Thursday, November 17, 2016 Approved

Full Release notes at

0.2.4 (February 26, 2018)


  • Fix - install.ps1 - Function Download-Script is called before its definition - #41
  • Fix - Remove duplicate XDT file - #39

0.2.3 (February 11, 2018)


  • Allow installation of Chocolatey with install.ps1 script - #27


  • Provide instructions on changing apikey versus what setapikey does - #25
  • Enhance documentation (multiple requests) enhancement - #26

0.2.2 (January 11, 2018)


  • Fix - Turning on basic auth with HttpAuth Module no longer allows pushing in v0.2x - #21
  • Fix - Pushing to default url is missing in v0.2.x - #20

0.2.1 (January 8, 2018)


  • Fix - New installation doesn't copy subfolders and files - #18

0.2.0 (January 4, 2018)


  • Require .NET Framework 4.6.x - #14

To use the same caching techniques mentioned below in #10, we needed to upgrade to the same version of the .NET Framework that was being used by NuGet.Server. That means you need to take some extra steps of ensuring that your ASP.NET has .NET 4.6+ registered so that files are served properly.


  • Use same caching techniques as NuGet.Server v3x+ (NuGet v3.4.x+) - #10

No longer time out when serving up large-sized packages. This is accomplished by pulling the items out of packages ahead of time that are necessary when serving information.


  • Fix - Uploading large package results in System.OutOfMemoryException - #15


  • Show version of Chocolatey Server on site - #12
  • Manage upgrades and uninstalls gracefully - #13
Discussion for the Chocolatey Server (Simple) Package

Ground Rules:

  • This discussion is only about Chocolatey Server (Simple) and the Chocolatey Server (Simple) package. If you have feedback for Chocolatey, please contact the Google Group.
  • This discussion will carry over multiple versions. If you have a comment about a particular version, please note that in your comments.
  • The maintainers of this Chocolatey Package will be notified about new comments that are posted to this Disqus thread, however, it is NOT a guarantee that you will get a response. If you do not hear back from the maintainers after posting a message below, please follow up by using the link on the left side of this page or follow this link to contact maintainers. If you still hear nothing back, please follow the package triage process.
  • Tell us what you love about the package or Chocolatey Server (Simple), or tell us what needs improvement.
  • Share your experiences with the package, or extra configuration or gotchas that you've found.
  • If you use a url, the comment will be flagged for moderation until you've been whitelisted. Disqus moderated comments are approved on a weekly schedule if not sooner. It could take between 1-5 days for your comment to show up.
comments powered by Disqus