Filelight
Filelight is a free and open-source graphical disk usage analyzer developed by the KDE project as part of its Applications suite, which visualizes the space consumption of files and directories on a computer's storage devices using an intuitive sunburst diagram composed of concentric, segmented rings.[1] This representation allows users to quickly identify large files or folders that occupy significant disk space, aiding in efficient storage management and cleanup.[2] Key features of Filelight include the ability to scan local drives, remote network shares, and removable media, with interactive elements such as clicking on ring segments to drill down into subdirectories or middle-clicking to open them in a file browser.[1] Users can view detailed information on hover, delete unnecessary files directly from the interface, and customize color schemes for better personalization.[1] The tool integrates seamlessly with KDE file managers like Dolphin, Konqueror, and Krusader, enhancing its utility within the KDE ecosystem.[1] Originally released in the mid-2000s as part of KDE's utility applications,[3] Filelight has evolved through community contributions and is actively maintained, with the latest stable version 25.08.3 issued in November 2025.[4] It is licensed under open-source terms and available for Linux distributions via package managers like AppStream or Flatpak, as well as for Windows through official ports.[1][5] This cross-platform availability has made Filelight a popular choice for users seeking a visually oriented alternative to text-based disk analyzers.[6]Overview
Description
Filelight is a free and open-source graphical disk usage analyzer designed to visualize filesystem space consumption on computers.[1] It employs a sunburst chart-style representation, depicting directories and files as concentric segmented rings where the angular width and radial extent of each segment proportionally indicate the amount of disk space used by the corresponding elements.[1][7] The software is licensed under the GNU General Public License version 2.0 or later, ensuring its availability for modification and redistribution within compatible projects.[8] As part of the KDE Gear suite of applications, Filelight integrates with the KDE ecosystem to provide users with an intuitive tool for exploring storage utilization.[9] This visual metaphor allows for quick identification of space-intensive directories through nested ring structures, with the outermost ring representing the root level and inner rings drilling down into subdirectories.[1]Purpose and Usage
Filelight serves as a graphical disk space analyzer designed to help users identify large files and directories that consume significant storage, enabling efficient space management. By representing the file system through concentric rings, where ring size corresponds to the amount of disk space used by each folder or file, it reveals "space-eaters" in an intuitive visual format that simplifies the process of pinpointing unnecessary data for deletion or relocation.[1][7] This approach is particularly useful for users encountering low storage alerts, as it quickly highlights bloated directories without requiring manual navigation through file trees. Typical usage scenarios include scanning local drives to audit overall storage allocation, troubleshooting storage shortages on system partitions, or examining removable media like USB drives before cleanup. For instance, a user might launch Filelight to analyze the home directory during routine maintenance, allowing them to spot oversized log files or media caches that accumulate over time. Unlike command-line tools such asdu, which output textual summaries that can be overwhelming for non-technical users, Filelight's visual representation enhances accessibility by providing an immediate, color-coded overview of space distribution, making it suitable for both novice and experienced users seeking a user-friendly alternative.[2][10]
The basic workflow begins with selecting a target directory or drive to scan, after which Filelight computes and displays the usage data as a sunburst-style diagram. Users interpret the diagram by noting the proportional sizes of the rings—larger segments indicate greater space usage—and can then decide on actions like deleting redundant files or moving data to external storage. This process promotes proactive disk management, helping prevent performance issues caused by full drives.[7][11]
History
Initial Development
Filelight was initially developed by Max Howell as the primary creator, with the project's copyright notice in the source code dating its origins to 2003–2004.[12] The early motivation stemmed from the need for a KDE-native graphical tool to analyze disk usage, offering a visual representation as an alternative to text-based analyzers like the Unix 'du' command.[13] The initial release occurred in early 2004 on January 12. Prior to formal KDE integration, Filelight existed as a standalone application, with early adoption into the KDE Extragear collection facilitating its growth within the community. One of the first major updates came in version 0.9 later that year, introducing the basic sunburst visualization technique using concentric segmented rings to depict filesystem hierarchy and space allocation. This approach marked a key milestone in making disk analysis more intuitive for users.KDE Integration
Filelight transitioned into the KDE ecosystem as part of the extragear module beginning with KDE 3.x, where it was maintained outside the core applications bundle. This integration evolved with the restructuring of KDE software, becoming formalized within KDE Applications—later rebranded as KDE Gear—from 2014 onward, aligning it with the community's coordinated release schedule for utilities. Following its initial development, maintenance shifted to KDE contributors, with Martin Sandsmark emerging as a key developer alongside other community members who have handled updates and refactoring efforts. The project adheres to KDE Gear's release cadence, featuring annual major versions such as 21.12 in December 2021 and the latest stable release 25.08.3 on November 6, 2025, which includes bug fixes and stability improvements across the suite.[14][4] In 2020, Filelight's repository migrated to KDE Invent as part of the broader shift of KDE projects from legacy code hosting to the GitLab-based platform, now accessible at invent.kde.org/utilities/filelight.[15] Operating under an open-source model, Filelight receives ongoing community contributions, primarily in the form of patches for bug fixes and enhancements, managed through KDE's bug tracking system.Features
Visualization Techniques
Filelight utilizes a sunburst chart, a type of multilevel pie chart, to represent disk usage hierarchically. The innermost ring corresponds to the scanned directory, with outer rings illustrating its subdirectories in expanding concentric layers, providing a radial overview of the file system structure.[16] In this visualization, each segment's angle is proportional to the byte size of the file or directory relative to its parent, while the radius denotes the nesting depth, enabling users to discern space allocation at a glance.[16] This proportional encoding highlights dominant space consumers without requiring textual navigation. Distinct colors are applied to different directories to enhance identification, while files are shown as gray segments, with configurable schemes for clarity.[7][1] The chart accommodates multi-level nesting, supporting several depths to reveal granular breakdowns of usage patterns across deep directory trees.[16] Filelight's rendering engine ensures real-time visualization updates during interaction, optimized for datasets from large-scale drives.[1]Interactive Capabilities
Filelight provides intuitive zooming and navigation features to facilitate exploration of disk usage visualizations. Users can drill down into specific subdirectories by left-clicking on a ring segment in the sunburst diagram, which recenters the view on that folder's contents for a more detailed examination.[11][17] Keyboard shortcuts enhance this process, including Ctrl++ to zoom in for closer inspection and Ctrl+- to zoom out, while Alt+Up navigates to the parent directory, and the Go menu's Back and Forward options handle browsing history.[18] These mechanisms allow seamless traversal without disrupting the overall radial layout. Context menu actions offer quick access to common operations on selected directories or files. Right-clicking a segment opens a menu with options to copy the folder path to the clipboard or delete the item directly, enabling efficient space reclamation.[18][7] A middle-click on a segment opens associated files according to their MIME type, such as launching images in the default viewer like Gwenview.[18] For broader file management, users can integrate with KDE tools like Dolphin or Konqueror to perform actions such as copying or moving items after selecting from the visualization.[7][1] Scan controls support flexible initiation and management of analyses across various storage types. The Scan menu allows selection of specific paths via a URL bar or folder dialog, accommodating local drives, remote networks, or removable media like USB devices.[1][18] Rescanning the current folder refreshes data with F5, and Esc halts an ongoing scan if needed.[18] Accessibility features ensure usability for diverse users, including keyboard navigation and visual adaptations. Shortcuts like Ctrl+Home for scanning the home directory and F5 for rescanning provide non-mouse alternatives for core functions.[18] Color schemes include a High Contrast option with an adjustable contrast slider for ring segments, improving readability for users with visual impairments such as color blindness.[18] Additional settings like anti-aliasing toggles and variable label font sizes further enhance clarity.[18]Technical Implementation
Underlying Algorithm
Filelight collects disk usage data through a recursive traversal of the filesystem, utilizing stat() system calls to retrieve metadata for files and directories. Regular files contribute their full size to the total, while directories trigger further recursion to aggregate contents; symbolic links are handled distinctly via lstat() to detect and resolve them without infinite loops, typically following them to include target sizes unless configured otherwise. Space calculation focuses on apparent size—the logical size from stat.st_size—ignoring sparse file allocations that reduce physical disk usage. A directory's total size is the sum of the apparent sizes of all its descendant files and subdirectories, providing a user-oriented view of allocated space rather than on-disk blocks. Scanning uses a recursive or iterative traversal, with multi-threading distributing the workload across cores for faster processing on large filesystems, complemented by caching of prior results to accelerate repeated scans of the same paths.[19][20] Edge cases are managed by skipping paths with permission errors, issuing warnings to the user without interrupting the overall scan. Support for remote filesystems is provided via KDE's KIO protocols, including NFS and SSH, though scans default to excluding them to limit network load; unreadable paths are bypassed without full recursion, ensuring efficiency on drives exceeding terabytes in capacity.[18][21]Dependencies and Requirements
Filelight relies on KDE Frameworks 6.13.0 (or compatible versions of KDE Frameworks 5 for older releases) as its primary software foundation, providing Qt-based components essential for its operation. Key dependencies include KIO for file system access and protocol handling, KI18n for internationalization, KConfig for configuration management, KCrash for error reporting, and KColorScheme for theming support. Additionally, the user interface utilizes Kirigami, a QML-based framework for adaptive layouts, ensuring compatibility across desktop and mobile environments.[22] The application is built on Qt 6.9.0, requiring modules such as Core, Widgets, Quick, and QuickControls2 to enable its graphical visualization and interactive features. For the latest features in KDE Gear 25.08 as of November 2025, including improved stability with Qt 6, users need KDE Gear 25.08 or later; earlier versions remain backward compatible with KDE Plasma 5 environments using Qt 5 and KDE Frameworks 5. Note that versions 25.08 and later may encounter rendering issues on Wayland with Qt 6.9 or newer.[23][22][24] To compile Filelight from source, build dependencies encompass CMake (version 3.16 or higher), Extra CMake Modules (ECM) at least version 6.13.0 for KDE Frameworks integration, and gettext for translation support. These tools facilitate the modular build process typical of KDE applications.[25][22] Runtime requirements are modest, with a minimum of 512 MB RAM and any modern CPU sufficient for scanning and visualization tasks; GPU acceleration is not required, though Qt's rendering engine supports it for smoother performance on capable hardware. For extended protocol support, such as SSH-based remote scans, optional libraries like libssh may be needed through the KIO framework's extras module to enable secure file access over networks.[1]Availability and Installation
Supported Platforms
Filelight is primarily supported on Linux distributions that incorporate the KDE Plasma desktop environment, such as Kubuntu, Fedora KDE Spin, KDE Neon, Manjaro KDE, openSUSE, and Ubuntu with KDE installed.[26][1] These platforms benefit from native integration within the KDE Gear package collection, ensuring seamless compatibility with the KDE ecosystem.[1] Support extends to other Unix-like systems through community-maintained ports. On FreeBSD, Filelight is available via the ports collection under sysutils/filelight, allowing compilation and installation on various FreeBSD releases.[27] Similarly, OpenBSD provides Filelight through its ports system at x11/kde-applications/filelight, supporting visualization of disk usage on OpenBSD systems.[28] However, support for Solaris or its derivatives is not available through official or standard ports.[1] Cross-platform availability includes Windows, where Filelight can be installed via the Microsoft Store as a ported KDE application, offering full functionality for disk analysis on Windows 10 and later versions.[29] Builds are also possible using KDE on Windows or MSYS2 environments for custom installations.[6] Filelight lacks native support for macOS, though older KDE4 variants were once available via MacPorts; there is no official port for modern versions, and users may consider third-party disk usage analyzers such as GrandPerspective or DaisyDisk for similar functionality.[30] There is no official support for Android, and integrations like KDE Itinerary do not extend Filelight's features to mobile environments.[1] In terms of hardware architecture, Filelight targets x86_64 systems as primary, but it runs effectively on ARM-based Linux devices, such as Raspberry Pi with KDE Plasma installed, leveraging Qt frameworks for cross-architecture compatibility.[31][32]Installation Methods
Filelight can be installed on Linux distributions using native package managers. On Debian-based systems such as Ubuntu, it is available in the official repositories and can be installed via the APT package manager with the commandsudo apt install filelight.[33] On Fedora, Filelight is provided through the DNF package manager, using sudo dnf install filelight.[34] For Arch Linux, the package is in the Extra repository and installs with sudo pacman -S filelight.[8]
Cross-distribution installation is supported through universal package formats like Flatpak and Snap. Filelight is available on Flathub, where it can be installed with flatpak install flathub org.kde.filelight after enabling the Flathub remote if necessary.[5] Similarly, on systems with Snap support, it installs via sudo snap install filelight.[26]
For users preferring to compile from source, Filelight's codebase is hosted on KDE's Invent platform. Clone the repository with git clone https://invent.kde.org/utilities/filelight.git, then navigate to the directory, create a build folder (mkdir build && cd build), configure with cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=RelWithDebInfo, build using make -j$(nproc), and install with sudo make install.[35]
On Windows, Filelight is accessible via the Microsoft Store, where it can be downloaded and installed directly.[29] Alternatively, building from source using tools like MSYS2 is feasible for custom configurations.
Updates to Filelight are managed through the respective channels: distribution repositories handle native packages via standard update mechanisms like apt update && apt upgrade or dnf update; Flatpak and Snap provide automatic updates; and for source installations, users can pull the latest changes from the Git repository before rebuilding. As part of the KDE Gear collection, new versions are released quarterly, ensuring ongoing improvements and compatibility.[36]