16 comments

  • thegeomaster 8 minutes ago

    [delayed]

  • monax 4 hours ago

    Didn’t expect to see my project on the main page today ‘^^ Right now the build is broken, so you can’t test the full OS, but you can run individual apps with:

    ```bash ./skift.sh run --release <app-name> ```

    on Linux or macOS.

    To see all available apps:

    ```bash ls ./src/apps ```

    • monax 3 hours ago

      This works for everything except the browser. For that, use:

      ```bash ./skift.sh run --release vaev-browser -- <url-or-file> ```

      The HTTP stack is super barebones, so it only supports `http://` (no HTTPS). It works with my site, but results may vary elsewhere.

      Most of my time so far has gone into the styling and layout engine rather than networking.

    • pjmlp 3 hours ago

      Kudos for exploring other avenues outside UNIX.

      • monax 3 hours ago

        Thanks! Skift is basically a patchwork of all the OS ideas I like. The UI takes inspiration from SwiftUI/Flutter, the microkernel is influenced by Zircon, and there are some Plan 9 ideas where everything is a URL. A few bits are probably inspired by NT and Darwin too, though I don’t remember exactly which.

    • DeathArrow 2 hours ago

      How much time did it take you to get the project to this phase?

      • monax 2 hours ago

        I had multiple rewrites, but this last iteration is two years old

  • rubymamis 19 minutes ago

    The code is really well written - very understandable and modern, kudos on that!

    I'm curious, how come the app I just compiled works on macOS?

  • brodo 18 minutes ago

    Very impressive! Do you support GPUs or is the UI completely CPU rendered? It looks really beautiful.

  • pkphilip 4 hours ago

    This looks really cool! congratulations to the person who made this! Is there a video demo of this somewhere?

    I am amazed that you also managed to write a browser engine!

  • Panzerschrek 4 hours ago

    What else does it have rather than beautiful UI? Network support? Sound? What file systems does it support? What about multiple users? What about applications isolation?

    It would be nice to have such information displayed somewhere on the site.

    • monax 3 hours ago

      It’s a microkernel-based operating system. Mostly just a learning/fun side project for me. It implements something akin to the NixOS /store. Hardware, networking, sound, and the file system are all very barebones. Most of the work so far has been put into the framework, some example apps, and the browser.

  • spuz an hour ago

    What ideas do you employ around security? Do apps have full access to memory? To hardware? Is there a permissions system? Sorry I'm not that familiar with how microkernels work.

    • monax 38 minutes ago

      Apps don’t get full access to memory or hardware. The kernel only maps what they’re allowed to see. Drivers live in user space, and apps talk to them through capabilities (handles you can pass around). There’s no ambient authority, you only get access if you’ve been given the key.

  • binocry 2 hours ago

    damn this is really good. I hope the register folk sees this.

  • akash100x 2 hours ago

    so cool! building from past 6 years (impressive)