03.07.2016 Views

pkgsrc on windows

pkgsrc-on-windows

pkgsrc-on-windows

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<str<strong>on</strong>g>pkgsrc</str<strong>on</strong>g> <strong>on</strong> <strong>windows</strong>


disclaimer<br />

• Hi, I’m wiedi@NetBSD.org<br />

• usually illumos & osx<br />

• d<strong>on</strong>’t know what I’m talking about


current opti<strong>on</strong>s: cygwin<br />

• already exists (and has for some time)<br />

• creates real PE files (.exe, .dll)<br />

• rather slow (fork can’t CoW)<br />

• recently (?) no <str<strong>on</strong>g>pkgsrc</str<strong>on</strong>g> dev work<br />

• no bulk builds, no fixes


current opti<strong>on</strong>s: WSL<br />

• <strong>windows</strong> subsystem for linux<br />

• aka „bash <strong>on</strong> ubuntu <strong>on</strong> <strong>windows</strong>“<br />

• executes native linux ELF binaries<br />

• syscall translati<strong>on</strong>, just like lxbranded<br />

z<strong>on</strong>es<br />

• not much to be d<strong>on</strong>e <strong>on</strong> <str<strong>on</strong>g>pkgsrc</str<strong>on</strong>g> side


current opti<strong>on</strong>s: WSL


current opti<strong>on</strong>s: WSL


midipix<br />

warning: not even alpha release yet!


midipix<br />

• create <strong>windows</strong> programms<br />

• using standard C and POSIX APIs<br />

• provides posix syscall layer<br />

• uses Native API (ntdll.dll)<br />

• copy-<strong>on</strong>-write fork<br />

• utf-8<br />

• easy cross-compilati<strong>on</strong>


midipix<br />

• git.midipix.org:<br />

• cbb-gcc-4.6.4: gcc with midipix targets<br />

• psxscl: midipix system call layer<br />

• ntapi: Native API core lib<br />

• ntctty: pty<br />

• musl: libc


midipix


midipix


midipix


slibtool<br />

• libtool rewrite in C<br />

• drop-in replacement<br />

• jperkin also working <strong>on</strong> it


summary / todo<br />

• integrate slibtool<br />

• allow native bootstrap<br />

• package midipix cross toolchain


thanks!<br />

• questi<strong>on</strong>s to #midipix <strong>on</strong> freenode

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!