The Indian Government has been talking of the open source-based systems for long, but for the first time it is working on a policy on the use of operating systems and device drivers in all new e-governance projects.
Friday, July 08, 2011: According to the latest draft policy on e-governance, all new projects must work on open source operating systems only. The draft Policy On Device Drivers For Procurement Of Hardware For e-governance says, “Government of India (GOI) endeavours to provide e-governance services, which are technology-neutral, cost effective, interoperable and vendor-neutral. GOI Policy on open standards is a step towards meeting this objective in the development of e-governance applications.” The policy shall apply to all the new e-governance projects as well as the existing ones.
The need for such a policy was felt because while implementing open source, there is a possibility of non-availability of device drivers for all general purpose operating systems. “Hence, there is a need for a policy by GOI for procurement of computers and associated peripherals to empower the implementation of e-governance projects with neutrality to all general purpose OS,” states the draft.
The draft clarifies the reason for covering both computers and peripherals. According to the document, most parts of the computer, in general, work with the recent stable versions of Windows and Linux operating systems. However, some of the devices internal to computers may require drivers, which should adhere. The policy has to be applicable to them also, for example, webcam, inbuilt speakers. Other devices (like printer, scanner) are external to computers. Hence both computers and peripherals are covered in the policy, in addition to the drivers of external peripherals to ensure the complete-working of the computer system.
The Department of Information Technology (DIT) has demanded the following from the original equipment manufacturers (OEMs).
1. The computers shall be capable of running on all general purpose operating systems.
2. OEMs shall provide drivers for computers and peripherals, which are capable of running on all general purpose OS.
3. The drivers of computers and peripherals for GNU/Linux (one of the general purpose OS) shall satisfy any of the following conditions:
a. The source code, build procedure and installation instructions for the drivers must be made available as per any of the open source software (OSS) licences listed. Computers and peripherals must be operational using these drivers in the latest stable Linux-kernel. It implies that in case, the source code, build procedure and installation instructions for the drivers are made available as per any of the open source software licences listed in the policy, and if these are accepted in the latest stable Linux-kernel, then it is expected to work in any of the Linux-distributions.
b. The source code, build procedure and installation instructions for the drivers must comply with LSB-3.0 or higher versions and accepted by any of the Linux-distributions. The compliance with LSB-3.0 or higher versions is opted because the current stable version of Debian distribution (Version 6.0 Squeeze) is compliant with LSB Version 3.2, and not LSB Version 4.0.
c. In case only binaries are made available for the drivers, then they shall be Linux-compatible; in addition, kernel dependent binaries must adhere to the specifications of the latest stable Linux-Kernel.
As mentioned above, the adherence to any one of the three conditions is sufficient when considering Linux OS. The reason cited for this is: “The source code of the device driver for the Linux operating system is made available through two approaches, (a) under open source licences (b) LSB compliance, as indicated in the policy. From any of the two approaches, binary for the device driver can be built. Third approach is to use the binary of the device driver provided by the vendor as per the policy requirements.”
The open source licences demanded in the policy are:
1. Apache License, Version 2.0
2. Eclipse Public License- v 1.0
3. European Union Public License (EUPL v.1.1)
4. GNU General Public License, version 2 (GPLv2)
5. GNU General Public License, version 3 (GPLv3)
6. Mozilla Public License 1.1 (MPL 1.1)
7. The BSD License
8. The GNU Lesser General Public License, version 2.1 (LGPLv2.1)
9. The GNU Lesser General Public License, version 3.0 (LGPLv3)
10. The MIT License
11. Any other licence which gives freedom to copy, modify and redistribute driver source code without any restrictions.
The draft policy clarifies the demand for so many open source licences. It says, “The widely used OSS licences are listed along with generic open source software licence which gives freedom to copy, modify and redistribute driver source code without any restrictions. Hence the driver is made available by building the executable from the available source-code under any one of the listed licences.”