Diskussion:BSD: Unterschied zwischen den Versionen

Aus C3D2
Zur Navigation springen Zur Suche springen
Zeile 65: Zeile 65:
== FreeBSD meets Nixpkgs ==
== FreeBSD meets Nixpkgs ==


; (damals aktuelle) Links:
; (dazumal aktuelle) Links:
* https://nixos.org/releases/nix/nix-2.0.1/manual/#ch-installing-source
* https://nixos.org/releases/nix/nix-2.0.1/manual/#ch-installing-source


; Installation von Paketen:
; vorausgesetzte Anforderungen:
* https://nixos.org/releases/nix/nix-2.0.1/manual/#sec-prerequisites-source
<!--
<!--
um es später etwas bunter zu haben
um es später etwas bunter zu haben
: <code>pkg install -y colordiff</code>
: <code>pkg install -y colordiff</code>
-->
-->
Installieren von Paketen, die im Manual von Nix aufgelistet wird
Installieren von Paketen, die im Manual von Nix aufgelistet wird
: <code>pkg install -y gmake gcc pkgconf openssl bzip2 sqlite3 boehm-gc libxml2 libxslt bison flex</code>
: <code>pkg install -y gmake gcc pkgconf openssl bzip2 sqlite3 boehm-gc libxml2 libxslt bison flex</code>
Zeile 79: Zeile 80:
Installieren von Paketen, die es für Nix ansonsten dennoch bedarf
Installieren von Paketen, die es für Nix ansonsten dennoch bedarf
: <code>pkg install -y bash git</code>
: <code>pkg install -y bash git</code>
----
; Beziehen der Quellen:
* https://nixos.org/releases/nix/nix-2.0.1/manual/#sec-obtaining-source


Erstellen von einem (nahezu beliebig zu bezeichnenden) Verzeichnis im Verzeichnis des Accunts
Erstellen von einem (nahezu beliebig zu bezeichnenden) Verzeichnis im Verzeichnis des Accunts
Zeile 91: Zeile 97:
Wechsel zur letzten Marke bei den Quellen (2018-05-01 Version ''2.0.1'')
Wechsel zur letzten Marke bei den Quellen (2018-05-01 Version ''2.0.1'')
: <code>git checkout 2.0.1</code>
: <code>git checkout 2.0.1</code>
----
; Bauen aus den Quellen:
* https://nixos.org/releases/nix/nix-2.0.1/manual/#sec-building-source


Installieren von Paketen, die es anscheinend dennoch noch bedarf
Installieren von Paketen, die es anscheinend dennoch noch bedarf
:: insbesondere für das Ausführen des nachfolgenden Skripts
:: insbesondere für das Ausführen des nachfolgenden Skripts
: <code>pkg install -y autotools</code>
: <code>pkg install -y autotools</code>
Kommt da nicht erst das (g)make?


Ausführen des Skripts zum Urladen von Nix
Ausführen des Skripts zum Urladen von Nix
Zeile 129: Zeile 142:
----
----


* src/linenoise/linenoise.cpp
Änderung der Datei ''src/linenoise/linenoise.cpp'' aus den Quellen für Nix als Berichtigung zum Bauen von Nix
: <code>$EDITOR ~/src/nix/src/linenoise/linenoise.cpp</code>
<pre>
<pre>
# include <sys/static.h>
# include <sys/static.h>
</pre>
</pre>


* src/libexpr/primops/fetchGit.cc
Änderung der Datei ''src/libexpr/primops/fetchGit.cc'' aus den Quellen für Nix als Berichtigung zum Bauen von Nix
: <code>$EDITOR ~/src/nix/src/libexpr/primops/fetchGit.cc</code>
<pre>
<pre>
# include <wait.h>
# include <wait.h>

Version vom 2. Mai 2018, 07:03 Uhr

Quellen für Videos

Quellen für Tutorials

hosting services zu BSD

https://www.atlantic.net/community/howto-tag/freebsd/

Services zu BSD

