This extension will mount your bookmarked network shares and periodically check them should they become unmounted for any reason. It has options to control (re)mount frequency and provides visual status feedback through custom icons.
I was inspired by Gigolo but sometimes crashes and also doesn't display a MessageTray icon under Wayland sessions. Also, I thought "why does this need to be an app?". So, I vibed with Claude to create this.
- β Automatic mounting of bookmarked network shares
- β Custom symlink creation for easy access from your home directory
- β Visual status indicators with custom SVG icons and consistent UI branding
- β Retry mechanism for failed mounts with configurable attempts
- β Per-bookmark configuration for auto-mount and symlink settings
- β Comprehensive notification system with granular controls
- β Real-time file monitoring for bookmark changes
- β Advanced preferences UI with tabbed organization and custom icons
The extension can be installed directly from source, either for the convenience of using git or to test the latest development version. Clone the desired branch with git
This extension has no special build dependencies.
network-automount/
βββ extension.js # Main extension code
βββ prefs.js # Preferences UI
βββ metadata.json # Extension metadata
βββ Makefile # Build automation
βββ schemas/
β βββ org.gnome.shell.extensions.network-share-automount.gschema.xml
βββ icons/ # Custom SVG icons
β βββ folder-remote-connected-symbolic.svg
β βββ folder-remote-disconnected-symbolic.svg
βββ README.md
Clone the repository or download the branch from github. A comprehensive Makefile is included.
git clone https://github.com/gavindi/network-automount
cd network-automount
make installThe Makefile automatically handles:
- Compiling GSettings schemas (required for preferences)
- Copying all necessary files including custom icons
- Creating proper directory structure in build/
- Installing icons directory with all SVG files
- Validating all required files are present
# Install to user directory (recommended)
make install
# System-wide installation (requires sudo)
make install-system
# Validate all required files are present
make validate# One command to clean, build, install, and enable
make dev
# Check if extension is installed/enabled
make status
# Restart GNOME Shell on X11
make restart-shell
# Watch for file changes and auto-rebuild
make watch
# View extension logs
make logs# Creates a zip file for sharing/publishing
make distThe extension includes custom SVG icons that provide visual feedback:
- π’ Connected state: Green indicator when all enabled network shares are mounted
- π΄ Mounting/Disconnected state: Red indicator during mounting or when shares are disconnected
- π¨ UI Integration: Custom connected icon appears in preferences About page for consistent branding
Icons are automatically copied during installation. If custom icons are missing, the extension gracefully falls back to standard GNOME icons.
# Build and install the extension
make install
# Enable it
make enable
# Or do everything at once for development
make dev
# Check status and view logs
make status
make logsmake help # Show all available commands
make validate # Check all required files exist
make reload # Disable and re-enable extension
make quick # Quick install and status check
make uninstall # Remove extension from user directory
make clean # Clean build directoryThe extension provides clear visual feedback through custom panel icons and consistent UI branding:
- π’ All Connected: Green dot indicator when all enabled bookmarks are mounted
- π΄ Mounting/Issues: Red dot with X when mounting is in progress or shares are disconnected
- βͺ Default: Standard folder icon when no bookmarks are configured
The extension uses SVG icons that automatically adapt to your GNOME theme:
folder-remote-connected-symbolic.svg- Connected state (used in panel and preferences)folder-remote-disconnected-symbolic.svg- Disconnected/mounting state
- Panel Indicator: Real-time status updates during mount operations
- Preferences About Page: Custom connected icon for consistent branding
- Automatic Fallback: Gracefully falls back to system icons if custom SVGs are missing
Goal: Access your NAS shares easily from ~/NetworkMounts/ folder
Before configuring the extension, you need network bookmarks in your file manager:
- Open Files (Nautilus)
- Connect to Server (Ctrl+L or sidebar)
- Enter your network addresses:
smb://192.168.1.100/documents smb://192.168.1.100/media smb://192.168.1.100/backup - Authenticate when prompted
- Bookmark each share (Ctrl+D or click bookmark star)
Verify: Check that bookmarks appear in Files sidebar
-
Open Extension Settings:
gnome-extensions prefs network-automount@gavindi.github.com
-
Go to "Mount Points" tab
-
Set Base Mount Directory:
/home/[username]/NetworkMountsOr simply:
~/NetworkMounts -
Click browse button (π) if you prefer visual selection
Result: All symlinks will be created under ~/NetworkMounts/
Go to "Bookmarks" tab - you should see your network bookmarks listed.
π 192.168.1.100/documents
βββ βοΈ Auto Mount: ON
βββ βοΈ Create Symlink: ON
βββ π Symlink Name: "NAS-Documents"
βββ Custom Mount Point: [leave empty]
π 192.168.1.100/media
βββ βοΈ Auto Mount: ON
βββ βοΈ Create Symlink: ON
βββ π Symlink Name: "NAS-Media"
βββ Custom Mount Point: [leave empty]
π 192.168.1.100/backup
βββ βοΈ Auto Mount: ON
βββ βοΈ Create Symlink: ON
βββ π Symlink Name: "NAS-Backup"
βββ Custom Mount Point: [leave empty]
Click "Apply" or close settings
-
Wait 10-15 seconds for auto-mounting
-
Check the status:
- Extension icon in top bar should show connected state (π’)
- Click extension icon to see mount status
-
Verify symlinks created:
ls -la ~/NetworkMounts/Should show:
lrwxrwxrwx NAS-Documents -> /run/user/1000/gvfs/smb-share:server=192.168.1.100,share=documents lrwxrwxrwx NAS-Media -> /run/user/1000/gvfs/smb-share:server=192.168.1.100,share=media lrwxrwxrwx NAS-Backup -> /run/user/1000/gvfs/smb-share:server=192.168.1.100,share=backup -
Test access:
cd ~/NetworkMounts/NAS-Documents ls
- Navigate to ~/NetworkMounts/
- Double-click NAS-Documents, NAS-Media, etc.
- Bookmark
~/NetworkMounts/for quick access
- Media Player: Open
~/NetworkMounts/NAS-Media/Movies/ - Document Editor: Open files from
~/NetworkMounts/NAS-Documents/ - Backup Software: Backup to
~/NetworkMounts/NAS-Backup/
# Navigate to shares
cd ~/NetworkMounts/NAS-Documents
# Use in scripts
rsync -av ~/Documents/ ~/NetworkMounts/NAS-Backup/Documents/
# Check disk usage
df -h ~/NetworkMounts/NAS-Mediagnome-extensions list --enabled | grep network-automount
make status # If using Makefilegio mount -l | grep smbfind ~/NetworkMounts -type l -ls- No symlinks: Check "Create Symlink" is enabled
- Permission errors: Ensure
~/NetworkMountsis writable - Broken symlinks: Unmount/remount shares via extension menu
- Shares not mounting: Check network connectivity and credentials
- Icons not showing: Check if custom SVG files are installed
- Click extension icon β "Check All Now"
- Or disable/enable extension:
gnome-extensions disable network-automount@gavindi.github.com gnome-extensions enable network-automount@gavindi.github.com
# View extension logs
make logs
# Validate installation
make validate
# Rebuild if needed
make clean
make devYou now have:
- β Automatic mounting of network shares
- β
Easy access via
~/NetworkMounts - β Custom names for each share
- β Visual status indicators
- β Integration with all applications
- Add desktop shortcuts:
ln -s ~/NetworkMounts/NAS-Media ~/Desktop/Media - Configure backup scripts using the symlink paths
- Add more network shares as needed
Pro Tip: The extension will automatically recreate symlinks after reboots, network changes, or credential updates!
- Configurable retry attempts for failed mounts
- Adjustable delay between retry attempts
- Visual feedback for retry status
- Granular notification controls
- Success/error notification toggles
- Transient notifications that don't clutter your desktop
- File monitoring for bookmarks instead of periodic disk reads
- Efficient mount status checking
- Reduced battery usage on laptops
- Individual auto-mount settings
- Custom symlink paths
- Independent symlink creation (works even without auto-mount)
If you prefer manual installation:
-
Create extension directory:
mkdir -p ~/.local/share/gnome-shell/extensions/network-share-automount@gavindi.github.com cd ~/.local/share/gnome-shell/extensions/network-share-automount@gavindi.github.com
-
Copy source files:
cp extension.js . cp prefs.js . cp metadata.json .
-
Copy and compile schemas:
mkdir schemas cp schemas/org.gnome.shell.extensions.network-share-automount.gschema.xml schemas/ glib-compile-schemas schemas/
-
Copy icons directory:
cp -r icons . -
Enable extension:
gnome-extensions enable network-share-automount@gavindi.github.com
Extension not loading:
# Check logs for errors
journalctl -f -o cat /usr/bin/gnome-shell | grep -i network
# Validate installation
make validateIcons not appearing:
# Check if icons were copied
ls -la ~/.local/share/gnome-shell/extensions/network-share-automount@gavindi.github.com/icons/
# Check permissions
find ~/.local/share/gnome-shell/extensions/network-share-automount@gavindi.github.com -name "*.svg" -ls
# Test preferences icon loading
gnome-extensions prefs network-share-automount@gavindi.github.com
# Check About page for custom iconMounts failing:
- Check network connectivity
- Verify credentials in file manager first
- Check if shares are accessible manually
- Review notification messages for specific errors
Icons not showing in preferences:
- Check if
icons/folder-remote-connected-symbolic.svgexists in extension directory - Verify file permissions are readable
- Extension automatically falls back to system icons if custom ones are missing
Symlinks not working:
- Ensure base directory exists and is writable
- Check that "Create Symlink" is enabled for specific bookmarks
- Verify mount points are valid
# Complete extension status
make status
# Live log monitoring
make logs
# Reinstall with clean state
make uninstall
make clean
make install
# Quick validation
make validateBugs should be reported to the Github bug tracker https://github.com/gavindi/network-automount/issues.
When reporting bugs, please include:
- Extension version (check
metadata.json) - GNOME Shell version
- Output of
make validate - Relevant log entries from
make logs - Steps to reproduce the issue
Network Automount Gnome Shell extension is distributed under the terms of the GNU General Public License, version 2. See the LICENSE file for details.
See CHANGELOG.md for the full version history.
