-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathinstall.sh
More file actions
executable file
Β·126 lines (113 loc) Β· 4.89 KB
/
install.sh
File metadata and controls
executable file
Β·126 lines (113 loc) Β· 4.89 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
#!/bin/bash
#
# NullSec Desktop Installer
# Installs the unified NullSec Desktop application
#
set -e
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
APP_NAME="nullsec-desktop"
INSTALL_DIR="$HOME/.local/bin"
APPS_DIR="$HOME/.local/share/applications"
ICONS_DIR="$HOME/.local/share/icons/nullsec"
echo "βββββββββββββββββββββββββββββββββββββββββββββββββ"
echo "β NullSec Desktop Installer v2.0.0 β"
echo "βββββββββββββββββββββββββββββββββββββββββββββββββ"
echo
# Create directories
echo "[*] Creating directories..."
mkdir -p "$INSTALL_DIR"
mkdir -p "$APPS_DIR"
mkdir -p "$ICONS_DIR"/{16x16,24x24,32x32,48x48,64x64,128x128,256x256}/apps
# Check dependencies
echo "[*] Checking dependencies..."
MISSING_DEPS=""
python3 -c "import gi" 2>/dev/null || MISSING_DEPS="$MISSING_DEPS python3-gi"
python3 -c "import gi; gi.require_version('Gtk', '3.0'); from gi.repository import Gtk" 2>/dev/null || MISSING_DEPS="$MISSING_DEPS gir1.2-gtk-3.0"
python3 -c "import gi; gi.require_version('WebKit2', '4.1'); from gi.repository import WebKit2" 2>/dev/null || \
python3 -c "import gi; gi.require_version('WebKit2', '4.0'); from gi.repository import WebKit2" 2>/dev/null || \
MISSING_DEPS="$MISSING_DEPS gir1.2-webkit2-4.0"
python3 -c "import gi; gi.require_version('Vte', '2.91'); from gi.repository import Vte" 2>/dev/null || MISSING_DEPS="$MISSING_DEPS gir1.2-vte-2.91"
if [ -n "$MISSING_DEPS" ]; then
echo "[!] Missing dependencies:$MISSING_DEPS"
echo "[*] Install with: sudo apt install$MISSING_DEPS"
read -p "Install now? [y/N] " -n 1 -r
echo
if [[ $REPLY =~ ^[Yy]$ ]]; then
sudo apt update && sudo apt install -y $MISSING_DEPS
else
echo "[!] Please install dependencies and run again"
exit 1
fi
fi
# Create icon
echo "[*] Creating application icon..."
for size in 16 24 32 48 64 128 256; do
cat > "$ICONS_DIR/${size}x${size}/apps/nullsec.svg" << 'SVGEOF'
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
<defs>
<linearGradient id="bg" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" style="stop-color:#0d1117"/>
<stop offset="100%" style="stop-color:#161b22"/>
</linearGradient>
<linearGradient id="glow" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" style="stop-color:#00ff41"/>
<stop offset="100%" style="stop-color:#39d353"/>
</linearGradient>
</defs>
<circle cx="256" cy="256" r="250" fill="url(#bg)" stroke="#00ff41" stroke-width="8"/>
<text x="256" y="200" text-anchor="middle" font-family="monospace" font-size="120" font-weight="bold" fill="url(#glow)">NS</text>
<text x="256" y="320" text-anchor="middle" font-family="monospace" font-size="48" fill="#8b949e">NULLSEC</text>
<circle cx="256" cy="256" r="220" fill="none" stroke="#00ff41" stroke-width="2" stroke-dasharray="20,10" opacity="0.5"/>
</svg>
SVGEOF
done
# Copy main application
echo "[*] Installing application..."
cp "$SCRIPT_DIR/$APP_NAME" "$INSTALL_DIR/$APP_NAME"
chmod +x "$INSTALL_DIR/$APP_NAME"
# Create desktop entry
echo "[*] Creating desktop entry..."
cat > "$APPS_DIR/nullsec-desktop.desktop" << EOF
[Desktop Entry]
Version=1.0
Type=Application
Name=NullSec Desktop
GenericName=Security Framework
Comment=Unified Security Framework - NullKIA - Marshall - Extension Builder - Webhook Builder
Exec=$INSTALL_DIR/$APP_NAME
Icon=nullsec
Terminal=false
Categories=Security;System;Development;
Keywords=security;pentesting;hacking;nullsec;marshall;nullkia;webhook;
StartupNotify=true
StartupWMClass=nullsec-desktop
EOF
# Update icon cache
echo "[*] Updating icon cache..."
gtk-update-icon-cache "$ICONS_DIR" 2>/dev/null || true
# Update desktop database
echo "[*] Updating desktop database..."
update-desktop-database "$APPS_DIR" 2>/dev/null || true
echo
echo "βββββββββββββββββββββββββββββββββββββββββββββββββ"
echo "β Installation Complete! β"
echo "βββββββββββββββββββββββββββββββββββββββββββββββββ"
echo
echo "NullSec Desktop has been installed to:"
echo " β Application: $INSTALL_DIR/$APP_NAME"
echo " β Desktop: $APPS_DIR/nullsec-desktop.desktop"
echo " β Icons: $ICONS_DIR/"
echo
echo "Launch from:"
echo " β Application menu β Security β NullSec Desktop"
echo " β Terminal: $APP_NAME"
echo
echo "Features included:"
echo " β‘ NullSec Framework (40+ security tools)"
echo " π€ NullKIA AI Security Assistant"
echo " π Marshall Privacy Browser"
echo " π§© Marshall Extensions Manager"
echo " π§ Extension Builder"
echo " πͺ Webhook Builder for Exploitation"
echo " π» Integrated Terminal"
echo