- MX Linux (primary development platform)
- Other Debian-based distributions: Ubuntu, Debian, Linux Mint
- Desktop Environment: XFCE (MX Linux default), GNOME, KDE with GTK# support
- Windows 10/11 - Tested and working without code modifications
- Same codebase as Linux version
- Automatic path handling works cross-platform
Method 1: Official Microsoft install script wget https://dot.net/v1/dotnet-install.sh -O dotnet-install.sh chmod +x dotnet-install.sh ./dotnet-install.sh --channel 8.0
Method 2: Package manager (if available in MX repos) sudo apt update sudo apt install dotnet-sdk-8.0
Add to PATH (add to ~/.bashrc) export DOTNET_ROOT=$HOME/.dotnet export PATH=$PATH:$HOME/.dotnet:$HOME/.dotnet/tools
Download from Microsoft .NET Downloads page Run installer with ".NET 8.0 Runtime" and ".NET 8.0 SDK" selected
sudo apt update sudo apt install gtk-sharp3 libgtk-3-dev libgirepository1.0-dev
Automatically handled via NuGet during build No manual installation required
Ensure all build essentials are available sudo apt install build-essential sudo apt install pkg-config
For additional VB.NET tooling (optional) sudo apt install mono-devel mono-vbnc
git clone https://github.com/jamesplotts/simpleide.git cd simpleide
simpleide/ ├── SimpleIDE.sln # Main solution file ├── SimpleIDE.vbproj # Main project file ├── MainWindow.vb # Primary application window ├── Editors/ # Text editor components ├── Models/ # Data models ├── Utilities/ # Helper classes ├── Widgets/ # UI components └── Resources/ # Embedded resources
dotnet restore SimpleIDE.sln
Debug build dotnet build SimpleIDE.sln --configuration Debug
Release build
dotnet build SimpleIDE.sln --configuration Release
Clean rebuild (if needed) dotnet clean SimpleIDE.sln dotnet build SimpleIDE.sln --configuration Debug
Development run dotnet run --project SimpleIDE.vbproj
Or run built executable ./bin/Debug/net8.0/SimpleIDE
Install via MX Package Installer or: sudo apt install code
Recommended Extensions:
- VB.NET Language Support
- .NET Extension Pack
- GitLens
sudo apt install monodevelop
Suitable for lightweight editing alongside main IDE
GTK# applications integrate naturally with XFCE desktop Font rendering optimized for XFCE's GTK3 environment Window management works seamlessly with XFCE compositor
Excellent performance on Debian-stable base Minimal resource usage compared to heavier IDEs Fast build times with .NET 8.0 Native AOT potential
MX Linux: Primary development platform, fully supported Windows 10/11: Tested and working without modification Other Linux: Should work on any .NET 8.0 + GTK# supported distribution
Your codebase demonstrates excellent cross-platform design: Path handling: System.IO.Path methods work on all platforms Line endings: Environment.NewLine provides correct platform-specific endings GTK# portability: Same UI framework across platforms File system: .NET abstractions handle platform differences
Uses modern SDK-style project format with GTK# support.
Development build with debugging dotnet build --configuration Debug
Production build dotnet build --configuration Release
Build with specific runtime (experimental) dotnet build --runtime linux-x64
Ensure GTK# runtime is installed sudo apt install gtk-sharp3 Verify installation ls /usr/lib/cli/gtk-sharp-3.0/
Install all potential missing dependencies sudo apt install libgtk-3-0 libgirepository1.0-dev libwebkit2gtk-4.0-dev
Install Microsoft core fonts sudo apt install ttf-mscorefonts-installer
Or set fallback font in application settings
Clear NuGet cache dotnet nuget locals all --clear
Restore packages dotnet restore --force
Ensure execute permissions on scripts chmod +x *.sh
Check build output permissions ls -la bin/Debug/net8.0/
- Editor: Open and edit VB.NET files with syntax highlighting
- Build System: Compile sample VB.NET projects
- Project Explorer: Navigate project structure
- Settings: Persistence across application restarts
Window management (minimize, maximize, close) Menu bar integration File dialog native integration Theme consistency with XFCE appearance settings
Parallel build dotnet build --maxCpuCount
Incremental build (development) dotnet build --no-incremental false
Use Release configuration for performance testing Monitor memory usage with system monitor Profile with dotnet-counters for performance analysis
- Code in preferred editor (VS Code recommended)
- Build and test locally
- Run comprehensive functionality tests
- Submit pull requests with detailed MX Linux testing notes
Verify XFCE desktop integration Test with multiple XFCE themes Confirm proper font rendering Validate system resource usage
MX Linux Documentation: https://mxlinux.org/wiki/ Debian Package Search: https://packages.debian.org/search
.NET on Linux Documentation: https://docs.microsoft.com/dotnet/core/install/linux GTK# for .NET: https://github.com/GtkSharp/GtkSharp
.NET Foundation: https://dotnetfoundation.org/ MX Linux Forums: https://forum.mxlinux.org/