-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathshell.nix
More file actions
49 lines (46 loc) · 1.31 KB
/
shell.nix
File metadata and controls
49 lines (46 loc) · 1.31 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
{ pkgs ? import <nixpkgs> { } }:
pkgs.mkShell
{
nativeBuildInputs = with pkgs; [
nodejs
# PHP with required extensions for MediaWiki
php81
php81Packages.composer
# PHP extensions needed by MediaWiki
php81Extensions.mbstring
php81Extensions.xml
php81Extensions.intl
php81Extensions.curl
php81Extensions.gd
php81Extensions.mysqli
php81Extensions.opcache
php81Extensions.zip
php81Extensions.zlib
# Database
mariadb
# Utilities
wget
unzip
];
shellHook = ''
echo "=== Mathspedia MediaWiki Development Environment ==="
# Note: MariaDB should be started manually using ./setup-mediawiki.sh
# Auto-starting in shellHook can cause issues
if pgrep -x "mysqld" > /dev/null; then
echo "MariaDB is running"
else
echo "MariaDB not running. Run: ./setup-mediawiki.sh"
fi
# Check if MediaWiki is downloaded
if [ ! -d "mediawiki" ]; then
echo "MediaWiki not found. MediaWiki should already be installed in ./mediawiki"
else
echo "MediaWiki found in ./mediawiki"
echo "To start PHP server: cd mediawiki && php -S localhost:8080"
fi
#source ./something.shell
'';
# COLOR = "blue";
# PASSWORD = import ./password.nix; # Uncomment if password.nix exists
}
# nix-shell --command zsh