AlmaLinuxRHEL Based

How To Install Geany on AlmaLinux 10

Install Geany on AlmaLinux 10

Geany stands out as one of the most efficient lightweight integrated development environments available for Linux systems today. This powerful yet resource-friendly IDE combines the simplicity of a text editor with essential development features that programmers need. AlmaLinux 10, the latest release of this enterprise-grade distribution, provides an excellent platform for running Geany with enhanced stability and long-term support. Whether you’re a system administrator writing shell scripts, a web developer coding PHP applications, or a programmer working with multiple languages, Geany delivers the tools necessary without consuming excessive system resources. This comprehensive guide walks through three proven installation methods, configuration steps, and troubleshooting solutions to get Geany running smoothly on AlmaLinux 10.

Table of Contents

What is Geany IDE?

Overview and Purpose

Geany represents a fast, lightweight integrated development environment built on the GTK+ toolkit. Unlike bloated alternatives that demand significant memory and processing power, this IDE maintains a small footprint while delivering robust functionality. The development team designed Geany specifically for users who need more than a basic text editor but don’t want the overhead of heavyweight development platforms.

System administrators appreciate Geany for quick script editing. Developers value its code intelligence features. Content creators use it for markup languages and configuration files. The software launches quickly, responds instantly to commands, and handles large files without performance degradation.

Key Features

Geany supports syntax highlighting for over 50 programming languages, including C, C++, Java, PHP, HTML, Python, Perl, and Pascal. Code completion accelerates development by suggesting function names, variables, and language constructs as you type. Call tips display function signatures and parameter information, reducing the need to reference documentation constantly.

The symbol list sidebar provides instant navigation through functions, classes, and variables defined in your code. Code folding allows collapsing sections of code to focus on specific areas. The embedded terminal emulator eliminates context switching by bringing command-line access directly into your development environment.

A flexible plugin system extends Geany’s capabilities beyond the core features. Plugins add functionality like project management, advanced file browsing, version control integration, and additional language support. The minimal dependencies mean Geany installs cleanly without pulling in dozens of unnecessary packages.

Advantages for AlmaLinux Users

AlmaLinux servers often run with limited resources allocated to desktop environments. Geany excels in these constrained conditions where heavier IDEs struggle or become impractical. The application consumes minimal RAM and CPU cycles, leaving resources available for development tasks and running applications.

Performance remains consistently fast regardless of file size or project complexity. Cross-platform compatibility ensures skills transfer seamlessly if you work across different operating systems. Active development means regular updates, bug fixes, and new features continue to improve the software.

About AlmaLinux 10

AlmaLinux 10, released as a binary-compatible fork of Red Hat Enterprise Linux 10, brings enterprise-level stability to the open-source community. The Purple Lion release represents a significant milestone in the distribution’s evolution. Organizations choose AlmaLinux for production environments because it delivers RHEL’s reliability without licensing costs.

This version ships with updated development tools critical for modern software engineering. GCC 14.2 provides the latest compiler optimizations and language standard support. Python 3.12 introduces performance improvements and new syntax features. Git 2.47 enhances version control capabilities. Apache 2.4.62 updates web server functionality.

Security enhancements protect systems against evolving threats. SELinux policy updates strengthen mandatory access controls. Secure Boot support extends to ARM architectures. Sequoia PGP tools modernize cryptographic operations.

Extended x86-64-v2 architecture support maintains compatibility with older hardware while ensuring 10 years of security updates. The DNF package manager handles software installation, updates, and dependency resolution efficiently. Access to EPEL repositories expands available software beyond the base distribution.

Prerequisites Before Installation

System Requirements

A functioning AlmaLinux 10 installation forms the foundation for this procedure. The system should be fully updated to ensure compatibility with current package versions and security patches. Network connectivity enables downloading packages from repositories.

Geany requires minimal hardware resources. One gigabyte of RAM suffices for comfortable operation. Five hundred megabytes of disk space accommodates the application and plugins with room to spare. Root privileges or sudo access allows installing system packages.

