Skip to content

Releases: sundanc/sdn

SDN Terminal v0.1 - Initial Release

22 May 07:47

Choose a tag to compare

This is the initial public release of SDN Terminal (v0.1), a custom terminal emulator paired with its own integrated shell, built with GTK+ 3 and VTE.

This release provides a foundational terminal and shell experience with a focus on core functionality and customizability.

Key Features:

  • Custom Terminal Emulator (sdn_terminal):
    • Clean and simple GTK+ 3 interface.
    • Uses VTE (Virtual Terminal Emulator) widget.
    • Configurable color themes via command-line: dark (default), light, light-blue, gray.
    • Generous 10,000 lines of scrollback buffer.
    • Standard copy (Ctrl+Shift+C) and paste (Ctrl+Shift+V) operations.
    • Application icon (sdn_terminal.png 48x48) for better desktop integration.
  • Integrated SDN Shell (sdn):
    • Execution of standard Unix commands.
    • Support for command pipelines (|).
    • Input (<), output (>), and append (>>) redirection.
    • Background process execution (&) with notifications upon completion.
    • Command history:
      • View with history (timestamped entries).
      • Navigate with Up/Down arrow keys.
      • Persistent history saved to ~/.sdn_history.
    • Autocompletion:
      • Tab completion for commands (with inline suggestions).
      • Tab completion for filenames and directories (completes to longest common prefix, displays matches).
    • Wildcard expansion (globbing) for filenames: *, ?, [], {}.
    • Alias support:
      • Define with alias ll="ls -al".
      • Manage with alias and unalias.
      • Directory-local aliases: automatically loads/unloads aliases from .sdn_local_aliases in the current directory.
    • Built-in commands: cd, exit, history, echo, export.
    • Basic shell variable support (e.g., MYVAR=hello, echo $MYVAR).
    • Interactive line editing (Backspace, arrow keys).
    • Informative error messages.

Building and Installation from Release Archive:

The release includes a sdn-0.1.tar.gz archive containing the source code, pre-compiled executables, and necessary project files.

  1. Download sdn-0.1.tar.gz.
  2. Extract the archive:
    tar -xzf sdn-0.1.tar.gz
  3. Navigate into the extracted directory:
    cd sdn-0.1
  4. Install dependencies (if you haven't already). On Ubuntu/Debian:
    sudo apt-get install libgtk-3-dev libvte-2.91-dev
    (See README.md for other distributions).
  5. Run the install script (this uses the pre-compiled binaries in the archive if available, or builds if necessary):
    make install
    This will install sdn and sdn_terminal to ~/.local/bin/, the desktop file to ~/.local/share/applications/, and the icon to ~/.local/share/icons/hicolor/48x48/apps/.

Desktop Entry (sdn.desktop) - Important Note:

The sdn.desktop file included in this release archive has the Exec path set to Exec=/home/your_username/.local/bin/sdn_terminal.

  • Before running make install from the extracted archive, you MUST manually edit the installed sdn.desktop file (usually located at sdn.desktop).
  • Change /home/your_username/ in the Exec= line to your actual home directory path (e.g, /home/myuser/) for the desktop shortcut to work correctly.

Included in this release archive (sdn-0.1.tar.gz):

  • Pre-compiled sdn and sdn_terminal executables.
  • Source code (sdn.c, sdn_terminal.c).
  • Makefile for building and installation.
  • README.md.
  • LICENSE.md.
  • sdn.desktop file.
  • sdn_terminal.png (48x48 icon).

This initial release lays the groundwork for SDN Terminal. I look forward to your feedback and future contributions!