Small and highly customizable twin-panel file manager for Linux with support for plugins.

Overview

Note: Prefered repository hosting is GitLab. If you don't have an account there and don't wish to make one interacting with one on GitHub is fine.

Sunflower

Sunflower is a small and highly customizable twin-panel file manager for Linux with support for plugins. It is intended to be an easy-to-use and powerful file manager that seamlessly integrates into the GNOME desktop environment (but not limited to). Fully compatible and native to Wayland compositors.

Screen shot

Packages

Sunflower package can be downloaded from following locations:

Official packages can be downloaded from here or releases page above.

Plugins

Check some of the plugins made by community:

Plugins can be installed locally to: ~/.config/sunflower/user_plugins/<plugin_name>

How to contribute

You can be a part of this project in many ways. We suggest posting on our mailing list or visiting our IRC channel #sunflower on Libera chat and we'll try to help you get started.

And as usual testers are more than welcome. If you wish to help translate program to your language please join translation team(s) on Transifex.

Staying in touch

Preferred way of getting in touch with us is through mailing list.

I like talking to people a lot so please feel free to contact me any time. You can always follow me on my twitter account and Reddit. We also have IRC channel, #sunflower on libera.chat.

Screenshots

Check out screenshots.

Please note that screen shots and videos are months old, but they will help you know a little bit more what you are getting with this program.