Required Dependencies

GTK+ 3 runtime libraries provide the graphical toolkit foundation that Geany builds upon. The package manager installs these automatically when you install Geany through standard methods. VTE, the Virtual Terminal Emulator library, powers the embedded terminal functionality that integrates command-line access into the IDE. GLib development files support core application functions.

Updating Your System

System updates prevent compatibility issues and security vulnerabilities. Open a terminal and run:

sudo dnf update

The DNF package manager connects to configured repositories, downloads updated package metadata, and identifies available updates. Review the list of packages that will be updated. Confirm the operation to proceed. This process ensures all system components reach current versions before introducing new software.

Large update batches may require several minutes to download and install. A system reboot becomes necessary if kernel updates occur. Refreshing package metadata keeps your system aware of newly available software versions.

Checking Current Installation Status

Verify whether Geany already exists on your system before attempting installation. Execute:

dnf list installed | grep geany

No output indicates Geany is not currently installed. Package names appearing in the results show existing Geany components. Check available versions in repositories with:

dnf info geany

This command displays package details including version number, size, description, and repository source].

Method 1: Installing Geany via DNF and EPEL Repository (Recommended)

Understanding EPEL Repository

Extra Packages for Enterprise Linux (EPEL) extends the software catalog beyond what ships in the base AlmaLinux repositories. Community maintainers curate EPEL packages to maintain compatibility with RHEL-based distributions while offering additional applications that enterprise users need.

EPEL becomes essential when installing development tools, text editors, and specialized software not included in the minimal enterprise distribution. AlmaLinux 10 includes built-in EPEL support optimized for both x86-64-v2 and x86-64-v3 architectures, ensuring broad hardware compatibility.

Enabling EPEL Repository

Install the EPEL release package that configures repository access. Run:

sudo dnf install epel-release

DNF downloads the repository configuration files and GPG keys needed to verify package authenticity. The system prompts for confirmation before proceeding with installation. Type ‘y’ and press Enter to continue.

Verify successful repository activation by listing enabled repositories:

sudo dnf repolist

The output should include EPEL entries among the configured repositories. Repository priority settings ensure base system packages take precedence over EPEL versions when conflicts arise].

Installing Geany Package

With EPEL enabled, install Geany using a single straightforward command:

sudo dnf install geany

DNF contacts the repositories, searches for the Geany package, and calculates all required dependencies. The dependency resolver identifies GTK+ libraries, VTE components, and supporting packages that Geany needs to function.

Review the installation summary displaying package names, sizes, and total download requirements. The system asks for confirmation before proceeding. Confirm by typing ‘y’ and pressing Enter.

Package download begins, showing progress bars for each file. Installation follows immediately after downloads complete. DNF verifies package signatures, extracts files to appropriate system locations, and configures the application. The VTE library installs automatically as a dependency, enabling terminal emulator functionality within Geany.

Installing Geany Plugins

Extend Geany’s capabilities by installing the plugin collection:

sudo dnf install geany-plugins

This package bundle includes numerous plugins that enhance functionality. Project management tools organize related files. Advanced file browsers provide enhanced navigation. Version control integration connects to Git repositories. Additional language support extends syntax highlighting capabilities.

Access the Plugin Manager within Geany to enable specific plugins individually. Navigate to Tools menu, then Plugin Manager. Check boxes next to desired plugins to activate them immediately.

Verifying Installation

Confirm successful installation by checking the installed version:

geany --version

The output displays Geany’s version number along with GTK+ version information. Query package details using DNF:

dnf info geany

This command shows comprehensive package information including version, release, size, installation date, and file locations. Confirm installation succeeded and note the version installed on your system.

Method 2: Installing Geany via Flatpak

Understanding Flatpak

