l: rename iso to wizard
This commit is contained in:
parent
f87999251c
commit
1803666259
@ -1,42 +1,118 @@
|
|||||||
{ config, pkgs, ... }:
|
{ config, lib, pkgs, ... }:
|
||||||
with import <stockholm/lib>;
|
with import <stockholm/lib>;
|
||||||
|
|
||||||
let
|
let
|
||||||
|
|
||||||
wizard = pkgs.writers.writeBash "wizard" ''
|
icon = pkgs.writeText "icon" ''
|
||||||
shopt -s extglob
|
//
|
||||||
|
//
|
||||||
|
_ //
|
||||||
|
.' . // '.
|
||||||
|
'_ '_\/_' `_
|
||||||
|
. . \\ . .
|
||||||
|
.==. ` \\' .'
|
||||||
|
.\| //bd\\ \,
|
||||||
|
\_'`._\\__//_.'`.;
|
||||||
|
`.__ __,' \\
|
||||||
|
| | \\
|
||||||
|
| | `
|
||||||
|
| |
|
||||||
|
| |
|
||||||
|
|____|
|
||||||
|
l42 ==' '==
|
||||||
|
'';
|
||||||
|
|
||||||
echo -n '
|
messenger = pkgs.writeText "message" ''
|
||||||
|
.
|
||||||
|
| \/|
|
||||||
|
(\ _ ) )|/|
|
||||||
|
(/ _----. /.'.'
|
||||||
|
.-._________.. .' @ _\ .'
|
||||||
|
'.._______. '. / (_| .')
|
||||||
|
'._____. / '-/ | _.'
|
||||||
|
'.______ ( ) ) \
|
||||||
|
'..____ '._ ) )
|
||||||
|
.' __.--\ , , // ((
|
||||||
|
'.' mrf| \/ (_.'(
|
||||||
|
' \ .'
|
||||||
|
\ (
|
||||||
|
\ '.
|
||||||
|
\ \ '.)
|
||||||
|
'-'-'
|
||||||
|
'';
|
||||||
|
|
||||||
|
waiting = pkgs.writeText "waiting" ''
|
||||||
|
Z
|
||||||
|
Z
|
||||||
|
z
|
||||||
|
z
|
||||||
|
* '
|
||||||
|
/ \
|
||||||
|
/___\
|
||||||
|
( - - )
|
||||||
|
) L ( .--------------.
|
||||||
|
__()(-)()__ | \ |
|
||||||
|
.~~ )()()() ~. | . :
|
||||||
|
/ )()() ` | `-.__________)
|
||||||
|
| )() ~ | : :
|
||||||
|
| ) | : |
|
||||||
|
| _ | | [ ## :
|
||||||
|
\ ~~-. | , oo_______.'
|
||||||
|
`_ ( \) _____/~~~~ `--___
|
||||||
|
| ~`-) ) `-. `--- ( - a:f -
|
||||||
|
| '///` | `-.
|
||||||
|
| | | | `-.
|
||||||
|
| | | | `-.
|
||||||
|
| | |\ |
|
||||||
|
| | | \|
|
||||||
|
`-. | | |
|
||||||
|
`-| '
|
||||||
|
'';
|
||||||
|
|
||||||
|
wizard = pkgs.writers.writeDash "wizard" ''
|
||||||
|
cat ${icon}
|
||||||
|
|
||||||
|
echo -n '${''
|
||||||
welcome to the computer wizard
|
welcome to the computer wizard
|
||||||
first we will check for internet connectivity
|
first we will check for internet connectivity
|
||||||
(press enter to continue)
|
|
||||||
'
|
|
||||||
read -n 1 -s
|
|
||||||
if ! ping -c1 lassul.us; then
|
|
||||||
echo 'no internet detectio, you will have to provide credentials'
|
|
||||||
read -n 1 -s
|
|
||||||
nmtui
|
|
||||||
fi
|
|
||||||
|
|
||||||
# ping -c1 lassuls.us || ${pkgs.writeDash "nm-dmenu" ''
|
''}'
|
||||||
# set -x
|
|
||||||
# export PATH=$PATH:${pkgs.dmenu}/bin:${pkgs.networkmanagerapplet}/bin
|
|
||||||
# exec ${pkgs.networkmanager_dmenu}/bin/networkmanager_dmenu "$@"
|
|
||||||
# ''}
|
|
||||||
|
|
||||||
mode=$(echo -n '
|
read -p '(press enter to continue...)' key
|
||||||
1. help of the wizard
|
until ping -c1 8.8.8.8; do
|
||||||
2. let the wizard watch and help if needed
|
${pkgs.nm-dmenu}/bin/nm-dmenu
|
||||||
3. I will do it alone
|
done
|
||||||
' | ${pkgs.fzf}/bin/fzf --reverse)
|
|
||||||
|
mode=$(echo -n '${''
|
||||||
|
1. Help of the wizard
|
||||||
|
2. Install NixOS
|
||||||
|
3. I know what I need to do
|
||||||
|
''}' | ${pkgs.fzf}/bin/fzf --reverse)
|
||||||
case "$mode" in
|
case "$mode" in
|
||||||
1*)
|
1*)
|
||||||
echo 'mode_1' > /tmp/mode
|
echo 'mode_1' > /tmp/mode
|
||||||
|
clear
|
||||||
|
echo 'waiting for the messenger to reach the wizard'
|
||||||
|
cat ${messenger}
|
||||||
|
|
||||||
|
# get pubkeys
|
||||||
|
mkdir -p /root/.ssh/
|
||||||
|
touch /root/.ssh/authorized_keys
|
||||||
|
curl -Ss 'https://lassul.us/mors.pub' >> /root/.ssh/authorized_keys
|
||||||
|
curl -Ss 'https://lassul.us/blue.pub' >> /root/.ssh/authorized_keys
|
||||||
|
curl -Ss 'https://lassul.us/yubi.pub' >> /root/.ssh/authorized_keys
|
||||||
|
|
||||||
|
# write via irc
|
||||||
systemctl start hidden-ssh-announce.service
|
systemctl start hidden-ssh-announce.service
|
||||||
tmux new -s help
|
tmux new-session -s help ${pkgs.writers.writeDash "waiting" ''
|
||||||
|
cat ${waiting}
|
||||||
|
read -p 'waiting for the wizard to wake up' key
|
||||||
|
${pkgs.bashInteractive}/bin/bash
|
||||||
|
''}
|
||||||
;;
|
;;
|
||||||
2*)
|
2*)
|
||||||
echo 'mode_2' > /tmp/mode
|
echo 'mode_2' > /tmp/mode
|
||||||
|
${pkgs.nixos-installer}/bin/nixos-installer
|
||||||
;;
|
;;
|
||||||
3*)
|
3*)
|
||||||
echo 'mode_3' > /tmp/mode
|
echo 'mode_3' > /tmp/mode
|
||||||
@ -52,6 +128,7 @@ in {
|
|||||||
<stockholm/krebs>
|
<stockholm/krebs>
|
||||||
<stockholm/lass/3modules>
|
<stockholm/lass/3modules>
|
||||||
<stockholm/lass/2configs/vim.nix>
|
<stockholm/lass/2configs/vim.nix>
|
||||||
|
# <nixpkgs/nixos/modules/installer/cd-dvd/installation-cd-base.nix>
|
||||||
{
|
{
|
||||||
nixpkgs.config.packageOverrides = import <stockholm/lass/5pkgs> pkgs;
|
nixpkgs.config.packageOverrides = import <stockholm/lass/5pkgs> pkgs;
|
||||||
krebs.enable = true;
|
krebs.enable = true;
|
||||||
@ -86,14 +163,14 @@ in {
|
|||||||
networking.hostName = "wizard";
|
networking.hostName = "wizard";
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
||||||
users.extraUsers = {
|
# users.extraUsers = {
|
||||||
root = {
|
# root = {
|
||||||
openssh.authorizedKeys.keys = [
|
# openssh.authorizedKeys.keys = [
|
||||||
config.krebs.users.lass.pubkey
|
# config.krebs.users.lass.pubkey
|
||||||
config.krebs.users.lass-mors.pubkey
|
# config.krebs.users.lass-mors.pubkey
|
||||||
];
|
# ];
|
||||||
};
|
# };
|
||||||
};
|
# };
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
#stockholm
|
#stockholm
|
||||||
@ -120,16 +197,12 @@ in {
|
|||||||
aria2
|
aria2
|
||||||
|
|
||||||
#neat utils
|
#neat utils
|
||||||
dmenu
|
chntpw
|
||||||
hashPassword
|
hashPassword
|
||||||
krebspaste
|
krebspaste
|
||||||
pciutils
|
pciutils
|
||||||
pop
|
|
||||||
psmisc
|
psmisc
|
||||||
q
|
|
||||||
rs
|
|
||||||
tmux
|
tmux
|
||||||
untilport
|
|
||||||
usbutils
|
usbutils
|
||||||
|
|
||||||
#unpack stuff
|
#unpack stuff
|
||||||
@ -141,6 +214,8 @@ in {
|
|||||||
ddrescue
|
ddrescue
|
||||||
ntfs3g
|
ntfs3g
|
||||||
dosfstools
|
dosfstools
|
||||||
|
|
||||||
|
nixos-installer
|
||||||
];
|
];
|
||||||
|
|
||||||
environment.extraInit = ''
|
environment.extraInit = ''
|
||||||
@ -193,10 +268,10 @@ in {
|
|||||||
krebs.hidden-ssh = {
|
krebs.hidden-ssh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
channel = "##lassulus-wizard";
|
channel = "##lassulus-wizard";
|
||||||
|
message = "lassulus: torify sshn root@";
|
||||||
};
|
};
|
||||||
systemd.services.hidden-ssh-announce.wantedBy = mkForce [];
|
systemd.services.hidden-ssh-announce.wantedBy = mkForce [];
|
||||||
services.mingetty.autologinUser = "root";
|
services.mingetty.autologinUser = lib.mkForce "root";
|
||||||
|
|
||||||
nixpkgs.config.packageOverrides = super: {
|
nixpkgs.config.packageOverrides = super: {
|
||||||
dmenu = pkgs.writeDashBin "dmenu" ''
|
dmenu = pkgs.writeDashBin "dmenu" ''
|
@ -4,4 +4,4 @@
|
|||||||
set -xefu
|
set -xefu
|
||||||
|
|
||||||
WD=$(dirname "$0")
|
WD=$(dirname "$0")
|
||||||
nixos-generate -I stockholm="$WD"/../../.. -c "$WD"/default.nix -f install-iso
|
nixos-generate -I stockholm="$WD"/../../.. -c "$WD"/config.nix -f install-iso
|
10
lass/1systems/wizard/test.nix
Normal file
10
lass/1systems/wizard/test.nix
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./default.nix
|
||||||
|
];
|
||||||
|
virtualisation.emptyDiskImages = [
|
||||||
|
8000
|
||||||
|
];
|
||||||
|
virtualisation.memorySize = 1024;
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user