43 lines
1.5 KiB
Nix
43 lines
1.5 KiB
Nix
{
|
|
description = "A very basic flake";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
|
|
};
|
|
|
|
outputs = { self, nixpkgs }:
|
|
|
|
let
|
|
pkgs = nixpkgs.legacyPackages.x86_64-linux;
|
|
writer-menu = pkgs.writeShellScriptBin "writer-menu" ''
|
|
IP=$(${pkgs.hostname-debian}/bin/hostname -I)
|
|
while true
|
|
do
|
|
|
|
${pkgs.dialog}/bin/dialog --msgbox "Welcome to the Writer App Main Menu" 0 0
|
|
APP=$(${pkgs.dialog}/bin/dialog --title "please select a option:" --menu "Apps:" 0 0 0 \
|
|
1 "Word Processor" \
|
|
2 "Dictionary lookup" \
|
|
3 "Connect to network" \
|
|
4 "Share Files" \
|
|
5 "Terminal" \
|
|
3>&1 1>&2 2>&3 3>&-)
|
|
|
|
case $APP in
|
|
1) ${pkgs.wordgrinder}/bin/wordgrinder ;;
|
|
2) WN=$(${pkgs.dialog}/bin/dialog --inputbox "enter dictionary search" 0 0 3>&1 1>&2 2>&3 3>&-) && ${pkgs.wordnet}/bin/wn $WN -over | ${pkgs.less}/bin/less ;;
|
|
3) ${pkgs.networkmanager}/bin/nmtui ;;
|
|
4) ${pkgs.dialog}/bin/dialog --msgbox "open with a IP address: $IP with port: 8080, press enter to launch" 0 0 && ${pkgs.toybox}/bin/clear && echo "To Exit: Ctrl+C" && ${pkgs.filebrowser}/bin/filebrowser -a 0.0.0.0 --noauth ;;
|
|
5) ${pkgs.toybox}/bin/clear ; exit ;;
|
|
*) ${pkgs.toybox}/bin/clear ; exit ;;
|
|
esac
|
|
|
|
done
|
|
|
|
'';
|
|
in
|
|
{
|
|
packages.x86_64-linux.writer-menu = writer-menu;
|
|
};
|
|
}
|