1.A

是的,您可以将Nix视为使用/ nix / store作为缓存的构建工具. Nix是一个包管理器只是这种设计的副作用.

1.B

你的nix表达式取决于你的设置.为了弄清楚这一点,请查看$NIX_PATH变量,该变量指向nixpkgs repo副本所在的位置.那些副本(有时仍然是)由nix-channel工具管理,但将来你可以指向nixpkgs,如:

export NIX_PATH=nixpkgs=https://github.com/NixOS/nixpkgs/archive/16.03.tar.gz

您可以在这篇关于nix search paths的博客文章中阅读有关NIX_PATH的更多信息

1.C

是的,可以在机器之间复制包.实际上,已经有了一个工具:nix-copy-closure.

2.A

我相信你在这里谈论你用nix-env管理的Nix环境.我们通常将这些称为nix配置文件.我在第1点中对nix搜索路径(NIX_PATH变量)所说的并不真正适用于nix-env.

nix-env工具使用〜/ .nix-defexpr,默认情况下它是NIX_PATH的一部分,但这只是巧合.如果你清空NIX_PATH,由于〜/ .nix-defexpr,nix-env仍然可以找到派生.

2.B

用户配置文件只是一个nix环境(在2.a中描述),您可以将其更改为其他任何内容,例如:

nix-env --switch-profile ./result

其中./result是/ nix / store中的东西或指向/ nix / store的东西.然后上面的命令将使用./result切换〜/ .nix-profile符号链接.

2.C

nix-shell实际上更接近nix-build命令.那么让我先解释一下nix-build的功能.

nix-build用于构建.nix文件(也是派生,但为此我必须解释派生是什么).如何使用nix-build的示例:

nix-build something.nix

上面的命令会生成一个./result符号链接,指向/ nix / store中的某个内容. Nix命令将实现构建并将输出存储到/ nix / store中.

另一方面,nix-shell将完全执行nix-build所做的操作,除非它不会触发构建器脚本并将您带入该环境.这样你最终会得到一个可以用来开发nix表达式的环境,它也可以在nixpkgs存储库之外(例如你的私有项目).

3.A

Nix安装二进制文件,NixOS为该二进制文件创建配置,并将其与init系统(当前为systemd)挂钩.

3.B

不.这是其他配置管理员所做的事情.尼克斯反过来工作.在blog post中很好地描述了方法的不同之处.

3.C

如3.a所述,nix只会安装二进制文件,而nixos也会确保二进制文件正在运行.

4.A / B / C

基本上没有限制,你认为如何适合你.一旦您了解了基本概念,您就会找到最适合您的概念.看看别人的dotfiles /配置并有意见.

我使用my collection的nixos配置为我的家人管理笔记本电脑

system.auto升级服务.

为了创建一个(构建)可重现的环境,我前段时间写过a blog post.

5.

我个人最喜欢的工具(或已经在这里)是vulnix.这将检查您当前的系统/项目是否存在当前漏洞(CVE).这使得nix与其他人脱颖而出,特别是因为它易于使用(没有企业设置).

我在nix中找到的另一个用例是使用dockerTools helpers构建可重现的docker镜像.

nix与linux的区别,linux – Nix / OS架构概述?相关推荐

  1. gnu和linux的区别,Linux和GNU/Linux之间的区别

    导读:当大多数人想到Linux时,他们会想到极客和技术人员使用的桌面操作系统或者用于为网站供电的基于服务器的操作系统.Linux无处不在.它是大多数智能设备背后的引擎.您正在使用的Android手机运 ...

  2. linux awk 区别,linux awk 中 RS,ORS,FS,OFS 区别与联系

    今天在学习时偶尔搜索到了这篇文章,觉得不错,转摘一下:http://blog.51yip.com/shell/1151.html 总结 RS,ORS,FS,OFS的区别和联系. 一,RS与ORS 1, ...

  3. linux io100的原因_Unix与Linux的区别与联系

    Linux和UNIX的最大的区别是,前者是开发源代码的自由软件,而后者是对源代码实行知识产权保护的传统商业软件.这应该是他们最大的不同,这种不同体现在用户对前者有很高的自主权,而对后者却只能去被动的适 ...

  4. unix与linux的区别_Linux与Unix:有什么区别?

    unix与linux的区别 如果您是20多岁或30多岁的软件开发人员,那么您已经在Linux主导的世界中长大了. 数十年来,它一直是数据中心的重要参与者,尽管很难找到确定的操作系统市场份额报告,但Li ...

  5. UCOSii和Linux的区别和联系

    UCOSii和Linux的区别和联系 想通过UCOSii来理解Linux的系统架构,故参考一些资料,简单整理了一下UCOSii和Linux的区别和联系,以此来更好的学习Linux. 其具体对比如下: ...

  6. ggg的区别+linux、GNU、GNU/linux

    文章目录 linux.GNU.GNU/linux 什么是Linux 什么是GNU GNU/Linux是什么玩意儿 参考链接 三大区别 有一篇 gcc和g++的主要区别 chao网址 STL 链接 li ...

  7. 嵌入式linux和桌面linux的区别

    嵌入式linux和桌面linux的区别主要区别是: 1. 硬件平台: 嵌入式Linux一般是Mips, ARM平台, 桌面Linux一般是x86平台. 2. 根文件系统 嵌入式Linux一般用UBIF ...

  8. linux和unix区别_Unix vs Linux – Unix和Linux之间的区别

    linux和unix区别 Here you will learn about difference between unix and linux i.e. unix vs linux. 在这里,您将了 ...

  9. uclinux与linux的区别

    一.名字含义: 在uClinux这个英文单词中u表示Micro,小的意思,C表示Control,控制的意思, 所以uClinux就是Micro-Control-Linux,字面上的理解就是" ...

最新文章

  1. sql查询成绩最高分_sql查询各科成绩前三名----详述过程,思路清晰不烧脑!
  2. JBPM4.4整合SSH2项目
  3. 计算机文化基础第三版龙天才课后答案,龙天才
  4. 基于51单片机的电梯控制系统
  5. 计算机怎么办错误,电脑日志错误怎么办
  6. H+ Hplus html解决contabs.js未加载完毕时 点击会跳转至菜单框架外的bug
  7. javascript 自定义对象的两种方法
  8. java上传下载原理_Java上传下载文件原理
  9. waiting for headers
  10. Python图像处理一:图像的读取、显示与存储
  11. One Day One Step 之 nothing
  12. python模拟阴阳师抽卡
  13. MySQL数据库id主键或密码使用MD5加密
  14. 解决pip装包报错ERROR: Cannot unistall ‘llvmlite‘. It is a distutils installed project and thus we cannot..
  15. flash mx拖拽实例_在Flash MX中制作射击游戏
  16. SRS源码阅读(一)
  17. Linux kernel panic 问题解决方案
  18. 【Unity】励志成为最强UI仔—BeaverJoe项目之UI界面制作【上】代码优化-动态加载UI对象
  19. 【BZOJ4864】【BJWC2017】神秘物质 - Splay
  20. APP推广案例之星巴克APP营销方式

热门文章

  1. Grub及MBR修复
  2. PostgreSQL 数据访问 offset 的质变 case
  3. discuz手机版模板开发
  4. Android Json生成及解析实例
  5. Linux - 手册(manual)使用 详解
  6. Oracle 异常--工作中出现的
  7. golang 1.18 新增泛型 简介
  8. python3 报错 TypeError: load() got an unexpected keyword argument ‘encoding‘ 解决方法
  9. linux 安全基线加固
  10. ndpi 流量协议分析