new software added

This commit is contained in:
2025-07-16 23:37:23 +02:00
parent 575555ce14
commit 3f58e339fa
6 changed files with 27 additions and 4 deletions

View File

@ -6,6 +6,7 @@
- [Nix basics](./nixbasics/index.md) - [Nix basics](./nixbasics/index.md)
- [Flakes](./nixbasics/flakes.md) - [Flakes](./nixbasics/flakes.md)
- [Types](./nixbasics/types.md) - [Types](./nixbasics/types.md)
- [Language](./nixbasics/language.md)
- [Configuration](./configuration/index.md) - [Configuration](./configuration/index.md)
- [Drivers](./configuration/drivers.md) - [Drivers](./configuration/drivers.md)
- [GUI](./configuration/GUI.md) - [GUI](./configuration/GUI.md)

View File

@ -1,7 +1,7 @@
# Cleaning old packages # Cleaning old packages
By default, packages installed will be kept after each rebuild, even if they are not active anymore. By default, packages installed will be kept after each rebuild, even if they are not active anymore.
You can manually garbage collect with `nix-collect-garbage -d` to remove all the old generations. You can manually garbage collect with `nix-collect-garbage -d` to remove all the old generations (`sudo` is needed for system packages).
One can however do this automatically using the following: One can however do this automatically using the following:
```nix ```nix

View File

@ -60,7 +60,7 @@ This assumes that we are installing on an x86 system, if not, change the system
# The home.packages option allows you to install Nix packages into your # The home.packages option allows you to install Nix packages into your
# environment. # environment.
home.packages = [ home.packages = with pkgs; [
# # Adds the 'hello' command to your environment. It prints a friendly # # Adds the 'hello' command to your environment. It prints a friendly
# # "Hello, world!" when run. # # "Hello, world!" when run.
# pkgs.hello # pkgs.hello

View File

@ -1 +1,22 @@
# How to find new software and configure # How to find new software and configure
So, you have a system, but how do you now install software that you want to use?
## Finding packages
[search.nixos.org](https://search.nixos.org/packages?channel=unstable) is the way to search for packages.
Lets say that you want to add `nnn` to your user via home-manager.
First, search and make sure that `nnn` is available using the link earlier, then add it to the list `home.packages` in `home.nix`.
If you want to add it to the system environment, then add it to the list `environment.systemPackages` in `configuration.nix`.
## Finding options
[search.nixos.org/options](https://search.nixos.org/options?channel=unstable) is the way to search for options.
Lets say, you want to enable adb, you can search adb.
The first option is `programs.adb.enable`, which says it enables adb, but you need to add your user to the `adbusers` group.
If you want to enable a service, such as `tailscale`, searching for it shows how to enable it.
But `service.tailscale` has a lot of extra options, that regulate how the service works.
`service.tailscale.useRoutingFeatures` for example determines how the system should handle routing.
## Finding options for Home-manager
[home-manager-options.extranix.com](https://home-manager-options.extranix.com/) is the way to search for options for use in home-manager.
It works in the same way as [Finding options](#finding-options), but using the previous link.
It would allow one to find and configure `yazi` for example.

View File

@ -2,8 +2,8 @@
Flakes are as of writing this guide still an experimental feature. Flakes are as of writing this guide still an experimental feature.
However, flakes provide concepts that I feel are fundamental to the concepts of Nix. However, flakes provide concepts that I feel are fundamental to the concepts of Nix.
What flakes does is similar to `package-lock.json` from **npm**. What flakes does is similar to `package-lock.json` from `npm`.
It makes sure that the inputs that are used, for example **nixpkgs**, are kept to a specific version. It makes sure that the inputs that are used, for example `nixpkgs`, are kept to a specific version.
To enable flakes to your config, add the following To enable flakes to your config, add the following
```nix ```nix

View File

@ -0,0 +1 @@
# Language