Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

UniLabSetup (2026 Academic Edition)

Automated Workstation Provisioning Suite for University Computer Labs

PowerShell Version Platform Architecture License Interface


UniLabSetup Logo

UniLabSetup 2026 is a high-performance, open-source automation engine engineered specifically for university computer laboratories, engineering departments, and academic IT staff. Powered by native PowerShell and a compiled-in Fluent Dark WPF interface, it automates workstation software provisioning with zero external runtimes, dependencies, or pre-installation steps.


UniLabSetup 2026 Fluent Dark Interface Preview


Quick Start: Web One-Liner

Deploy directly on any target Windows lab workstation via an elevated PowerShell prompt:

irm https://raw.githubusercontent.com/0xf9o/UniLabSetup/main/run.ps1 | iex

(Standard WebClient invocation):

iwr -useb https://raw.githubusercontent.com/0xf9o/UniLabSetup/main/run.ps1 | iex


Enterprise Core Capabilities

  • Automatic UAC Elevation: Detects session privilege levels on startup and automatically relaunches itself in an elevated Administrator context with process-scoped execution policy bypass.
  • Fluent Dark WPF Interface: Designed with a sleek, modern Windows 11 Fluent dark palette (#0B0E14 / #141824) using native PresentationFramework — completely self-contained with no Electron or Node.js overhead.
  • Live Search & Instant Filtering: Real-time search box allows lab technicians to instantly find and filter packages across all categories simultaneously.
  • 1-Click Lab Presets (Profiles): Pre-configured deployment profiles designed for specific university computer labs:
    • CS & Software Lab: IDEs, JDK, Python, Node.js, Git, VS Code, MySQL, Docker, and Postman.
    • EE & Electronics Lab: SPICE simulation, Electric VLSI, Microchip XC32, Cypress PSoC, Multisim, and LabVIEW.
    • Full Campus Lab: Provisions all 20 packages in a single unattended batch.
  • Pre-Flight Diagnostics Banner: Automatically verifies system health prior to installation, including free storage space on C:\, internet connectivity, Winget package manager readiness, and PowerShell runtime environment.
  • Multi-Source Smart Orchestration:
    • Silent Winget Engine: Unattended package deployment with automatic agreement acceptance (--accept-package-agreements --accept-source-agreements).
    • Direct Vendor Web Pipeline: Downloads and executes signed vendor binaries (MSI/EXE) via TLS 1.2/1.3 with automated cleanup.
    • Smart .jar Installer & Shortcut Binding: Automates Java archive downloads (e.g., Electric VLSI) to C:\Program Files\, dynamically locates javaw.exe, and generates both User & Public All-Users Desktop shortcuts (javaw.exe -jar) and Start Menu links.
    • Academic License Guard: Intercepts proprietary university software (MATLAB, Multisim, LabVIEW, PSoC) and displays actionable guidance for department volume license servers (VLM/NLM) and installation media instead of throwing execution errors.
  • Real-Time Non-Blocking Dispatcher: Streams live log lines, step counters, and progress meters smoothly without interface freezing using native [System.Windows.Forms.Application]::DoEvents().
  • Audit Logging & System Safety:
    • Optional Windows System Restore Point creation prior to deployment.
    • 1-click Export Log to Desktop for lab audit trails and compliance records.
    • Optional automatic post-deployment lab summary generation.

Supported Software Matrix (20 Packages)

Category Package Name Distribution Method Package Identifier / Source Target Academic Department Provisioning Mode
Hardware & Engineering LTSpice Winget AnalogDevices.LTspice Electrical & Electronic Engineering Unattended Silent
Hardware & Engineering PSOC Creator 4.4 Manual / IT Guard Infineon Developer Portal Embedded Systems / Robotics Academic Media
Hardware & Engineering PSOC CY8CKIT-059 Manual / IT Guard Infineon Support Share Embedded Systems / Microcontrollers Academic Media
Hardware & Engineering Electric VLSI 9.08 Smart .jar Engine staticfreesoft.com Microelectronics & VLSI Design Auto-Configured .jar
Hardware & Engineering NI Multisim 12 Manual / IT Guard CSE Department DVD / ISO Circuit Design & Analysis Volume License (VLM)
Hardware & Engineering NI LabVIEW + SigEx + myRIO Manual / IT Guard National Instruments Share Instrumentation & Control Systems Campus License Server
Hardware & Engineering MATLAB Manual / IT Guard MathWorks Campus License Applied Mathematics & Engineering Network License (NLM)
Hardware & Engineering Microchip XC32 Compiler Direct Web / Archive Microchip Archives Computer Engineering / Embedded Silent / Archive
CS & IDEs Java JDK 26 (x64) Winget / Direct Oracle.JDK / Adoptium Computer Science & Software Eng. Unattended Silent
CS & IDEs Java3D 1.5.1 Direct Web Pipeline download.java.net Computer Graphics & Simulation Direct Silent (/s)
CS & IDEs Code::Blocks 25.03 MinGW Winget Codeblocks.Codeblocks Programming Fundamentals (C/C++) Unattended Silent
CS & IDEs Eclipse IDE for Java Winget EclipseFoundation.EclipseJava Object-Oriented Programming Unattended Silent
CS & IDEs Oracle MySQL Server Winget Oracle.MySQL Database Systems & Big Data Unattended Silent
CS & IDEs MySQL Workbench Winget Oracle.MySQLWorkbench Database Administration & Modeling Unattended Silent
Developer Tools Visual Studio Code Winget Microsoft.VisualStudioCode General Development & Web Dev Unattended Silent
Developer Tools Git for Windows Winget Git.Git Software Engineering & Versioning Unattended Silent
Developer Tools Python 3.12 Winget Python.Python.3.12 Data Science & Artificial Intelligence Unattended Silent
Developer Tools Node.js LTS Winget OpenJS.NodeJS.LTS Web & Full-Stack Development Unattended Silent
Developer Tools Docker Desktop Winget Docker.DockerDesktop Cloud Computing & DevOps Unattended Silent
Developer Tools Postman Winget Postman.Postman Distributed Systems & API Testing Unattended Silent

Execution Architecture

flowchart TD
    A[run.ps1 Invocation] --> B{Administrator Rights?}
    B -- No --> C[Relaunch via Start-Process -Verb RunAs]
    C --> D[Elevated Administrator Context]
    B -- Yes --> D
    D --> E[Set ExecutionPolicy Bypass & Load WPF Assemblies]
    E --> F[Run Pre-Flight Diagnostics: Storage, Winget, Network]
    F --> G[Render Fluent Dark WPF GUI]
    G --> H{Technician Action}
    H -->|Search / Filter| G
    H -->|Select Preset Profile| G
    H -->|Click Start Deployment| I[Initialize Deployment Queue]
    I --> J{Optional System Restore Point}
    J --> K[Sequential Task Dispatcher]
    K --> L1[Winget Engine: VS Code, Git, Python, MySQL, etc.]
    K --> L2[Direct Web Engine: Java3D, XC32, Vendor Installers]
    K --> L3[Smart .JAR Handler: Electric VLSI + Desktop Shortcuts]
    K --> L4[Academic License Guard: MATLAB, Multisim, LabVIEW]
    L1 --> M[Real-time Non-blocking UI Log & Progress Stream]
    L2 --> M
    L3 --> M
    L4 --> M
    M --> N[Deployment Complete & Generate Desktop Audit Report]
Loading

University Lab Administrator Guide

Method 1: Remote One-Liner (Fastest)

Open PowerShell as Administrator on the target computer and run:

irm https://raw.githubusercontent.com/0xf9o/UniLabSetup/main/run.ps1 | iex

Method 2: Offline Media / Campus Deployment Drive

  1. Download or clone the repository to a deployment USB drive or central network share:
    git clone https://github.com/0xf9o/UniLabSetup.git
    cd UniLabSetup
  2. Right-click run.ps1 and select Run with PowerShell, or execute from an elevated console:
    .\run.ps1

Method 3: Active Directory GPO / SCCM / Intune

UniLabSetup can be executed across an entire computer lab via Active Directory Group Policy (Startup Script) or Microsoft Intune:

powershell.exe -NoProfile -ExecutionPolicy Bypass -File "\\campus-share\deploy\UniLabSetup\run.ps1"

System Requirements

  • Operating System: Windows 10 (version 1809 or higher), Windows 11, or Windows Server 2019/2022/2025.
  • PowerShell Version: Windows PowerShell 5.1 or PowerShell Core 7.0+.
  • Privileges: Local Administrator privileges (auto-elevates via UAC prompt).
  • Network: Internet connection for Winget repositories and vendor download mirrors.

Repository Structure

UniLabSetup/
├── assets/
│   └── logo.svg              # Vector brand identity asset
├── .gitignore                # Windows & PowerShell exclusions
├── LICENSE                   # MIT License
├── README.md                 # Complete academic documentation
└── run.ps1                   # Core PowerShell WPF deployment engine

Contributing

We welcome contributions from university systems engineers, lab technicians, and faculty:

  1. Fork the repository (git fork).
  2. Create a feature branch (git checkout -b feature/NewPackage).
  3. Commit your changes (git commit -m 'feat: add package definition').
  4. Push to your branch (git push origin feature/NewPackage).
  5. Open a Pull Request.

License

This project is licensed under the MIT License. See the LICENSE file for complete details.

About

Zero-touch provisioning toolkit for academic labs. Automates Winget packages and standalone installers via a centralized WPF interface.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages