mirror of
https://github.com/ryan4yin/nixos-and-flakes-book
synced 2024-11-22 20:23:10 +00:00
Merge pull request #82 from c-lonas/patch-1
fixed typos in docs/faq/index.md
This commit is contained in:
commit
dffddfa3dd
1 changed files with 4 additions and 4 deletions
|
@ -16,7 +16,7 @@ Nix is not only used for managing desktop environments but is also widely employ
|
|||
|
||||
When compared to widely used traditional tools like Ansible, Nix has the following main advantages:
|
||||
|
||||
1. One of the biggest problems with this Anisble is that each deployment is based on incremental changes to the current state of the system. The current state of the system, like the snapshots mentioned above, is not interpretable and is difficult to reproduce. NixOS declares the target state of the system through its configuration files, so that the deployment result is independent of the current state of the system, and repeated deployments will not cause any problems.
|
||||
1. One of the biggest problems with this Ansible is that each deployment is based on incremental changes to the current state of the system. The current state of the system, like the snapshots mentioned above, is not interpretable and is difficult to reproduce. NixOS declares the target state of the system through its configuration files, so that the deployment result is independent of the current state of the system, and repeated deployments will not cause any problems.
|
||||
2. Nix Flakes uses a version lock file `flake.lock` to lock the hash value, version number, data source and other information of all dependencies, which greatly improves the reproducibility of the system. Traditional tools like Ansible don't have this feature, so they're not very reproducible.
|
||||
1. This is why Docker is so popular - it provides, at a fraction of the cost, a **reproducible system environment on a wide range of machines** that traditional Ops tools like Ansible don't.
|
||||
1. Nix provides a high degree of ease of system customization by shielding the underlying implementation details with a layer of declarative abstraction so that users only need to care about their core requirements. Tools like Ansible have much weaker abstractions.
|
||||
|
@ -89,7 +89,7 @@ Here are some solutions:
|
|||
#
|
||||
# or as a home manager module
|
||||
home.packages = let
|
||||
cusotom-python3 = (pkgs.python311.withPackages (ps:
|
||||
custom-python3 = (pkgs.python311.withPackages (ps:
|
||||
with ps; [
|
||||
ipython
|
||||
pandas
|
||||
|
@ -103,10 +103,10 @@ Here are some solutions:
|
|||
# override the version of python3
|
||||
# NOTE: This will trigger a rebuild of lldb, it takes time
|
||||
(lldb.override {
|
||||
python3 = cusotom-python3;
|
||||
python3 = custom-python3;
|
||||
})
|
||||
|
||||
cusotom-python3
|
||||
custom-python3
|
||||
];
|
||||
}
|
||||
```
|
||||
|
|
Loading…
Reference in a new issue