Flatpak delivers applications in self-contained packages with bundled dependencies. This containerized approach ensures applications run consistently across different Linux distributions. Sandboxing isolates applications from the host system, enhancing security by limiting file system access and system resources.

Automatic updates keep Flatpak applications current without manual intervention. The distribution-agnostic nature means the same Flatpak works identically on Fedora, Ubuntu, AlmaLinux, or any distribution supporting the runtime.

Flatpak suits scenarios where you need the absolute latest Geany version rather than the distribution-packaged release. Isolated environments benefit testing and development work where application conflicts might otherwise occur.

Installing Flatpak on AlmaLinux 10

Install Flatpak support if not already present:

sudo dnf install flatpak

Add the Flathub repository that hosts thousands of Flatpak applications:

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

The --if-not-exists flag prevents duplicate repository additions if Flathub is already configured. Restart your system to complete Flatpak integration with the desktop environment. This restart ensures proper application menu entries and file associations.

Installing Geany via Flatpak

Search Flathub for Geany to confirm availability:

flatpak search geany

Results display available Geany packages including application IDs and versions. Install Geany with:

flatpak install flathub org.geany.Geany

Flatpak downloads approximately 66 megabytes of packages and installs roughly 178 megabytes to disk. The download includes Geany itself plus required runtime components. Progress indicators show download status for each component.

The system requests permission to proceed with installation. Type ‘y’ to confirm. Installation extracts files to the Flatpak application directory, separate from system package locations.

Running Flatpak Geany

Launch the Flatpak version using:

flatpak run org.geany.Geany

Alternatively, find Geany in your application menu under the Development or Programming category. The desktop integration creates menu entries automatically after installation completes.

Flatpak’s application isolation means Geany runs in a sandbox with controlled access to system resources. File system permissions may restrict which directories Geany can access initially. Grant additional permissions through Flatpak’s permission system if needed.

Advantages and Disadvantages

Flatpak advantages include access to the latest Geany releases independent of distribution package cycles. Isolated environments prevent conflicts with system libraries. Automatic update capabilities keep the application current with minimal user intervention.

Disadvantages involve larger disk space consumption compared to native packages. Bundled dependencies duplicate libraries already present on the system. Initial application startup may experience slight delays while the sandbox initializes. System integration limitations can affect file associations and default application behaviors.

Method 3: Building Geany from Source

When to Build from Source

Source compilation provides access to bleeding-edge development features not yet released in stable versions. Custom build configurations enable or disable specific features based on requirements. Testing patches and contributing to development necessitates building from source.

Understand that source builds require more technical knowledge and maintenance effort compared to package manager installations. Updates demand manual compilation rather than simple package updates.

Installing Build Dependencies

Install the Development Tools group containing compilers, build utilities, and essential development libraries:

sudo dnf groupinstall "Development Tools"

This command installs GCC, make, autoconf, automake, and related build tools. Add GTK+ development libraries:

sudo dnf install gtk3-devel

Install additional dependencies required for Geany compilation:

sudo dnf install gettext autopoint libtool python3-docutils

The python3-docutils package provides rst2html for building documentation. These development packages include header files and libraries necessary for compiling GTK+ applications.

Downloading Geany Source Code

Clone the official Geany repository from GitHub:

git clone https://github.com/geany/geany.git

This command downloads the complete source code repository including development history. Navigate into the newly created directory:

cd geany

Alternatively, download a specific release tarball from the Geany website for stable version compilation. Extract the tarball and navigate to the extracted directory.

Verify source code integrity by checking GPG signatures if downloading tarballs directly. The development team signs official releases to prevent tampering.

Compilation Process Using Meson

Modern Geany versions support Meson build system for faster compilation. Create the build directory:

meson build

Meson analyzes dependencies, checks for required libraries, and configures build options. Specify a custom installation prefix if desired:

meson --prefix /usr/local build

Compile the source code:

meson compile -C build

The compilation process displays progress as source files compile into binary objects and link into the final executable. Compilation time varies based on system performance. Modern systems complete compilation within minutes.

