Giter VIP home page Giter VIP logo

Comments (7)

justinlovinger avatar justinlovinger commented on September 24, 2024 1

Note, Bluetooth keyboards and mice do not work out-of-the-box on the latest NixOS unless you enable CONFIG_UHID, which is disabled in a number of the kernel-configurations in this repository.

from mobile-nixos.

codgician avatar codgician commented on September 24, 2024

You don't have to fork the entire project. It is possible to leverage mobile.boot.stage-1.kernel.package option and override the kernel package. You may refer my configuration as an example.

from mobile-nixos.

justinlovinger avatar justinlovinger commented on September 24, 2024

nixos-hardware recently added support for the Librem 5, and I noticed they were able to build its kernel with the standard NixOS builder, https://github.com/NixOS/nixos-hardware/blob/master/purism/librem/5r4/kernel.nix. That led me to investigate why Mobile NixOS uses a bespoke builder, and I noticed this interesting tidbit, "Many kernels will be of older vintages, not supported by NixOS' own kernel build infrastructure", https://github.com/NixOS/mobile-nixos/blob/development/overlay/mobile-nixos/kernel/builder.nix. I believe this is a holdover from before Mobile NixOS dropped support for non-mainline devices. We should be able to use the standard NixOS kernel-builder now.

from mobile-nixos.

samueldr avatar samueldr commented on September 24, 2024

You're reading an historical note.

The current reason the builder infra builds a kernel "in this weird way" is because of the open question about dealing with kernel modules for a kernel booted outside of the lifecycle of generations.

from mobile-nixos.

justinlovinger avatar justinlovinger commented on September 24, 2024

You're reading an historical note.

The note should probably be updated then.

The current reason the builder infra builds a kernel "in this weird way" is because of the open question about dealing with kernel modules for a kernel booted outside of the lifecycle of generations.

That still raises the question, why can the Librem 5 work without your kernel-builder? If your kernel-builder is not strictly necessary, it should not be required for using the devices supported by this project, especially given the issues it causes.

from mobile-nixos.

samueldr avatar samueldr commented on September 24, 2024

Imagine this scenario:

  • User updates NixOS system
  • Kernel updates
  • Fails to boot

With the default setup, your device is toast until you figure out some tethered method to recover the device setup, since the kernel is managed within the lifecycle of generations, but without a way to select a generation.

This is what using the infra from Mobile NixOS allows.

In the end these are just Linux devices. You can use them however you like. You've never been forced to use Mobile NixOS.

especially given the issues it causes.

Easy to say when not understanding the issues it solves.

from mobile-nixos.

justinlovinger avatar justinlovinger commented on September 24, 2024

Easy to say when not understanding the issues it solves.

I know this is a sensitive time for you, so I will scrap the longer response I wrote. Instead, I will simply say, as someone who has been daily-driving Mobile NixOS on my PinePhone for years, I disagree that the advantages of your kernel-builder outweigh the negatives.

from mobile-nixos.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.