|Original author(s)||Linus Torvalds|
|Developer(s)||Dirk Hohndel, Linus Torvalds, and many others|
|Initial release||September 22, 2011|
|Written in||Qt, C, C++, Bourne Shell, Perl|
|Operating system||Linux, OS X, Windows, Android, iOS, (POSIX)|
Subsurface allows a scuba diver or free diver to keep track of their dive data. It allows dive record data to be downloaded from many different makes and models of dive computers and can represent this data both graphically (depth profile, gas usage) and in tabular format. Digital photographs taken during the dive can be added to the log and the location of the dive site is displayed on a map. Decompression information based on the Bühlmann model or the VPM-B model and gas usage information can be displayed. The program also includes an interactive dive planner. The logbook can be exported in many file formats and to a Git-based cloud storage. There is a version running on mobile devices that can display the log book data, but downloading directly from dive computers is currently not supported.
Until version 3.9.2, Subsurface used GTK+ for its graphical user interface, and with version 4.0 it was switched to Qt 4. At the LCA2014, Torvalds and Hohndel explained why they choose to re-write the GUI using Qt.
Subsurface officially runs on Linux, OS X and Microsoft Windows. It is written using the POSIX API and not the Linux API, so it should be portable to any POSIX-compliant operating system. The mobile version using Qt Quick via KDEs Kirigami framework allows it to run on Android and iOS.
As Subsurface binary software deployment for Linux users for the various Linux distributions turned out to be problematic, the packaging was changed to a portable, self-contained, distro-agnostic AppImage in 2015.
Supported dive computers
As of release 4.6.4 in April 2017, Subsurface supports the downloading and processing of dive log data from the following dive computers:
|Wikimedia Commons has media related to Subsurface (software).|
- "Subsurface release announcement". Retrieved 12 May 2014.
- "News Archives". Retrieved 12 September 2019.
- "GitHub Subsurface v1.0 commit log". GitHub.com. Retrieved 17 June 2016.
- "Subsurface README file". GitHub.com. Retrieved 17 June 2016.
- "Subsurface User Manual". subsurface-divelog.org. Retrieved 9 November 2016.
- "Subsurface 4.0 has been released". 15 December 2013.
- "Gtk to Qt – a strange journey". 9 January 2014. Archived from the original on 21 March 2015.
- "Gtk to Qt – a strange journey Video" (WebM). YouTube. 9 January 2014.
- Linus Torvalds (29 August 2014). "Q&A with Linus Torvalds" (video). DebConf 2014 Portland. debian.net. Retrieved 14 May 2016.
6:31 I have seen this first hand with the other project I'm involved with, which is my dive log app. We make binaries for Windows and OSX, we basically don't make binaries for Linux. Why? Because making binaries for Linux desktop applications is a major fucking pain in the ass.
- This is just very cool. by Linus Torvalds on Google+ Dirk Hohndel: "I, as the app maintainer, don't want my app bundled in a distribution anymore. Way to much pain for absolutely zero gain. Whenever I get a bug report my first question is "oh, which version of which distribution? which version of which library? What set of insane patches were applied to those libraries?". No, Windows and Mac get this right. I control the libraries my app runs against. [...] With an AppImage I can give them just that. Something that runs on their computer."" (25 November 2015)
- Torvalds, Linux (25 November 2015). "This is just very cool". Google+.
I finally got around to play with the "AppImage" version of +Subsurface, and it really does seem to "just work".
- "Supported Dive Computers". Subsurface. Retrieved 6 July 2017.