Review compilation output for errors or warnings. Address any missing dependencies before proceeding. Install the compiled binaries:

sudo meson install -C build

Alternative: Compilation Using Autotools

Older Geany versions or preference for traditional build tools utilize Autotools. Run the autogen script:

./autogen.sh

Configure the build with options:

./configure --prefix=/usr/local

The configure script checks system capabilities, locates required libraries, and generates Makefiles. Compile using make:

make

Install compiled files to system directories:

sudo make install

Post-Installation Configuration

Update the PATH environment variable if you installed to a non-standard location. Edit your shell configuration file (.bashrc or .bash_profile) to include the installation directory.

Create desktop launcher entries manually by copying .desktop files to the appropriate locations. The installation process typically handles this automatically when installing to standard directories.

Launching and Configuring Geany

Launching Geany from Terminal

Start Geany by typing its name in a terminal:

geany

Launch in the background to keep terminal access available:

geany &

Open specific files directly:

geany filename.py

Command-line options modify behavior. View available options with geany --help.

Launching from Application Menu

Access Geany through the desktop environment’s application menu. GNOME desktop users find it under Applications, then Development or Programming. KDE Plasma places it in the Applications menu under Development category.

Create desktop shortcuts by right-clicking Geany in the application menu and selecting add to favorites or create shortcut options. Pin frequently used applications to taskbars or docks for quick access.

First-Time Setup

Geany’s interface divides into distinct areas upon first launch. The menu bar across the top provides access to all functions. The toolbar below offers quick access to common operations. The sidebar on the left displays the symbol list and file browser. The main editor pane occupies the central area. The message window at the bottom shows compiler output, search results, and terminal emulation.

Install Geany on AlmaLinux 10

Access preferences through Edit menu, then Preferences. The preferences dialog organizes settings into categories. Editor settings control tab width, indentation style, and line wrapping behavior. Choose spaces or tabs for indentation based on coding standards. Set tab width to match project conventions, typically 2, 4, or 8 spaces.

Select color schemes that reduce eye strain and improve code readability. Dark themes suit low-light environments. Light themes work well in bright conditions. Preview schemes before applying to ensure syntax elements remain clearly distinguishable.

Essential Configuration Settings

Enable line numbers to facilitate code navigation and debugging. Navigate to View menu and check Show Line Numbers. Visual aids like showing white space characters help identify indentation issues.

Configure compiler and build commands for languages you work with frequently. Access Build menu, then Set Build Commands. Define compilation commands, execution commands, and clean operations for each language. Custom build commands accommodate project-specific build systems.

File templates accelerate new file creation by providing boilerplate code. Access Tools menu, then Configuration Files, then filetype templates. Edit templates for different file types to include standard headers, license information, or common code structures.

Terminal emulator configuration adjusts the embedded terminal’s appearance and behavior. Change font size for readability. Set the working directory behavior. Configure shell preferences.

Plugin Management

Open Plugin Manager from Tools menu. The dialog lists all available plugins with descriptions. Check boxes next to plugins to enable them immediately. Uncheck to disable unwanted plugins.

Useful plugins include File Browser for enhanced file system navigation, Project Organizer for managing related files across directories, and Save Actions for automatic formatting or cleanup on file save. Explore available plugins to discover functionality that matches your workflow.

Basic Usage and Features

Creating and Opening Files

Create new files through File menu, then New. The editor opens an empty document ready for content. Geany prompts for file type selection if syntax highlighting is ambiguous.

Open existing files with File menu, then Open, or use the keyboard shortcut Ctrl+O. Navigate the file browser to select files. Geany handles multiple open files using tabs across the top of the editor pane. Switch between files by clicking tabs or using keyboard shortcuts.

Syntax Highlighting

Geany automatically detects file types based on extensions and applies appropriate syntax highlighting. Color coding distinguishes keywords, strings, comments, and other language elements, improving code readability and reducing errors.

