Softpanorama

Home Switchboard Unix Administration Red Hat TCP/IP Networks Neoliberalism Toxic Managers
May the source be with you, but remember the KISS principle ;-)
Skepticism and critical thinking is not panacea, but can help to understand the world better

Less is More: The Orthodox File Manager (OFM) Paradigm

by Dr Nikolai Bezroukov

Content : Foreword : Ch01 : Ch02 : Ch03 : Ch04 : Ch05 : Ch06 : Ch07 : OFM1999 : OFM2004 : OFM2012


 

Prev Contents Next

Light-weight Unix OFMs

Introduction

deco -- the UNIX OFM pioneer

OFM - The open filemanager


Introduction

In a sense, original Norton commander line up to version 3.0 was small, elegantly written masterpieces of C+assember language programming. They were not open source, but they have the spirit of simplicity and power typical for top open source applications. So light-weight OFM represent the most interesting part of open source development, projects when you still might be able to understand and modify the source. We will discuss two such project: deco and ofm. None of them can compete with Volkov Commander as for the size of executable, but deco with proper compiler flags comes close.

deco -- the UNIX OFM pioneer

deco is one of the first attempt to create an OFM. It was written by Serge Vakulenko in 1989 (he was at a time in DEMOS one of the first and most influential Russian ISPs and that is reflected in the name - Demos Commander) and as of this writing it is still used and maintained. It definitely has historical value because it's more than 10 years old, which makes it the first OFM for UNIX. There is now a small Wikipedia article about this OFM: Demos Commander - Wikipedia, the free encyclopedia

But due to its simplicity and small codebase it has more than historical value. The only dependency of the codebase in on ncurses, so deco is immensely portable and can be used as a troubleshooting tool on rescue CD and similar collection of tools where space is premium. 

Although not that powerful deco is lightweight (about 100K tar.gz source archive of version 3.9 versus 350K for MC) and feels faster than MC. As MC gets more bloated that importance of Deco increases.  Here is one email message from DSL Linux minidistribution group that confirms that MC is over the dangerous line (DSL Ideas and Suggestions :: Is mc a must... or any "Commander ...):

I just don't use any file manager, but I saw how passionately Midnight Commander was defended in the RC1 forum. I have a personal taste for text based applications over X only apps, a matter of pragmatism in case X doesn't start for whatever the reason.

At the same time, even as it was assured that MC will be in the next release, there was at least an intent of dropping it in favour of emelFM. Googling around (well, "Aptituding") I found deco, Demos Commander.

My question is: is it just a matter of having a text based file manager whatever it is, or is it that MC is badly needed for unique features not reproducible or attainable even in other "Commander" clones?

If we are going to need a text-based file manager (which I will because I break things all the time  :-) why not just leave MC and emelfm alone? Is deco smaller? I think it's better to stick with stuff we know because that makes life easier for newbs like me. I had never used Linux in my life until I installed DSL a month ago. Have mercy on us!  

Yeah, deco seems significantly smaller (twentyfold smaller?).

But I don't know to what extent mc 5MB figure have been tuned down in DSL compared to deco 250KB figure. Dependencies seems to put deco in an even more favourable position.

That is why I am asking if 5MB are really needed to do the job a tiny deco seems to do.

As there is a great difference in size, I assume mc is plentiful of features that deco has not, but I don't know what are those or if those would be really missed in DSL.


I don't know where you got the 5mb figure for mc....it's grossly inaccurate.  I'm not in DSL at the moment to see what the actual size is for DSL's stripped-down version of mc, but when i compiled the most recent version of mc it came out to be less than 500k without the syntax and extfs files (which i know are not a part of DSL's version)
On the previous DSL version, mc.bin was 432.7KB uncompressed.  Even smaller when compressed into the filesystem.

The latest version also uses GNU configure which makes it easy to port (esp. in comparison to 4 years old version). In other words deco is a kind of VC in UNIX environment -- small, fast flexible, portable and extremely useful for troubleshooting.

IMHO deco still is a valuable tool that is very useful if one does not has a root access to the system and thus cannot install MC (with its libraries) or if one maintains the system but cannot install anything on it (firewall, DNS server, etc). Among advanced features worth mentioning I would like to single out support of preformatted text in internal viewer (manual pages with bold/underline made by backspace-overstrike, etc.).

Deco can be downloaded from SourceForge.net Project Info - Demos Commander.

As of 2010 it is still used in FreeBSD environment as an essential tool. See, for example demos-commander-deco-pod-freebsd (in Russian). Version 3.9_4 is available from Freshports and SourceForge.net

Later Sergey Vakulenko  was probably the first OFM author who tried to integrate OFM into bash. See Bash Commander.

OFM - The open filemanager

The Open File Manager is a project by Raphael Bugajewski and is a C-written a console-based Unix file manager with a Norton Commander look&feel. Tared/gziped archive of source is 34K. It is really multiplatform and that fact represents huge advantage for system administrators. 

OFM is very good code base for somebody who wants to write a non-bloated but functional console based orthodox file manager. License is GPL.
 

The author states the following:

It is based on ncurses, and it is very flexible.

OFM was tested on You can get the source of OFM as well as Debian packages from two sites:

 

Prev Contents Next



Etc

The Last but not Least Technology is dominated by two types of people: those who understand what they do not manage and those who manage what they do not understand ~Archibald Putt. Ph.D


Copyright 1996-2018 by Dr. Nikolai Bezroukov. www.softpanorama.org was initially created as a service to the (now defunct) UN Sustainable Development Networking Programme (SDNP) in the author free time and without any remuneration. This document is an industrial compilation designed and created exclusively for educational use and is distributed under the Softpanorama Content License. Original materials copyright belong to respective owners. Quotes are made for educational purposes only in compliance with the fair use doctrine.

FAIR USE NOTICE This site contains copyrighted material the use of which has not always been specifically authorized by the copyright owner. We are making such material available to advance understanding of computer science, IT technology, economic, scientific, and social issues. We believe this constitutes a 'fair use' of any such copyrighted material as provided by section 107 of the US Copyright Law according to which such material can be distributed without profit exclusively for research and educational purposes.

This is a Spartan WHYFF (We Help You For Free) site written by people for whom English is not a native language. Grammar and spelling errors should be expected. The site contain some broken links as it develops like a living tree...

You can use PayPal to make a contribution, supporting development of this site and speed up access. In case softpanorama.org is down you can use the at softpanorama.info

Disclaimer:

The statements, views and opinions presented on this web page are those of the author (or referenced source) and are not endorsed by, nor do they necessarily reflect, the opinions of the author present and former employers, SDNP or any other organization the author may be associated with. We do not warrant the correctness of the information provided or its fitness for any purpose.

The site uses AdSense so you need to be aware of Google privacy policy. You you do not want to be tracked by Google please disable Javascript for this site. This site is perfectly usable without Javascript.

Last modified: March 12, 2019