@@ -216,26 +216,25 @@ module Cygwin = struct
216216 env [ (" CYGWIN" , " nodosfilewarning winsymlinks:native" ) ]
217217 @@ prepend_path (List. map (( ^ ) cyg.root) [ {| \bin| } ])
218218
219- let install_from_release ?(cyg = default) ?(msvs_tools = false ) ?(extra = [] )
220- () =
219+ let install_cygwin ?(cyg = default) ?(msvs_tools = false ) ?(extra = [] ) () =
221220 setup_env ~cyg
222221 @@ add
223222 ~src: [ " https://www.cygwin.com/setup-x86_64.exe" ]
224223 ~dst: (cyg.root ^ {| \setup- x86_64.exe| })
225224 ()
226225 @@ install_cygsympathy_from_source cyg
227- @@ install ~cyg extra
226+ @@ ( if extra <> [] then install ~cyg extra else empty)
228227 @@ (if msvs_tools then install_msvs_tools_from_source cyg else empty)
229228 @@ run
230229 {| awk - i inplace " /(^#)|(^$)/{print;next}{$4=" " noacl," " $4; print}" % s\etc\fstab| }
231230 cyg.root
232231
233232 let setup ?(cyg = default) ?from () =
234- ( match from with
235- | Some from ->
233+ maybe
234+ ( fun from ->
236235 copy ~from ~src: [ default.root ] ~dst: default.root () @@ setup_env ~cyg
237- |> cleanup
238- | None -> empty)
236+ |> cleanup)
237+ from
239238 @@ workdir {|% s\home\opam| } cyg.root
240239
241240 let cygwin_packages ?(flexdll_version = " 0.39-1" ) () =
@@ -322,12 +321,12 @@ module Winget = struct
322321
323322 let setup ?from () =
324323 let escape s = String.(concat {|""""|} (split_on_char '" ' s )) in
325- ( match from with
326- | Some from ->
324+ maybe
325+ ( fun from ->
327326 copy ~from
328327 ~src: [ {| C :\Program Files \winget- cli| } ]
329- ~dst: {| C :\Program Files \winget- cli| } ()
330- | None -> empty )
328+ ~dst: {| C :\Program Files \winget- cli| } ())
329+ from
331330 @@ prepend_path [ {| C :\Program Files \winget- cli| } ]
332331 @@ run_powershell ~escape
333332 {|$ path= (Join - Path $ env:LOCALAPPDATA 'Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState' ); New - Item $ path - ItemType Directory - Force ; '{ " $schema" : " https://aka.ms/winget-settings.schema.json" , " telemetry" : { " disable" : " true" } }' | Out - File - encoding ASCII (Join - Path $ path 'settings.json')| }
0 commit comments