Manually override automatic detection through Document menu, then Set Filetype. The submenu lists all supported languages organized by category. Select the appropriate language when working with files having non-standard extensions or when automatic detection fails.

Geany supports over 50 programming and markup languages including C, C++, Java, Python, PHP, JavaScript, HTML, CSS, Shell scripts, and many others.

Code Completion and Navigation

Auto-completion activates as you type, suggesting function names, variables, and language keywords. Press Tab or Enter to accept suggestions, accelerating code entry and reducing typos. Completion draws from language keywords, currently open files, and global tags files.

The symbol list in the sidebar displays functions, classes, variables, and other structures defined in the current file. Click symbols to jump directly to their definitions. This navigation eliminates scrolling through large files searching for specific code sections.

Code folding collapses functions, classes, or code blocks to focus on relevant sections. Click the fold icon in the margin or use keyboard shortcuts to collapse or expand code regions. Bookmark important lines for quick return by clicking the bookmark margin or using the appropriate menu command.

Build and Execute

Configure build commands for compiling and running code. Access Build menu to compile current files, build entire projects, or execute compiled programs. The message window displays compiler output, warnings, and errors. Click error messages to jump directly to problematic code lines.

Custom build commands accommodate complex build systems or specialized compilation requirements. Define multiple build command sets for different project configurations or target platforms.

Terminal Integration

Activate the embedded terminal by opening View menu, then Show Message Window. Select the Terminal tab in the message window area. The terminal provides full command-line access without leaving the IDE.

Execute shell commands, run scripts, manage version control, and perform system administration tasks directly within Geany. The terminal integration streamlines workflows by eliminating context switches to separate terminal windows.

Troubleshooting Common Issues

Geany Package Not Found

If DNF cannot locate the Geany package, verify EPEL repository activation. List enabled repositories:

sudo dnf repolist

Confirm EPEL appears in the output. Install epel-release if missing. Refresh repository metadata to update package lists]:

sudo dnf clean all && sudo dnf makecache

Check network connectivity if downloads fail. Firewall rules or proxy settings may block repository access. Verify DNS resolution functions correctly. Try alternative mirror servers if specific repositories timeout.

Dependency Resolution Errors

Dependency conflicts occur when packages require incompatible library versions. DNF displays detailed error messages explaining conflicts. Read messages carefully to identify problematic packages.

Resolve conflicts by updating conflicting packages or adjusting installation choices. Manually install specific dependency versions if automatic resolution fails:

sudo dnf install package-name

Consult DNF troubleshooting documentation for complex dependency situations. The dnf deplist command shows package dependencies for investigation.

GTK+ or VTE Library Issues

Missing GTK+ libraries prevent Geany from launching. Install GTK+ 3 development libraries:

sudo dnf install gtk3

VTE library absence disables terminal emulator functionality. Install VTE components:

sudo dnf install vte291

Verify library versions match Geany’s requirements. Incompatible versions cause runtime errors. Check error messages for specific library version requirements.

Geany Won’t Launch

Launch Geany from a terminal to view error messages. Error output identifies specific problems preventing startup. Common issues include missing libraries, configuration file corruption, or desktop environment incompatibility.

Desktop environment compatibility rarely causes problems, but older systems may encounter issues. Verify your desktop environment includes necessary GTK+ support.

Reset Geany configuration by removing the configuration directory:

rm -rf ~/.config/geany

Geany recreates default configuration files on next launch. This resolves issues caused by corrupted settings files. Backup the directory before deletion to preserve custom configurations.

Check file permissions ensure your user account can read Geany’s installation files and write to configuration directories. Permission errors prevent normal operation.

Plugin Loading Failures

Verify geany-plugins package installation if specific plugins fail to load:

dnf list installed | grep geany-plugins

Install the plugin package if absent. Plugin compatibility depends on matching Geany versions. Mismatched versions cause loading failures. Update both Geany and plugins together.