Comments
  • Doesn't run on Arch

    Doesn't run on Arch

    Sunflower doesn't start in archlinux,

    user@pc ~]$ sunflower 
    Traceback (most recent call last):
      File "/usr/lib/python3.10/site-packages/sunflower/__main__.py", line 165, in do_activate
        self.window = MainWindow(
      File "/usr/lib/python3.10/site-packages/sunflower/gui/main_window.py", line 87, in __init__
        self._load_styles()
      File "/usr/lib/python3.10/site-packages/sunflower/gui/main_window.py", line 931, in _load_styles
        provider.load_from_file(Gio.File.new_for_path(file_name))
    gi.repository.GLib.GError: gtk-css-provider-error-quark: <broken file>:1:0Failed to import: Error opening file /usr/lib/python3.10/site-packages/styles/main.css: No such file or directory (2)
    

    Installed package from https://aur.archlinux.org/packages/sunflower

    opened by ghabit 5
  • The rpm places the module in the wrong directory on Fedora 35

    The rpm places the module in the wrong directory on Fedora 35

    An updated Fedora 35 runs Python 3.10, but the Sunflower RPM installs the module specifically to /usr/lib/python3.9/site-packages.

    Actual behavior:

    • When launched from the GUI, the application never appears.
    • When launched from a fresh Terminal session, the following error appears:
    $ sunflower 
    Traceback (most recent call last):
      File "/usr/local/bin/sunflower", line 4, in <module>
        runpy.run_module('sunflower', run_name='__main__', alter_sys=True)
      File "/usr/lib64/python3.10/runpy.py", line 205, in run_module
        mod_name, mod_spec, code = _get_module_details(mod_name)
      File "/usr/lib64/python3.10/runpy.py", line 140, in _get_module_details
        raise error("No module named %s" % mod_name)
    ImportError: No module named sunflower
    

    The following workaround is confirmed to work: sudo ln -s /usr/lib/python3.9/site-packages/sunflower /usr/lib/python3.10/site-packages/

    Expected behavior:

    The rpm may have to have scripting or a separate package for different Python versions.

    opened by Poikilos 3
  • Operations sometimes are performed on unfocused panel.

    Operations sometimes are performed on unfocused panel.

    Found a bug in Sunflower which might cause operation to happen on unfocused panel. It seems to occur when workspaces are changed in Gnome. I suggest enabling delete to trash in case you remove files you are not suppose to.

    bug critical 
    opened by MeanEYE 0
  • Unable to copy from hard disk to NAS

    Unable to copy from hard disk to NAS

    Using version 0.5.63-1, installed from AUR. Unlike the 0.4 series, I'm happy that it is now able to mount/open my NAS location, and the mount manager is now working/available. Thanks for that.

    However, when I tried to copy a few files (2 or 3) from my hard drive to the NAS drive (into a specific folder), it gave me an error:

    Gio.File.create() takes exactly 3 arguments (1 given)

    To test, I then tried to copy the same files to NAS using Nautilus, using the same ftp address for my NAS. It worked. So it can't be a problem with permissions. Would appreciate you looking into this.

    ksnip_20220322-203343 .

    bug 
    opened by asqwerth 1
  • “Load specified tabs instead of saved” doesn’t work

    “Load specified tabs instead of saved” doesn’t work

    Bug:

    1. In PreferencesItem List, check Load specified tabs instead of saved.
    2. Add two directories — let’s say /usr and /etc — and check Left list for one and Right list for the other.
    3. Save preferences and restart Sunflower.

    I expect Sunflower to start with /usr in one notebook and /etc in the other. Instead, it starts with the home directory in both.

    As far as I can tell from the source code, Sunflower saves that directory list but doesn’t use it anywhere.

    (For me personally, it’s more convenient to specify initial directories on the command line. I stumbled upon this bug only because I didn’t know I could pass directories on the command line, and was looking for another way.)

    opened by vfaronov 1
Releases(0.5-63)
  • 0.5-63(Feb 28, 2022)

    Another long time coming release. Further work on improving GTK3 port has been done. Many interfaces have been remade to look better and more consistent with the rest of the system. Popup menu for items have been completely redesigned with new emblems mechanism in place.

    This version also fixed numerous issues with distribution specific packages, most notably RPM.

    Source code(tar.gz)
    Source code(zip)
    sunflower-0.5.63-1.all.deb(500.28 KB)
    sunflower-0.5.63-1.noarch.centos8.rpm(860.89 KB)
    sunflower-0.5.63-1.noarch.fedora.rpm(829.32 KB)
    sunflower-0.5.63-standalone.zip(473.99 KB)
  • 0.4-62(May 17, 2020)

    After many years of development and many troubles version 0.4 is finally here.

    This version brings new interface based on GTK3. We've switched to Python3 for easier future development. Interface changes and code rewrites resulted in big performance gain.

    There are many issues with this new version, most obvious ones being related to keyboard shortcuts, but I didn't wish to spend more months and keep people in the dark. Should you run into new issues, please report them here on GitHub or GitLab.

    This version also brings standalone executable. File provided for download here (ending with .standalone.zip) can be downloaded and just marked as executable by entering chmod +x sunflower-0.4.62.standalone.zip. Some dependencies might need to be installed for it to work but on most Gnome desktop environments it should work just fine. This version is ideal for trying Sunflower out as it doesn't require any installation.

    Please test and let me know if you run into any issues or have any comments on interface changes and similar.

    Source code(tar.gz)
    Source code(zip)
    sunflower-0.4-62.tgz(738.76 KB)
    sunflower-0.4.62-2.all.deb(414.71 KB)
    sunflower-0.4.62-2.noarch.rpm(434.92 KB)
    sunflower-0.4.62.standalone.zip(464.56 KB)
  • 0.3-61(Jan 30, 2016)

  • 0.3-60(Jan 18, 2016)

    After long wait, it's finally here. There were many changes under the hood, some new features, lot's of bug fixes. This is also the last GTK2 release. If there's a higher demand, I might maintain separate branch for GTK2, but we'll see.

    So here's the change log:

    • Ability to find text inside remote directories.
    • Add MTP, Gphoto2 and GIO Provider to handle Android phones and other multimedia devices.
    • Add context menu items to copy path or file name of selected item.
    • Add option to support second level extension.
    • Add support for GVFS archive mounts.
    • Added 'skip all' option to operation dialogs.
    • Added keyboard shortcuts for menus.
    • Added ability to lock session.
    • Added option to avoid following symlinks in operations.
    • Added support for calculating directory usage.
    • Added viewer word wrap option.
    • Check collisions on changed accelerators.
    • Custom dialog for confirming removal.
    • Enabled mnemonics in bookmark list.
    • Hide files listed in .hidden file.
    • Initial archive support.
    • Initial support for trash.
    • List of paths to be treated as always visible.
    • Main window: Add %P,%M and %U variables in commands.
    • Make viewer try to detect character encoding of file in order to better handle none ASCII/UTF-8 cases.
    • Operation queue implemented.
    • Option to turn on network path completion.
    • Properly handle system signals.
    • Properly support symbolic links.
    • Set 'sunflower' as process name if setproctitle module available.
    • Single instance support through DBus and fnctl.
    • Support for horizontal split.
    • Support for multiple patterns when matching items in find files tool.
    • Support for saving previously used patterns in find files tool.
    • Support link emblems though emblem manager.
    • Switched to GitHub API for version check.
    • Show extensions tabs first in viewer.
    • Set buffer size from system block size to improve performance in operations.
    • Selecting "open file list" will open current terminal path instead of initial.
    • Select first item when selected item is parent directory.
    • Scroll to item after applying sort function.
    • Improved path entry dialog.
    • Fixed some issues with making hard links.
    • Fixed setting emblems on expanded directories.
    • Fixed issues with overwriting files in multiple rename tool.
    • Fix issues with threads on some systems.
    • Fix issues with opening files and setting current working directory.
    • Changed the way application imports plugins.
    • Change operations to work with expanded directories.
    • Always show tree expanders when option is turned on.
    Source code(tar.gz)
    Source code(zip)
  • 0.2-59(Jul 25, 2014)

    This release brings the following new features:

    • Multiple file system monitor;
    • Drag and drop in same directory;
    • Column font size;
    • Auto-complete in manual location entry;
    • Support for XDG directory icons;
    • Right-click drag and drop with options "Copy", "Move", "Link";
    • Option to choose to allow multiple instances;
    • Emblem support;
    • DBus support interface;
    • Locking tabs and tab menus;
    • Linking using with drag and drop;
    • Affected items list in copy/move dialog.
    Source code(tar.gz)
    Source code(zip)
Owner
Mladen Mijatov
Passionate open source programmer. Author of Sunflower file manager and Caracal development framework.
Mladen Mijatov
The official source code repository for the calibre ebook manager

calibre calibre is an e-book manager. It can view, convert, edit and catalog e-books in all of the major e-book formats. It can also talk to e-book re

Kovid Goyal 14.1k Dec 27, 2022
A simple shared budget manager web application

I hate money I hate money is a web application made to ease shared budget management. It keeps track of who bought what, when, and for whom; and helps

The spiral project. 829 Dec 31, 2022
A :baby: buddy to help caregivers track sleep, feedings, diaper changes, and tummy time to learn about and predict baby's needs without (as much) guess work.

Baby Buddy A buddy for babies! Helps caregivers track sleep, feedings, diaper changes, tummy time and more to learn about and predict baby's needs wit

Baby Buddy 1.5k Jan 2, 2023
ProPublica's collaborative tip-gathering framework. Import and manage CSV, Google Sheets and Screendoor data with ease.

Collaborate This is a web application for managing and building stories based on tips solicited from the public. This project is meant to be easy to s

ProPublica 86 Oct 18, 2022
The open-source core of Pinry, a tiling image board system for people who want to save, tag, and share images, videos and webpages in an easy to skim through format.

The open-source core of Pinry, a tiling image board system for people who want to save, tag, and share images, videos and webpages in an easy to skim

Pinry 2.7k Jan 8, 2023
🗃 Open source self-hosted web archiving. Takes URLs/browser history/bookmarks/Pocket/Pinboard/etc., saves HTML, JS, PDFs, media, and more...

ArchiveBox Open-source self-hosted web archiving. ▶️ Quickstart | Demo | Github | Documentation | Info & Motivation | Community | Roadmap "Your own pe

ArchiveBox 14.8k Jan 5, 2023
Free and open-source digital preservation system designed to maintain standards-based, long-term access to collections of digital objects.

Archivematica By Artefactual Archivematica is a web- and standards-based, open-source application which allows your institution to preserve long-term

Artefactual 338 Dec 16, 2022
:books: Web app for browsing, reading and downloading eBooks stored in a Calibre database

About Calibre-Web is a web app providing a clean interface for browsing, reading and downloading eBooks using an existing Calibre database. This softw

Jan B 8.2k Jan 2, 2023
Collect your thoughts and notes without leaving the command line.

jrnl To get help, submit an issue on Github. jrnl is a simple journal application for your command line. Journals are stored as human readable plain t

Manuel Ebert 31 Dec 1, 2022
Scan, index, and archive all of your paper documents

[ en | de | el ] Important news about the future of this project It's been more than 5 years since I started this project on a whim as an effort to tr

Paperless 7.8k Jan 6, 2023
Agile project management platform. Built on top of Django and AngularJS

Taiga Backend Documentation Currently, we have authored three main documentation hubs: API: Our API documentation and reference for developing from Ta

Taiga.io 5.8k Jan 5, 2023
A collection of self-contained and well-documented issues for newcomers to start contributing with

fedora-easyfix A collection of self-contained and well-documented issues for newcomers to start contributing with How to setup the local development e

Akashdeep Dhar 8 Oct 16, 2021
🧪 Panel-Chemistry - exploratory data analysis and build powerful data and viz tools within the domain of Chemistry using Python and HoloViz Panel.

???? ??. The purpose of the panel-chemistry project is to make it really easy for you to do DATA ANALYSIS and build powerful DATA AND VIZ APPLICATIONS within the domain of Chemistry using using Python and HoloViz Panel.

Marc Skov Madsen 97 Dec 8, 2022
Discord Panel is an AIO panel for Discord that aims to have all the needed tools related to user token interactions, as in nuking and also everything you could possibly need for raids

Discord Panel Discord Panel is an AIO panel for Discord that aims to have all the needed tools related to user token interactions, as in nuking and al

null 11 Mar 30, 2022
This Django app will be used to host Source.Python plugins, sub-plugins, and custom packages.

Source.Python Project Manager This Django app will be used to host Source.Python plugins, sub-plugins, and custom packages. Want to help develop this

null 2 Sep 24, 2022
Customizable-menu-python - User customizable menu in Python

Menu personalizável pelo usuário em Python A minha ideia com esse projeto pessoa

Renan Barbosa 4 Oct 28, 2022
File-manager - A basic file manager, written in Python

File Manager A basic file manager, written in Python. Installation Install Pytho

Samuel Ko 1 Feb 5, 2022
dragonscales is a highly customizable asynchronous job-scheduler framework

dragonscales ?? dragonscales is a highly customizable asynchronous job-scheduler framework. This framework is used to scale the execution of multiple

Sorcero 2 May 16, 2022
Faster Twitch Alerts is a highly customizable, lightning-fast alternative to Twitch's slow mobile notification system

Faster Twitch Alerts What is "Faster Twitch Alerts"? Faster Twitch Alerts is a highly customizable, lightning-fast alternative to Twitch's slow mobile

null 6 Dec 22, 2022
Small-File-Explorer - I coded a small file explorer with several options

Petit explorateur de fichier / Small file explorer Pour la première option (création de répertoire) / For the first option (creation of a directory) e

Xerox 1 Jan 3, 2022