How To Install PhpStorm on Manjaro

PhpStorm stands as one of the most powerful integrated development environments (IDEs) for PHP developers, offering intelligent code completion, advanced debugging capabilities, and seamless integration with modern PHP frameworks. This professional-grade tool from JetBrains has become the go-to choice for developers working on complex PHP projects, from Laravel applications to WordPress plugins.
Installing PhpStorm on Manjaro Linux presents unique opportunities due to the distribution’s rolling-release nature and access to the Arch User Repository (AUR). Unlike other Linux distributions, Manjaro users can choose from multiple installation methods, each offering distinct advantages in terms of system integration, update management, and maintenance flexibility. This comprehensive guide walks you through three proven installation methods: Snap packages for automatic updates, AUR for superior Manjaro integration, and manual tarball installation for complete control.
Whether you’re a seasoned Linux administrator or transitioning from Windows development, this tutorial provides step-by-step instructions, troubleshooting solutions, and optimization tips to get PhpStorm running smoothly on your Manjaro system.
Prerequisites and System Requirements
Before diving into the installation process, ensuring your system meets the necessary requirements prevents potential issues down the line.
Hardware Requirements
PhpStorm requires a minimum of 2 GB RAM, though 4 GB or more is strongly recommended for optimal performance, especially when working with large codebases. A modern multi-core CPU significantly improves indexing speed and overall responsiveness. You’ll need approximately 3.5 GB of free disk space for the IDE itself, plus additional space for projects, caches, and plugins. Your display should support at least 1024×768 resolution, though higher resolutions provide better workspace visibility.
Software Requirements
Manjaro Linux with any desktop environment (GNOME, KDE Plasma, Xfce) works perfectly with PhpStorm. You need terminal access with sudo privileges to execute installation commands. An active internet connection is essential for downloading packages and dependencies. The system requires GLIBC 2.27 or later, which comes pre-installed on all modern Manjaro versions. Importantly, PhpStorm bundles its own Java Runtime Environment (JRE), eliminating the need for separate Java installation in most cases.
Pre-Installation System Checks
Update your system packages before proceeding with the installation. Open your terminal and run:
sudo pacman -Syu
Check your system architecture to ensure compatibility:
uname -m
Verify available disk space:
df -h /
These preliminary checks help identify potential issues before they interrupt your installation process.
Method 1: Installing PhpStorm via Snap
Snap packages represent one of the simplest installation methods available on Manjaro, offering automatic updates and streamlined dependency management.
Understanding Snap on Manjaro
Snap is a universal package management system developed by Canonical that works across multiple Linux distributions. Snap packages are self-contained, bundling all dependencies within the package itself. This approach ensures consistent behavior across different systems and eliminates dependency conflicts. However, Snap packages consume more disk space due to dependency duplication and may experience minor theme integration issues with some desktop environments. For beginners or users who prioritize convenience over system customization, Snap provides the easiest installation path.
Installing Snapd on Manjaro
Manjaro doesn’t include snapd by default, so you’ll need to install it first. Using Pamac (Manjaro’s package manager GUI), search for “snapd” and click install. Alternatively, use the command line:
sudo pacman -S snapd
After installation, enable the snapd socket service to allow snap commands:
sudo systemctl enable --now snapd.socket
Enable AppArmor support for snap security features:
sudo systemctl enable --now snapd.apparmor
These commands ensure snapd starts automatically on system boot and provides proper security confinement.
Enabling Classic Snap Support
PhpStorm requires classic snap confinement, which provides full system access necessary for IDE functionality. Create the required symbolic link:
sudo ln -s /var/lib/snapd/snap /snap
Classic confinement allows PhpStorm to access system directories, execute external tools, and integrate with development workflows seamlessly. Log out and back in, or restart your system to ensure PATH updates take effect.
Installing PhpStorm via Snap
Execute the following command to install PhpStorm:
sudo snap install phpstorm --classic
The --classic flag grants PhpStorm necessary system permissions for full functionality. The installation process downloads the latest stable version from JetBrains’ official publisher, ensuring authenticity. Depending on your internet speed, this may take several minutes.
Once completed, you’ll see a confirmation message indicating successful installation.
Launching PhpStorm from Snap
Find PhpStorm in your application menu under Development or Programming categories. Launch it like any other application. Alternatively, open a terminal and type:
phpstorm
Snap packages update automatically in the background, ensuring you always run the latest version without manual intervention. Check your installed snap version anytime with:
snap list phpstorm
Method 2: Installing PhpStorm from AUR
The Arch User Repository offers the best integration with Manjaro’s package management system, providing a native installation experience.
Understanding AUR Installation
The AUR is a community-driven repository containing build scripts (PKGBUILDs) for software not available in official Manjaro repositories. AUR packages integrate seamlessly with Manjaro’s package manager, respect system dependencies, and follow Arch Linux packaging standards. This method provides superior desktop integration, better theme support, and follows system-wide configuration practices.
Installing AUR Helper
Most Manjaro installations include Pamac with AUR support pre-configured. To use command-line tools, install yay, a popular AUR helper:
sudo pacman -S yay
If yay isn’t available in your repositories, install it from AUR after setting up base development tools:
sudo pacman -S --needed base-devel git
Yay simplifies AUR package management with syntax similar to pacman, making it intuitive for Manjaro users.
Installing PhpStorm Package
Search for PhpStorm in the AUR to verify package availability:
yay -Ss phpstorm
This displays available PhpStorm packages, including main package and related components. Install PhpStorm with:
yay -S phpstorm
Yay downloads the PKGBUILD script and displays it for review before building. This security measure allows you to inspect the build process. Review the PKGBUILD carefully, then confirm installation. The build process compiles the package and installs it along with required dependencies.
Understanding PhpStorm Dependencies
The PhpStorm AUR package requires glib2 and python as base dependencies. Optional dependencies enhance functionality: gnome-keyring provides secure credential storage for version control systems, while java-openjfx enables advanced Markdown preview rendering. The phpstorm-jre package provides JetBrains’ custom Java Runtime optimized specifically for their IDEs.
If you encounter runtime errors related to Java, install phpstorm-jre:
yay -S phpstorm-jre
This resolves “No JRE found” errors that occasionally occur with certain system configurations.
Desktop Entry and Launcher Setup
The AUR package automatically creates desktop entries during installation, making PhpStorm accessible from your application menu. If the launcher doesn’t appear, update your desktop database:
update-desktop-database ~/.local/share/applications/
Some users report launcher issues where PhpStorm fails to start from the menu. Edit the desktop file to add the .sh extension:
nano ~/.local/share/applications/jetbrains-phpstorm.desktop
Modify the Exec line to point to phpstorm.sh instead of just phpstorm. Save the file and refresh your application menu.
Updating PhpStorm via AUR
Keep PhpStorm updated alongside system packages:
yay -Syu
This command updates all system packages including AUR packages like PhpStorm. Check specifically for PhpStorm updates:
yay -Qu | grep phpstorm
The AUR package maintainer regularly updates the PKGBUILD to reflect new PhpStorm releases, though there may be a brief delay compared to Snap’s immediate updates.
Method 3: Manual Installation via Tarball
Manual installation provides maximum flexibility and control over PhpStorm’s installation location and configuration.
When to Choose Manual Installation
Choose manual installation when you need multiple PhpStorm versions for testing, require custom installation directories, or prefer managing updates independently. This method gives complete control over the installation process without relying on package managers. However, you’re responsible for manually downloading and installing updates, and managing dependencies separately.
Downloading PhpStorm Tarball
Visit the official JetBrains website to download the latest PhpStorm version. Using terminal, download directly with wget:
cd ~/Downloads
wget https://download.jetbrains.com/webide/PhpStorm-2024.3.1.tar.gz
Replace the version number with the current release. Verify the download completed successfully:
ls -lh PhpStorm-*.tar.gz
Optionally, verify the checksum against JetBrains’ published values to ensure download integrity.
Extracting to /opt Directory
The /opt directory conventionally houses third-party applications on Linux systems. Extract PhpStorm there:
sudo tar -xzf PhpStorm-*.tar.gz -C /opt/
Understanding the tar parameters: -x extracts files, -z handles gzip compression, -f specifies the archive file, and -C changes to the target directory before extraction. Verify extraction:
ls /opt/ | grep PhpStorm
You should see a directory named PhpStorm-<version>.
Running PhpStorm Manually
Navigate to the installation directory:
cd /opt/PhpStorm-*/bin/
Execute the startup script:
./phpstorm.sh
PhpStorm launches with its bundled Java Runtime Environment, requiring no separate Java installation. The first launch takes slightly longer as PhpStorm initializes its cache and indexes system libraries.
Creating Desktop Entry Manually
After launching PhpStorm, create a desktop shortcut through the IDE itself. Navigate to Tools → Create Desktop Entry from the menu bar. This generates a proper desktop entry with correct paths and icon configuration.
Alternatively, manually create the desktop file:
nano ~/.local/share/applications/phpstorm.desktop
Add the following content, adjusting paths to match your installation:
[Desktop Entry]
Version=1.0
Type=Application
Name=PhpStorm
Icon=/opt/PhpStorm-243.22562.218/bin/phpstorm.svg
Exec="/opt/PhpStorm-243.22562.218/bin/phpstorm.sh" %f
Comment=Lightning-smart PHP IDE
Categories=Development;IDE;
Terminal=false
StartupWMClass=jetbrains-phpstorm
Save the file and update the desktop database:
update-desktop-database ~/.local/share/applications/
Adding PhpStorm to System PATH
For convenient command-line access, create a symbolic link:
sudo ln -s /opt/PhpStorm-*/bin/phpstorm.sh /usr/local/bin/phpstorm
Now launch PhpStorm from any terminal by simply typing phpstorm.
Initial PhpStorm Setup and Configuration
First-time setup optimizes PhpStorm for your development workflow.
First Launch Experience
PhpStorm greets new users with an import settings dialog. If this is your first JetBrains IDE installation, select “Do not import settings.” Existing users can import configurations from previous installations. Accept the privacy policy and user agreement to proceed. The data sharing dialog requests permission to send anonymous usage statistics to JetBrains, which helps improve the product. This is optional and can be declined without affecting functionality.
Customizing IDE Appearance
Choose your preferred theme: Darcula (dark), IntelliJ Light, High Contrast, or sync with your operating system theme. Dark themes reduce eye strain during extended coding sessions. Adjust font size and family to match your reading preference. PhpStorm supports comprehensive accessibility features including screen reader compatibility and customizable color schemes for users with visual impairments.
Configuring Default Settings
Select your preferred keymap scheme. PhpStorm offers keymaps matching popular editors like Visual Studio Code, Eclipse, and Sublime Text, easing the transition for developers switching from other IDEs. Configure code style preferences for PHP, including indentation, brace placement, and naming conventions. Set your default project location to organize development work efficiently.
Installing Essential Plugins
Access the plugin marketplace from the welcome screen. Essential plugins for PHP development include Laravel, WordPress, and Symfony support packages. Database tools plugins enhance SQL editing and database management capabilities. Install Git and GitHub plugins for integrated version control workflows. Markdown support plugins improve documentation writing within the IDE.
License Activation
PhpStorm offers several license types: commercial licenses for professional developers, free educational licenses for students and teachers, and free licenses for open-source project development. Activate using your JetBrains Account, enter an activation code, or configure a license server for organizational deployments. New users can start a 30-day free trial to evaluate PhpStorm’s features before purchasing.
Post-Installation Configuration
Additional configuration optimizes PhpStorm’s performance on Manjaro systems.
Setting Environment Variables
For AUR and manual installations, configure environment variables if needed. Edit your system environment file:
sudo nano /etc/environment
Add Java-related variables if you encounter JRE errors:
PHPSTORM_JDK=/opt/phpstorm-jre
JDK_HOME=/opt/phpstorm-jre
For user-specific configuration, edit your shell profile:
nano ~/.bashrc
Add the same environment variables and source the file:
source ~/.bashrc
These variables point PhpStorm to the correct Java Runtime Environment, resolving “No JRE found” errors.
Optimizing PhpStorm Performance
PhpStorm’s performance depends heavily on available system memory. Edit the VM options file to adjust heap size:
nano ~/.config/JetBrains/PhpStorm*/phpstorm64.vmoptions
For systems with 8 GB RAM, set:
-Xms512m
-Xmx2048m
Systems with 16 GB RAM can allocate more:
-Xms1024m
-Xmx4096m
Disable unnecessary plugins through Settings → Plugins to reduce memory consumption. If you experience performance issues, disable the autosave feature, though this requires manually saving files more frequently.
Integrating with Desktop Environment
Manjaro supports both X11 and Wayland display servers. PhpStorm works well with both, though some users report better performance on X11. Snap installations may not perfectly match GTK themes. Install matching Snap themes:
sudo snap install gtk-common-themes
Connect themes to PhpStorm:
sudo snap connect phpstorm:gtk-3-themes gtk-common-themes
This improves visual integration with your system theme.
Troubleshooting Common Installation Issues
Even straightforward installations occasionally encounter problems. Here are solutions to common issues.
Snap Installation Issues
If snapd service fails to start, check its status:
sudo systemctl status snapd.socket
Restart the service if needed:
sudo systemctl restart snapd.socket
Classic snap permission errors usually stem from missing symbolic links. Verify the link exists:
ls -l /snap
If missing, recreate it as shown in the installation steps. Theme mismatches with Snap packages require installing and connecting theme snaps as described in the integration section.
AUR Installation Problems
Build failures often occur when base-devel group isn’t installed:
sudo pacman -S --needed base-devel
“No JRE found” errors require installing phpstorm-jre:
yay -S phpstorm-jre
Failed to generate phpstorm-jre information errors typically resolve after installing the phpstorm-jre package. Launcher issues where PhpStorm doesn’t start from the application menu require editing the desktop file to add .sh extension to the Exec path.
Manual Installation Challenges
Permission denied errors when executing phpstorm.sh indicate missing execution permissions:
chmod +x /opt/PhpStorm-*/bin/phpstorm.sh
Missing dependencies require manual installation. Check error messages and install required libraries using pacman. Desktop entries not appearing require updating the desktop database:
update-desktop-database ~/.local/share/applications/
PATH not recognized after creating symbolic links requires sourcing your profile or starting a new terminal session.
General PhpStorm Issues
IDE freezing issues sometimes relate to autosave conflicts. Disable autosave through Settings → Appearance & Behavior → System Settings → Synchronization. High memory usage requires adjusting VM options as described in the optimization section. Plugin compatibility problems arise after major PhpStorm updates. Update plugins through Settings → Plugins or disable incompatible ones. License activation failures usually indicate network connectivity issues; verify your internet connection and firewall settings.
Verifying Successful Installation
Confirm PhpStorm installed correctly before diving into development work.
Testing PhpStorm Functionality
Create a test PHP project to verify core functionality. Check that syntax highlighting works correctly with PHP code. Test code completion by typing partial function names. Verify the debugger configuration by setting a breakpoint and running a debug session. Ensure terminal integration works within the IDE for executing command-line operations.
Confirming Installation Method
Verify Snap installation:
snap list | grep phpstorm
Check AUR installation:
pacman -Q phpstorm
Confirm manual installation by checking the /opt directory:
ls -l /opt/ | grep PhpStorm
Each method provides different update and maintenance approaches, so knowing your installation type helps with future management.
Congratulations! You have successfully installed PhpStorm. Thanks for using this tutorial for installing PhpStorm lightweight and smart PHP IDE on your Manjaro Linux system. For additional or useful information, we recommend you check the official PhpStorm website.