Plugin installation location affects loading. User-installed plugins reside in ~/.config/geany/plugins. System-wide plugins install to /usr/lib64/geany or similar system directories. Verify plugins exist in expected locations.

Check Plugin Manager for error messages explaining why specific plugins failed initialization. Messages identify missing dependencies or configuration problems.

Performance Issues

Disable unnecessary plugins to reduce resource consumption. Each active plugin consumes memory and processing cycles. Deactivate plugins you don’t actively use through the Plugin Manager.

Adjust editor settings for large file handling. Disable features like code folding or symbol parsing for files exceeding several thousand lines. These features become expensive on massive files.

Terminal emulator resource usage increases with scrollback buffer size and active processes. Reduce terminal buffer size or close the terminal panel when not needed.

Updating and Managing Geany

Updating Geany via DNF

System-wide updates include Geany alongside other packages:

sudo dnf update

Update only Geany and its dependencies:

sudo dnf update geany

Check for available updates before proceeding:

dnf check-update geany

This command queries repositories for newer versions without performing installation. Regular updates provide bug fixes, security patches, and new features.

Updating Flatpak Version

Update Flatpak applications with:

flatpak update org.geany.Geany

Update all installed Flatpak applications simultaneously:

flatpak update

Configure automatic updates through Flatpak’s settings or desktop environment software centers. Automatic updates ensure timely security patches without manual intervention.

DNF History and Rollback

View installation and update history:

sudo dnf history

This command lists all DNF transactions with IDs, dates, and actions performed. Review recent changes to identify problematic updates.

Rollback updates if issues arise:

sudo dnf history undo <transaction-id>

Replace <transaction-id> with the specific transaction number to reverse. Rollback reverts packages to previous versions, useful when updates introduce bugs or compatibility problems.

Monitoring Geany Releases

Check your installed Geany version:

geany --version

Follow official Geany releases through the project website and GitHub repository. Recent releases include Geany 2.1 with improved UI elements and enhanced file type support.

AlmaLinux package update cycles lag behind upstream releases to ensure stability. Enterprise distributions prioritize reliability over cutting-edge features. Expect delays between Geany releases and AlmaLinux package availability.

Uninstalling Geany

Removing DNF Installation

Remove Geany using DNF:

sudo dnf remove geany

Remove plugin packages separately:

sudo dnf remove geany-plugins

Clean orphaned dependencies no longer required by installed packages:

sudo dnf autoremove

This command removes dependencies that were installed automatically but are no longer needed after removing Geany.

Removing Flatpak Installation

Uninstall Flatpak Geany:

flatpak uninstall org.geany.Geany

Remove unused runtimes and dependencies:

flatpak uninstall --unused

This cleanup reclaims disk space from runtime components no longer required by any installed Flatpak applications.

Cleaning Configuration Files

Remove personal Geany configuration to fully clean the system:

rm -rf ~/.config/geany

This deletes customizations, preferences, and session data. Cache files reside in the same location and are removed together. Consider backing up configurations before deletion if you might reinstall later.

Congratulations! You have successfully installed Geany. Thanks for using this tutorial for installing Geany lightweight Integrated Development Environment (IDE) and text editor on AlmaLinux OS 10 system. For additional help or useful information, we recommend you check the official Geany website.

VPS Manage Service Offer
If you don’t have time to do all of this stuff, or if this is not your area of expertise, we offer a service to do “VPS Manage Service Offer”, starting from $10 (Paypal payment). Please contact us to get the best deal!

r00t

r00t is an experienced Linux enthusiast and technical writer with a passion for open-source software. With years of hands-on experience in various Linux distributions, r00t has developed a deep understanding of the Linux ecosystem and its powerful tools. He holds certifications in SCE and has contributed to several open-source projects. r00t is dedicated to sharing her knowledge and expertise through well-researched and informative articles, helping others navigate the world of Linux with confidence.
Back to top button