Nix Expression Language 38 15.1 Values

Total Page:16

File Type:pdf, Size:1020Kb

Nix Expression Language 38 15.1 Values Nix Package Manager Guide i Nix Package Manager Guide Version 1.11.15 Nix Package Manager Guide ii Copyright © 2004-2014 Eelco Dolstra Nix Package Manager Guide iii COLLABORATORS TITLE : Nix Package Manager Guide ACTION NAME DATE SIGNATURE WRITTEN BY Eelco Dolstra November 2014 REVISION HISTORY NUMBER DATE DESCRIPTION NAME Nix Package Manager Guide iv Contents I Introduction 1 1 About Nix 2 1.1 Multiple versions . .2 1.2 Complete dependencies . .2 1.3 Multi-user support . .2 1.4 Atomic upgrades and rollbacks . .3 1.5 Garbage collection . .3 1.6 Functional package language . .3 1.7 Transparent source/binary deployment . .3 1.8 Nix Packages collection . .4 1.9 Managing build environments . .4 1.10 Portability . .4 1.11 NixOS . .4 1.12 License . .4 2 Quick Start 5 II Installation 7 3 Supported Platforms 9 4 Installing a Binary Distribution 10 5 Installing Nix from Source 11 5.1 Prerequisites . 11 5.2 Obtaining a Source Distribution . 11 5.3 Building Nix from Source . 12 Nix Package Manager Guide v 6 Security 13 6.1 Single-User Mode . 13 6.2 Multi-User Mode . 13 6.2.1 Setting up the build users . 13 6.2.2 Running the daemon . 14 6.2.3 Restricting access . 14 7 Environment Variables 15 III Package Management 16 8 Basic Package Management 18 9 Profiles 21 10 Garbage Collection 23 10.1 Garbage Collector Roots . 24 11 Channels 25 12 One-Click Installation 26 13 Sharing Packages Between Machines 27 13.1 Serving a Nix store via HTTP . 27 13.2 Copying Closures Via SSH . 28 13.3 Serving a Nix store via SSH . 28 IV Writing Nix Expressions 30 14 A Simple Nix Expression 32 14.1 Expression Syntax . 32 14.2 Build Script . 33 14.3 Arguments and Variables . 34 14.4 Building and Testing . 35 14.4.1 Debugging Build Failures . 36 14.5 Generic Builder Syntax . 36 15 Nix Expression Language 38 15.1 Values . 38 15.1.1 Simple Values . 38 15.1.2 Lists . 39 15.1.3 Sets . 40 Nix Package Manager Guide vi 15.2 Language Constructs . 40 15.2.1 Recursive sets . 40 15.2.2 Let-expressions . 41 15.2.3 Inheriting attributes . 41 15.2.4 Functions . 42 15.2.5 Conditionals . 43 15.2.6 Assertions . 43 15.2.7 With-expressions . 44 15.2.8 Comments . 44 15.3 Operators . 44 15.4 Derivations . 45 15.4.1 Advanced Attributes . 46 15.5 Built-in Functions . 48 V Advanced Topics 56 16 Distributed Builds 57 VI Command Reference 59 17 Common Options 61 18 Common Environment Variables 64 19 Main Commands 66 19.1 nix-env . 66 19.2 nix-build . 76 19.3 nix-shell . 78 19.4 nix-store . 81 20 Utilities 93 20.1 nix-channel . 93 20.2 nix-collect-garbage . 94 20.3 nix-copy-closure . 95 20.4 nix-daemon . 96 20.5 nix-hash . 96 20.6 nix-install-package . 98 20.7 nix-instantiate . 99 20.8 nix-prefetch-url . 101 20.9 nix-pull . 102 20.10nix-push . 102 Nix Package Manager Guide vii 21 Files 106 21.1 nix.conf . 106 VII Troubleshooting 110 .1 Collisions in nix-env ................................................. 111 .2 “Too many links” Error in the Nix store . 111 VIII Glossary 112 IX Hacking 115 X Nix Release Notes 117 .3 Release 1.11.10 (2017-06-12).
Recommended publications
  • Referência Debian I
    Referência Debian i Referência Debian Osamu Aoki Referência Debian ii Copyright © 2013-2021 Osamu Aoki Esta Referência Debian (versão 2.85) (2021-09-17 09:11:56 UTC) pretende fornecer uma visão geral do sistema Debian como um guia do utilizador pós-instalação. Cobre muitos aspetos da administração do sistema através de exemplos shell-command para não programadores. Referência Debian iii COLLABORATORS TITLE : Referência Debian ACTION NAME DATE SIGNATURE WRITTEN BY Osamu Aoki 17 de setembro de 2021 REVISION HISTORY NUMBER DATE DESCRIPTION NAME Referência Debian iv Conteúdo 1 Manuais de GNU/Linux 1 1.1 Básico da consola ................................................... 1 1.1.1 A linha de comandos da shell ........................................ 1 1.1.2 The shell prompt under GUI ......................................... 2 1.1.3 A conta root .................................................. 2 1.1.4 A linha de comandos shell do root ...................................... 3 1.1.5 GUI de ferramentas de administração do sistema .............................. 3 1.1.6 Consolas virtuais ............................................... 3 1.1.7 Como abandonar a linha de comandos .................................... 3 1.1.8 Como desligar o sistema ........................................... 4 1.1.9 Recuperar uma consola sã .......................................... 4 1.1.10 Sugestões de pacotes adicionais para o novato ................................ 4 1.1.11 Uma conta de utilizador extra ........................................ 5 1.1.12 Configuração
    [Show full text]
  • Er Is Geen Gebrek Aan Linux Applicaties Om Je Foto's Te Bekijken
    Afbeelding 1: Foto’s bekijken. (zie afbeelding 1). Gebruik die om naar een directory met foto’s te navigeren. Geeqie gaat meteen op zoek naar foto’s. Bestanden die Geeqie niet als foto herkent, slaat hij gewoon over. Geeqie toont in het centrale deel de eerste foto. Onder de file browser staat de lijst met alle overige gevonden foto’s. Standaard is die lijst alfabetisch gerangschikt. Om bijvoorbeeld op datum te sorteren, klik je beneden op Sort by name. Vervolgens kies je Sort by date. Als je graag een thumb- nail bij de bestandsnaam ziet voor een eerste indruk van de foto, ga je naar View -> Files and Folders. Vink daar Show Thumbnails aan. Door op een bestand in de lijst te klikken, open je de desbetreffende foto. Om achter elkaar door de lijst te lopen zijn de PageUp en PageDown toet- sen handig. Heen en weer scrollen met het muiswieltje heeft hetzelfde effect. Als je dat doet met de Ctrl- toets ingedrukt, zoom je in en uit. Soms maak je meerdere foto’s achter elkaar, bijvoorbeeld met verschillende sluitertijden, om later de foto met de mooiste belichting te kiezen. Het is dan handig om de fo- to’s bij elkaar te zien. Dat doe je via View -> Split. Hier kies je of je twee foto’s naast of juist onder elkaar wilt zien. Met de optie Quad toont Geeqie zelfs vier foto’s tegelijk. Om de foto’s samen in- of uit te zoomen, gebruik je Shift samen met de plus- en mintoetsen van het numerieke deel van je toetsenbord.
    [Show full text]
  • Pipenightdreams Osgcal-Doc Mumudvb Mpg123-Alsa Tbb
    pipenightdreams osgcal-doc mumudvb mpg123-alsa tbb-examples libgammu4-dbg gcc-4.1-doc snort-rules-default davical cutmp3 libevolution5.0-cil aspell-am python-gobject-doc openoffice.org-l10n-mn libc6-xen xserver-xorg trophy-data t38modem pioneers-console libnb-platform10-java libgtkglext1-ruby libboost-wave1.39-dev drgenius bfbtester libchromexvmcpro1 isdnutils-xtools ubuntuone-client openoffice.org2-math openoffice.org-l10n-lt lsb-cxx-ia32 kdeartwork-emoticons-kde4 wmpuzzle trafshow python-plplot lx-gdb link-monitor-applet libscm-dev liblog-agent-logger-perl libccrtp-doc libclass-throwable-perl kde-i18n-csb jack-jconv hamradio-menus coinor-libvol-doc msx-emulator bitbake nabi language-pack-gnome-zh libpaperg popularity-contest xracer-tools xfont-nexus opendrim-lmp-baseserver libvorbisfile-ruby liblinebreak-doc libgfcui-2.0-0c2a-dbg libblacs-mpi-dev dict-freedict-spa-eng blender-ogrexml aspell-da x11-apps openoffice.org-l10n-lv openoffice.org-l10n-nl pnmtopng libodbcinstq1 libhsqldb-java-doc libmono-addins-gui0.2-cil sg3-utils linux-backports-modules-alsa-2.6.31-19-generic yorick-yeti-gsl python-pymssql plasma-widget-cpuload mcpp gpsim-lcd cl-csv libhtml-clean-perl asterisk-dbg apt-dater-dbg libgnome-mag1-dev language-pack-gnome-yo python-crypto svn-autoreleasedeb sugar-terminal-activity mii-diag maria-doc libplexus-component-api-java-doc libhugs-hgl-bundled libchipcard-libgwenhywfar47-plugins libghc6-random-dev freefem3d ezmlm cakephp-scripts aspell-ar ara-byte not+sparc openoffice.org-l10n-nn linux-backports-modules-karmic-generic-pae
    [Show full text]
  • Showing JPG Comments in an Image Browser John C
    Showing JPG comments in an image browser John C. Nash 2017-06-04 The Conclusions (up front!) The JPEG image standard allows several ways to save caption information INSIDE an individual JPG file. This is important, as captions stored separately can be “lost” if filenames are changed. However, which choice of mechanism to use leads to confusion. Here I recommend the “Comment” field be used. This is available via rdjpgcom and wrjpgcom tools in Linux. On Windows, or under WINE in Linux, Irfanview is quite capable (Image/Info/Comment), but mapivi which is cross platform is sometimes better for adding comments. For Linux I found feh allowed a simple script to display images with comments for a quick verification of the caption. Irfanview offers a full-screen option that is similar. Having got into “production” mode, I discovered that it was, or at least feels, more efficient to work mostly in Irfanview. The background to this is outlined in the section “Production workflow”. Motivations My wife and I have a lot of photos. We don’t look at them very often, but they do represent memories and serve to remind us of events in our past. There are also some that should be passed to other family and friends. The many albums take up space, and are not terribly well stored. For this reason we have been scanning them. Images on their own are not particularly useful. Therefore we have been adding captions, using the “Comment” capability of JPG files. This is in the IPTC tags of the JPEG standard (https://en.wikipedia.org/wiki/JPEG).
    [Show full text]
  • User Guide In
    Anduril User Guide February 27, 2015 Kristian Ovaska Ping Chen Marko Laakso Ville Rantanen Riku Louhimo Sirkku Karinen Javier Nu´nez˜ Fontarnau Vladimir Rogojin Roman Sirokov Contact: [email protected] Biomedicum Helsinki, Finland Contents I Anduril for End Users1 1 Introduction to Anduril1 1.1 Component model............................2 1.1.1 Type parameters........................4 1.1.2 Resource bundles........................4 1.2 Workflows................................4 1.2.1 Composite components.....................5 1.2.2 Conditional branches......................5 1.3 Workflow execution...........................6 1.4 Component and workflow quality control................7 2 Installation and requirements9 2.1 VirtualBox image installation......................9 2.2 Debian package installation....................... 13 2.3 Binary package installation....................... 13 3 Using Anduril 16 3.1 Eclipse interface............................. 16 3.1.1 Eclipse plugin installation................... 16 3.1.2 Configuring the plugin...................... 17 3.1.3 Constructing workflows..................... 17 3.1.4 Executing a workflow..................... 19 3.1.5 Remote execution over SSH.................. 20 3.2 Command line interface.......................... 21 3.2.1 Executing a workflow...................... 21 3.2.2 Executing a single component................. 24 3.2.3 Executing component test cases................ 25 3.2.4 Executing a workflow with the #! runner........... 26 3.2.5 Advanced command line usage and debugging........ 26 3.3 Apache Ant interface........................... 27 3.3.1 Executing a workflow...................... 27 3.4 Anduril graphical user interface.................... 29 3.5 Browsing the execution folder..................... 30 3.6 Isolated execution of a component instance in a workflow for debugging 32 3.7 Modes of execution........................... 33 3.7.1 Slurm.............................. 33 3.7.2 Prefix.............................
    [Show full text]
  • PATACS Posts Newsletterofthe Potomacareatechnology and Computersociety
    PATACS Posts Newsletterofthe PotomacAreaTechnology and ComputerSociety November 2014 www.patacs.org Page 1 IfYou Missed It ensued. The website for one of the most popular Arlington Meetings open source encryption products, TrueCrypt® (http://truecrypt.sourceforge.net/TrueCrypt) PbryesJiidmenRt,hPotdoemsac Area Technology and Computer Society recently announced “Warning: Using TrueCrypt president(at)patacs.org is not secure as it may contain unfixed security The September 3rd Carlin Hall General Meeting issues”. (Note: eSecurity Planet recently featured a presentation by member Jorn Dakin announced “TrueCrypt will stay alive, thanks to on NET NEUTRALITY. It also provided a showcase devotees who are forking the encryption for PATACS new audio/visual equipment. Jorn program’s code. ‘Cleaned up’ code will get a new started his presentation with several short name.”). Other techniques suggested for YouTube™ videos explaining the concept of NET encrypting files before uploading included using NEUTRALITY followed by his perspective of the ZIP’s encryption feature while archiving and issues involved. This was followed by a lively using SafeHouse, a product similar to TrueCrypt. discussion on the origins and “pros and cons” of Also recommended was SpiderOak NET NEUTRALITY—primarily by members Gabe (https://spideroak.com/), a cloud storage site, Goldberg, Roger Fujii, and Steve Wertime. that encrypts files on-the-fly as uploaded. The new audio/visual (A/V) equipment was A hardware issue with a non-responsive USB again demonstrated at the September 24th external hard drive was solved. The drive, a 1TB Technology and PC Help Desk meeting in Carlin GoFlex used for backups, was about 2 years old Hall.
    [Show full text]
  • TNC 128 | User's Manual for Setup, Testing and Running NC Programs
    TNC 128 User's Manual Setup, Testing and Running NC Programs NC Software 771841-07 English (en) 10/2018 Controls and displays Controls and displays Entering and editing coordinate axes and numbers Keys Key Function Select the coordinate axes or enter Keys on the screen . them in the NC program Numbers Key Function . Select screen layout Decimal separator / Reverse algebraic sign Toggle the display between machine operating mode, program- Polar coordinate entry / ming mode, and a third desktop Incremental values Soft keys for selecting functions on Q parameter programming / screen Q parameter status Switch the soft-key rows Capture actual position NO ENT Skip dialog questions, delete words Machine operating modes Confirm entry and resume dialog Key Function Manual operation Conclude the NC block, end your input Electronic handwheel Clear entries or error message Positioning with Manual Data Input Abort dialog, delete program section Program Run, Single Block Tool functions Program Run, Full Sequence Key Function Define tool data in the NC program Programming modes Call tool data Key Function Programming Test Run 2 HEIDENHAIN | TNC 128 | User's Manual for Setup, Testing and Running NC Programs | 10/2018 Managing NC programs and files, Cycles, subprograms and control functions program section repeats Key Function Key Function Select or delete NC programs or Define and call cycles files, external data transfer Define program call, select datum Enter and call subprograms and and point tables program section repeats Select MOD functions Potentiometer
    [Show full text]
  • 1. Why POCS.Key
    Symptoms of Complexity Prof. George Candea School of Computer & Communication Sciences Building Bridges A RTlClES A COMPUTER SCIENCE PERSPECTIVE OF BRIDGE DESIGN What kinds of lessonsdoes a classical engineering discipline like bridge design have for an emerging engineering discipline like computer systems Observation design?Case-study editors Alfred Spector and David Gifford consider the • insight and experienceof bridge designer Gerard Fox to find out how strong the parallels are. • bridges are normally on-time, on-budget, and don’t fall ALFRED SPECTORand DAVID GIFFORD • software projects rarely ship on-time, are often over- AS Gerry, let’s begin with an overview of THE DESIGN PROCESS bridges. AS What is the procedure for designing and con- GF In the United States, most highway bridges are budget, and rarely work exactly as specified structing a bridge? mandated by a government agency. The great major- GF It breaks down into three phases: the prelimi- ity are small bridges (with spans of less than 150 nay design phase, the main design phase, and the feet) and are part of the public highway system. construction phase. For larger bridges, several alter- There are fewer large bridges, having spans of 600 native designs are usually considered during the Blueprints for bridges must be approved... feet or more, that carry roads over bodies of water, preliminary design phase, whereas simple calcula- • gorges, or other large obstacles. There are also a tions or experience usually suffices in determining small number of superlarge bridges with spans ap- the appropriate design for small bridges. There are a proaching a mile, like the Verrazzano Narrows lot more factors to take into account with a large Bridge in New Yor:k.
    [Show full text]
  • Book VI Image
    b bb bbb bbbbon.com bbbb Basic Photography in 180 Days Book VI - Image Editor: Ramon F. aeroramon.com Contents 1 Day 1 1 1.1 Visual arts ............................................... 1 1.1.1 Education and training .................................... 1 1.1.2 Drawing ............................................ 1 1.1.3 Painting ............................................ 3 1.1.4 Printmaking .......................................... 5 1.1.5 Photography .......................................... 5 1.1.6 Filmmaking .......................................... 6 1.1.7 Computer art ......................................... 6 1.1.8 Plastic arts .......................................... 6 1.1.9 United States of America copyright definition of visual art .................. 7 1.1.10 See also ............................................ 7 1.1.11 References .......................................... 9 1.1.12 Bibliography ......................................... 9 1.1.13 External links ......................................... 10 1.2 Image ................................................. 20 1.2.1 Characteristics ........................................ 21 1.2.2 Imagery (literary term) .................................... 21 1.2.3 Moving image ......................................... 22 1.2.4 See also ............................................ 22 1.2.5 References .......................................... 23 1.2.6 External links ......................................... 23 2 Day 2 24 2.1 Digital image ............................................
    [Show full text]
  • Lutellier Thibaud.Pdf (6.181Mb)
    Machine Learning for Software Dependability by Thibaud Lutellier A thesis presented to the University of Waterloo in fulfillment of the thesis requirement for the degree of Doctor of Philosophy in Electrical and Computer Engineering Waterloo, Ontario, Canada, 2020 © Thibaud Lutellier 2020 Examining Committee Membership The following served on the Examining Committee for this thesis. The decision of the Examining Committee is by majority vote. External Examiner: Martin Monperrus Professor, Division of Theoretical Computer Science, KTH Royal Institute of Technology Supervisor: Lin Tan Professor, Electrical & Computer Engineering, University of Waterloo Internal Member: Vijay Ganesh Professor, Electrical & Computer Engineering, University of Waterloo Derek Rayside Professor, Electrical & Computer Engineering, University of Waterloo Internal-External Member: Michael Godfrey Professor, Dept. of Computer Science, University of Waterloo ii Author’s Declaration This thesis consists of material all of which I authored or co-authored: see Statement of Contributions included in the thesis. This is a true copy of the thesis, including any required final revisions, as accepted by my examiners. I understand that my thesis may be made electronically available to the public. iii Statement of Contributions As lead author of all the contributions of this thesis, I was responsible for contributing to conceptualizing study design, developing, implementing, and evaluating prototypes and evaluating them, carrying out data collection and analysis, drafting and submitting manuscripts, and presenting the work to conferences. My coauthors provided feedback during each step of the research and on draft manuscripts. Research presented in Chapter 2: Lawrence Pang helped implementing the context- aware model, Hung Viet Pham and Yitong Li helped with evaluating previous automatic program repair tools for C and C++.
    [Show full text]
  • Grafikbetrachter Unter GNU/Linux
    Grafikbetrachter unter GNU/Linux Edgar ’Fast Edi’ Hoffmann Community FreieSoftwareOG [email protected] 4. September 2019 Bildbetrachter sind Dateibetrachter, mit denen man Bilddateien ansehen kann. Im Gegensatz zu Bilderverwaltungsprogrammen steht bei ihnen nicht das Management größerer oder sehr großer Bildersammlungen, sondern die einfache Möglichkeit des schnellen und unkomplizierten Betrachtens im Vordergrund. Von Bildbearbeitungsprogrammen unterscheidet sie, dass sie oft nur rudimentäre oder gar keine Bearbeitungsmöglichkeiten bieten. Grafikbetrachter Begriffserklärung 2 / 28 Von Bildbearbeitungsprogrammen unterscheidet sie, dass sie oft nur rudimentäre oder gar keine Bearbeitungsmöglichkeiten bieten. Grafikbetrachter Begriffserklärung Bildbetrachter sind Dateibetrachter, mit denen man Bilddateien ansehen kann. Im Gegensatz zu Bilderverwaltungsprogrammen steht bei ihnen nicht das Management größerer oder sehr großer Bildersammlungen, sondern die einfache Möglichkeit des schnellen und unkomplizierten Betrachtens im Vordergrund. 2 / 28 Grafikbetrachter Begriffserklärung Bildbetrachter sind Dateibetrachter, mit denen man Bilddateien ansehen kann. Im Gegensatz zu Bilderverwaltungsprogrammen steht bei ihnen nicht das Management größerer oder sehr großer Bildersammlungen, sondern die einfache Möglichkeit des schnellen und unkomplizierten Betrachtens im Vordergrund. Von Bildbearbeitungsprogrammen unterscheidet sie, dass sie oft nur rudimentäre oder gar keine Bearbeitungsmöglichkeiten bieten. 2 / 28 Verstehen der gängigsten Grafikformate
    [Show full text]
  • Geeqie and Gthumb Advanced Picture Viewing Picasa Alternative for GNU / Linux - Gqview on Debian Now a Meta Package for Geeqie
    Walking in Light with Christ - Faith, Computing, Diary Articles & tips and tricks on GNU/Linux, FreeBSD, Windows, mobile phone articles, religious related texts http://www.pc-freak.net/blog Geeqie and GThumb advanced picture viewing Picasa alternative for GNU / Linux - GQView on Debian now a meta package for Geeqie Author : admin I'm currently learning some basic graphic design - reading GIMP's documentation etc. While reading http://docs.gimp.org, I saw a reference to Gthumb and GQView picture viewing apps, so I thought of installing them on my Debian LinuxGQView has a lot of santimental value to me as it reminds me of the the old times when I used gqview as a default picture viewing program on a old machine running Debian Woody Linux with Window Maker as desktop environment. I wanted to see how GQView looks nowdays so installed it: noah:~# apt-get --yes install gqview And onwards launch it: hipo@noah:~/Desktop$ gqview This is a compatibility alias for Geeqie! Please use /usr/bin/geeqie instead! Creating Geeqie dir:/home/hipo/.config/geeqie Creating Geeqie dir:/home/hipo/.local/share/geeqie/collections Creating Geeqie dir:/home/hipo/.cache/geeqie/thumbnails Creating Geeqie dir:/home/hipo/.local/share/geeqie/metadata 1 / 8 Walking in Light with Christ - Faith, Computing, Diary Articles & tips and tricks on GNU/Linux, FreeBSD, Windows, mobile phone articles, religious related texts http://www.pc-freak.net/blog What poped up instead of gqview is Geeqie - a picture viewer nowdays available on a default Slackware Linux install. Fedora, CentOS users will have to build geekie from its source, as of time of writting there is no available rpm package.
    [Show full text]