-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathinstall.sh
More file actions
executable file
·90 lines (76 loc) · 2.37 KB
/
install.sh
File metadata and controls
executable file
·90 lines (76 loc) · 2.37 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
#!/bin/bash
VERSION=$(grep version Cargo.toml | head -n 1 | cut -d '"' -f 2)
RELEASE_DIR="target/release"
install_unix() {
echo "Building for Unix-like system..."
cargo build --release
# Create application directories
sudo mkdir -p /usr/local/bin
sudo mkdir -p /usr/local/share/noorg/{bin,resources}
# Copy binaries
echo "Installing noorg binaries..."
sudo cp "$RELEASE_DIR/note_tray" /usr/local/share/noorg/bin/
sudo cp "$RELEASE_DIR/note_cli" /usr/local/share/noorg/bin/
sudo cp "$RELEASE_DIR/note_settings" /usr/local/share/noorg/bin/
# Set permissions
sudo chmod +x /usr/local/share/noorg/bin/*
# Create command entry point with CLI support
echo "Creating noorg command..."
cat > /tmp/noorg << 'EOF'
#!/bin/bash
cd /usr/local/share/noorg
if [ "$1" = "note_cli" ]; then
shift # Remove 'note_cli' from the arguments
exec bin/note_cli "$@"
elif [ "$1" = "settings" ]; then
exec bin/note_settings "$@"
else
exec bin/note_tray "$@"
fi
EOF
sudo mv /tmp/noorg /usr/local/bin/noorg
sudo chmod +x /usr/local/bin/noorg
}
install_windows() {
echo "Building for Windows..."
cargo build --release
# Create application directories
mkdir -p "C:/Program Files/noorg/bin"
mkdir -p "C:/Program Files/noorg/resources"
# Copy binaries
echo "Installing noorg binaries..."
cp "$RELEASE_DIR/note_tray.exe" "C:/Program Files/noorg/bin/"
cp "$RELEASE_DIR/note_cli.exe" "C:/Program Files/noorg/bin/"
cp "$RELEASE_DIR/note_settings.exe" "C:/Program Files/noorg/bin/"
# Add to PATH
setx PATH "%PATH%;C:\Program Files\noorg\bin"
}
uninstall() {
case "$(uname -s)" in
Darwin*|Linux*)
echo "Uninstalling noorg..."
sudo rm -f /usr/local/bin/noorg
sudo rm -rf /usr/local/share/noorg
;;
MINGW*|MSYS*|CYGWIN*)
echo "Uninstalling noorg..."
rm -rf "C:/Program Files/noorg"
;;
*)
echo "Unsupported platform"
;;
esac
echo "✅ noorg uninstalled successfully"
}
case "$1" in
uninstall)
uninstall
;;
*)
case "$(uname -s)" in
Darwin*|Linux*) install_unix ;;
MINGW*|MSYS*|CYGWIN*) install_windows ;;
*) echo "Unsupported platform" ;;
esac
;;
esac