Jump to content

Installing Nix on Crostini: Difference between revisions

no edit summary
imported>Moredhel
(add initial wiki page for using Nix within Crostini)
 
imported>Matthewbauer
No edit summary
Line 1: Line 1:
This Wiki page describes the process required to get up and running on ChromeOs within Crostini. This does not talk about Crouton and assumes you have already installed Nix. [https://nixos.org/nix/manual/#chap-installation Guide to Installation].
This Wiki page describes the process required to get up and running on Chrome OS within Crostini. This does not talk about Crouton and assumes you have already installed Nix. [https://nixos.org/nix/manual/#chap-installation Guide to Installation].


Once you have Nix installed, there are a few things that need to be done.
Once you have Nix installed, there are a few things that need to be done.
Line 8: Line 8:
Using [https://github.com/rycee/home-manager/ Home-manager] is pretty straight-forward, and is an easy way to manage Nix and install packages. The documentation on the Github repo is sufficient.
Using [https://github.com/rycee/home-manager/ Home-manager] is pretty straight-forward, and is an easy way to manage Nix and install packages. The documentation on the Github repo is sufficient.


== Registering Applications with ChromeOs ==
== Registering Applications with Chrome OS ==


This feature of Crostini expects .desktop files to be dropped in the appropriate places. (namely somewhere under <code>$XDG_DATA</code>).
This feature of Crostini expects .desktop files to be dropped in the appropriate places. (namely somewhere under <code>$XDG_DATA</code>).


Applications are registered with ChromeOs using a service running within the container called ''cros-garcon''. As it is a simple systemd service, we can easily extend it to look in nix-specific locations.
Applications are registered with Chrome OS using a service running within the container called ''cros-garcon''. As it is a simple systemd service, we can easily extend it to look in nix-specific locations.


First we extend the service with new environment variables
First we extend the service with new environment variables
Anonymous user