Werkzeuge zur Verwaltung von Aufgaben als Dienst

als Alternative zu rc-Skripten gibt es bei FreeBSD

.

Vorstellung von BSD

user:vater wird wohl "auf die Schnelle" eine Art Vortrag zur Vorstellung von BSD bei den Datenspuren 2017 machen. Gern kann dazu von allen "Wissenden" beitragen.

user:vater nutzt - auch zum Testen (der Instanz und für sich selbst) - HackMD (gerade neu beim C3D2): https://hackmd.c3d2.de/bsd

--vater 19:21, 12. Okt. 2017 (CEST)

paste

Diskussion:BSD/Vorstellung

Logos & Co

Beastie

stura.htw-dresden.de:

stura.htw-dresden.de:Kategorie:BSD

FreeBSD meets Nixpkgs

(dazumal aktuelle) Links
vorausgesetzte Anforderungen

Installieren von Paketen, die im Manual von Nix aufgelistet wird

pkg install -y gmake gcc pkgconf openssl bzip2 sqlite3 boehm-gc libxml2 libxslt bison flex

Installieren von Paketen, die es für Nix ansonsten dennoch bedarf

pkg install -y bash git

Beziehen der Quellen

Erstellen von einem (nahezu beliebig zu bezeichnenden) Verzeichnis im Verzeichnis des Accunts

mkdir ~/src/

Wechseln in das erstellte Verzeichnis und Klonen der Quellen für Nix

cd ~/src/ && git clone https://github.com/NixOS/nix

Wechseln in das Verzeichnis der Quellen für Nix und Anzeigen lassen der bestehenden Marken bei den Quellen

cd ~/src/nix/ && git tag

Wechsel zur letzten Marke bei den Quellen (2018-05-01 Version 2.0.1)

git checkout 2.0.1

Bauen aus den Quellen

Installieren von Paketen, die es anscheinend dennoch noch bedarf

insbesondere für das Ausführen des nachfolgenden Skripts
pkg install -y autotools
Kommt da nicht erst das (g)make?

Ausführen des Skripts zum Urladen von Nix

./bootstrap.sh

gescheiterter Versuch zum Ändern der Shell zur bash

chsh -s $(which bash)
su -l $(whoami)


Ersetzen der Fundstelle für die Shell bash

btw: Wie war das mit dem interaktiven Ersetzen bei sed bei FreeBSD? (Danke an GNU fürs einfach machen.)
pkg install -y gsed
gsed -i "s@/bin/sh@$(which bash)@g" configure
oder
$EDITOR ~/src/nix/configure
#SHELL=${CONFIG_SHELL-/bin/sh}
SHELL=${CONFIG_SHELL-/usr/local/bin/bash}

Wechseln in das Verzeichnis der Quellen für Nix und Ausführen des Skripts zum Konfigurieren von Nix

cd ~/src/nix/ && ./configure

docbook zum bauen wegen fehlern auskommentiert

FIXME

Änderung der Datei src/linenoise/linenoise.cpp aus den Quellen für Nix als Berichtigung zum Bauen von Nix

$EDITOR ~/src/nix/src/linenoise/linenoise.cpp
# include <sys/static.h>

Änderung der Datei src/libexpr/primops/fetchGit.cc aus den Quellen für Nix als Berichtigung zum Bauen von Nix

$EDITOR ~/src/nix/src/libexpr/primops/fetchGit.cc
# include <wait.h>

for n in $(seq 1 10); do pw useradd -n "nixbld$n" -d /var/empty/ -g nixbld -G nixbld -s "$(which nologin)" ; done
You have new mail in /var/mail/root

source prefix/etc/profile.d/nix.sh

~/.profile

source /usr/local/etc/profile.d/nix.sh

path anpassen /bin /usr/bin

stat -f


pkg install -y lsof

btw: Setzen von Umgebungsvariablen für die bash eines Accounts (nicht root, denn dieser Account soll nicht die bash standardmäßig nutzen):

$EDITOR /usr/home/`whoami`/.profile