Archives par mot-clé : Development

Have you noticed ?… A friendly reminder.

I can’t help but notice some posts in Planet Ubuntu are clearly out of line with our Code of Conduct.

I hardly take offense to anything I see on the Internet anymore, however this is Planet Ubuntu, not « the Internet ». If you’re posting on your blog and you are syndicated here, it means you are an Ubuntu Member and as such you have agreed to read and go along the lines of what our Code of Conduct says. Digitally signing it and actually going to the technical steps required to make your blog part of Planet are voluntary actions taken as an Ubuntu Member, so please remember that when you post.

I don’t expect anyone to change their « WTF » and « STFU » attitude, just leave it outside this project. Setting up a category to carry only Planet Ubuntu posts may help. If this means you have to take a break from Ubuntu for a while, please do. Between « great contributor with « STFU » attitude » and « No contributor », I’d rather have « No contributor ». Surely we can work out something in the middle 🙂

 

Getting your Dell service tag number from command line in Ubuntu

If you’re using Ubuntu with a Dell computer (from factory or else), there is a handy command to get your service tag number. This is handy in support situations (if you’re getting support or providing it) when the service tag number can’t be read because it’s inaccessible, too small, or simply gone – some older desktops’ stickers eventually come off.

Open the terminal window in the Accessories > Applications menu and type:
sudo dmidecode -s system-serial-number

dmidecode will work on any system, not just Dell systems. A similar, Dell-specific command is getSystemId, part of the libsmbios-bin package, I will probably exlore that one in another post.

From dmidecode‘s man page:

dmidecode is a tool for dumping a computer’s DMI (some say SMBIOS) table contents in a human-readable format. This table contains a description of the system’s hardware components, as well as other useful pieces of information such as serial numbers and BIOS revision. Thanks to this table, you can retrieve this information without having to probe for the actual hardware. While this is a good point in terms of report speed and safeness, this also makes the presented information possibly unreliable.

The DMI table doesn’t only describe what the system is currently made of, it also can report the possible evolutions (such as the fastest supported CPU or the maximal amount of memory supported).

SMBIOS stands for System Management BIOS, while DMI stands for Desktop Management Interface. Both standards are tightly related and developed by the DMTF (Desktop Management Task Force).

sudo dmidecode by itself will give all the information in your BIOS, other arguments bring back specific data or formats it for readability. Here is the output of sudo dmidecode -q on a system I have access to (service tag and serial intentionally obfuscated):

BIOS Information
	Vendor: Dell Computer Corporation
	Version: A08
	Release Date: 09/27/2004
	Address: 0xF0000
	Runtime Size: 64 kB
	ROM Size: 512 kB
	Characteristics:
		PCI is supported
		PNP is supported
		APM is supported
		BIOS is upgradeable
		BIOS shadowing is allowed
		ESCD support is available
		Boot from CD is supported
		Selectable boot is supported
		EDD is supported
		Japanese floppy for Toshiba 1.2 MB is supported (int 13h)
		Print screen service is supported (int 5h)
		8042 keyboard services are supported (int 9h)
		Serial services are supported (int 14h)
		Printer services are supported (int 17h)
		ACPI is supported
		USB legacy is supported
		AGP is supported
		LS-120 boot is supported
		BIOS boot specification is supported
		Function key-initiated network boot is supported

System Information
	Manufacturer: Dell Computer Corporation
	Product Name: Precision WorkStation XXX
	Version: Not Specified
	Serial Number: X9XX999
	UUID: 99999X9X-9999-9999-9999-X9X99X999999
	Wake-up Type: Power Switch

Base Board Information
	Manufacturer: Dell Computer Corp.
	Product Name: 9X9999
	Version:
	Serial Number: ..XX999999X99XX.

Chassis Information
	Manufacturer: Dell Computer Corporation
	Type: Mini Tower
	Lock: Not Present
	Version: Not Specified
	Serial Number: X9XX999
	Asset Tag:
	Boot-up State: Safe
	Power Supply State: Safe
	Thermal State: Safe
	Security Status: None

Processor Information
	Socket Designation: Microprocessor
	Type: Central Processor
	Family: Pentium 4
	Manufacturer: Intel
	ID: FF FF FF FF FF FF FB EB BF
	Signature: Type 0, Family 15, Model 2, Stepping 9
	Flags:
		FPU (Floating-point unit on-chip)
		VME (Virtual mode extension)
		DE (Debugging extension)
		PSE (Page size extension)
		TSC (Time stamp counter)
		MSR (Model specific registers)
		PAE (Physical address extension)
		MCE (Machine check exception)
		CX8 (CMPXCHG8 instruction supported)
		APIC (On-chip APIC hardware supported)
		SEP (Fast system call)
		MTRR (Memory type range registers)
		PGE (Page global enable)
		MCA (Machine check architecture)
		CMOV (Conditional move instruction supported)
		PAT (Page attribute table)
		PSE-36 (36-bit page size extension)
		CLFSH (CLFLUSH instruction supported)
		DS (Debug store)
		ACPI (ACPI supported)
		MMX (MMX technology supported)
		FXSR (Fast floating-point save and restore)
		SSE (Streaming SIMD extensions)
		SSE2 (Streaming SIMD extensions 2)
		SS (Self-snoop)
		HTT (Hyper-threading technology)
		TM (Thermal monitor supported)
		PBE (Pending break enabled)
	Version: Not Specified
	Voltage: 1.5 V
	External Clock: 800 MHz
	Max Speed: 3600 MHz
	Current Speed: 2400 MHz
	Status: Populated, Enabled
	Upgrade: ZIF Socket

Cache Information
	Socket Designation: Not Specified
	Configuration: Enabled, Not Socketed, Level 1
	Operational Mode: Write Back
	Location: Internal
	Installed Size: 8 KB
	Maximum Size: 16 KB
	Supported SRAM Types:
		Other
	Installed SRAM Type: Other
	Speed: Unknown
	Error Correction Type: None
	System Type: Data
	Associativity: 4-way Set-associative

Cache Information
	Socket Designation: Not Specified
	Configuration: Enabled, Not Socketed, Level 2
	Operational Mode: Varies With Memory Address
	Location: Internal
	Installed Size: 512 KB
	Maximum Size: 512 KB
	Supported SRAM Types:
		Other
	Installed SRAM Type: Other
	Speed: Unknown
	Error Correction Type: Single-bit ECC
	System Type: Unified
	Associativity: Other

Port Connector Information
	Internal Reference Designator: PARALLEL
	Internal Connector Type: None
	External Reference Designator: Not Specified
	External Connector Type: DB-25 female
	Port Type: Parallel Port PS/2

Port Connector Information
	Internal Reference Designator: SERIAL1
	Internal Connector Type: None
	External Reference Designator: Not Specified
	External Connector Type: DB-9 male
	Port Type: Serial Port 16550A Compatible

Port Connector Information
	Internal Reference Designator: SERIAL2
	Internal Connector Type: None
	External Reference Designator: Not Specified
	External Connector Type: DB-9 male
	Port Type: Serial Port 16550A Compatible

Port Connector Information
	Internal Reference Designator: KYBD
	Internal Connector Type: None
	External Reference Designator: Not Specified
	External Connector Type: PS/2
	Port Type: Keyboard Port

Port Connector Information
	Internal Reference Designator: MOUSE
	Internal Connector Type: None
	External Reference Designator: Not Specified
	External Connector Type: PS/2
	Port Type: Mouse Port

Port Connector Information
	Internal Reference Designator: USB1
	Internal Connector Type: None
	External Reference Designator: Not Specified
	External Connector Type: Access Bus (USB)
	Port Type: USB

Port Connector Information
	Internal Reference Designator: USB2
	Internal Connector Type: None
	External Reference Designator: Not Specified
	External Connector Type: Access Bus (USB)
	Port Type: USB

Port Connector Information
	Internal Reference Designator: USB3
	Internal Connector Type: None
	External Reference Designator: Not Specified
	External Connector Type: Access Bus (USB)
	Port Type: USB

Port Connector Information
	Internal Reference Designator: USB4
	Internal Connector Type: None
	External Reference Designator: Not Specified
	External Connector Type: Access Bus (USB)
	Port Type: USB

Port Connector Information
	Internal Reference Designator: USB5
	Internal Connector Type: None
	External Reference Designator: Not Specified
	External Connector Type: Access Bus (USB)
	Port Type: USB

Port Connector Information
	Internal Reference Designator: USB6
	Internal Connector Type: None
	External Reference Designator: Not Specified
	External Connector Type: Access Bus (USB)
	Port Type: USB

Port Connector Information
	Internal Reference Designator: USB7
	Internal Connector Type: None
	External Reference Designator: Not Specified
	External Connector Type: Access Bus (USB)
	Port Type: USB

Port Connector Information
	Internal Reference Designator: USB8
	Internal Connector Type: None
	External Reference Designator: Not Specified
	External Connector Type: Access Bus (USB)
	Port Type: USB

Port Connector Information
	Internal Reference Designator: ENET
	Internal Connector Type: None
	External Reference Designator: Not Specified
	External Connector Type: RJ-45
	Port Type: Network Port

Port Connector Information
	Internal Reference Designator: MIC
	Internal Connector Type: None
	External Reference Designator: Not Specified
	External Connector Type: Mini Jack (headphones)
	Port Type: Audio Port

Port Connector Information
	Internal Reference Designator: LINE-OUT
	Internal Connector Type: None
	External Reference Designator: Not Specified
	External Connector Type: Mini Jack (headphones)
	Port Type: Audio Port

Port Connector Information
	Internal Reference Designator: LINE-IN
	Internal Connector Type: None
	External Reference Designator: Not Specified
	External Connector Type: Mini Jack (headphones)
	Port Type: Audio Port

Port Connector Information
	Internal Reference Designator: HP-OUT
	Internal Connector Type: None
	External Reference Designator: Not Specified
	External Connector Type: Mini Jack (headphones)
	Port Type: Audio Port

System Slot Information
	Designation: PCI1
	Type: 32-bit PCI
	Current Usage: Available
	Length: Long
	ID: 1
	Characteristics:
		5.0 V is provided
		3.3 V is provided
		PME signal is supported

System Slot Information
	Designation: PCI2
	Type: 32-bit PCI
	Current Usage: Available
	Length: Long
	ID: 2
	Characteristics:
		5.0 V is provided
		3.3 V is provided
		PME signal is supported

System Slot Information
	Designation: PCI3
	Type: 32-bit PCI
	Current Usage: Available
	Length: Long
	ID: 3
	Characteristics:
		5.0 V is provided
		3.3 V is provided
		PME signal is supported

System Slot Information
	Designation: PCI4
	Type: 32-bit PCI
	Current Usage: Available
	Length: Long
	ID: 4
	Characteristics:
		5.0 V is provided
		3.3 V is provided
		PME signal is supported

System Slot Information
	Designation: AGP1
	Type: 32-bit AGP 8x
	Current Usage: In Use
	Length: Long
	ID: 0
	Characteristics:
		3.3 V is provided
		PME signal is supported

On Board Device Information
	Type: Ethernet
	Status: Enabled
	Description: Intel Pro 1000 MT Network Connection

On Board Device Information
	Type: Sound
	Status: Enabled
	Description: AC'97 Audio Controller

OEM Strings
	String 1: www.dell.com

BIOS Language Information
	Installable Languages: 1
		en|US|iso8859-1
	Currently Installed Language: en|US|iso8859-1

System Event Log
	Area Length: 2049 bytes
	Header Start Offset: 0x0000
	Header Length: 16 bytes
	Data Start Offset: 0x0010
	Access Method: Memory-mapped physical 32-bit address
	Access Address: 0xFFF82000
	Status: Valid, Not Full
	Change Token: 0x0000003F
	Header Format: Type 1
	Supported Log Type Descriptors: 4
	Descriptor 1: POST error
	Data Format 1: POST results bitmap
	Descriptor 2: System limit exceeded
	Data Format 2: System management
	Descriptor 3: Log area reset/cleared
	Data Format 3: None
	Descriptor 4: Multi-bit ECC memory error
	Data Format 4: Handle

Physical Memory Array
	Location: System Board Or Motherboard
	Use: System Memory
	Error Correction Type: Single-bit ECC
	Maximum Capacity: 4 GB
	Number Of Devices: 4

Memory Device
	Total Width: 64 bits
	Data Width: 64 bits
	Size: 512 MB
	Form Factor: DIMM
	Set: None
	Locator: CHANNEL A DIMM 0
	Bank Locator: Not Specified
	Type: SDRAM
	Type Detail: Synchronous
	Speed: 333 MHz (3.0 ns)

Memory Device
	Total Width: 64 bits
	Data Width: 64 bits
	Size: 512 MB
	Form Factor: DIMM
	Set: None
	Locator: CHANNEL B DIMM 0
	Bank Locator: Not Specified
	Type: SDRAM
	Type Detail: Synchronous
	Speed: 333 MHz (3.0 ns)

Memory Device
	Total Width: 64 bits
	Data Width: 64 bits
	Size: No Module Installed
	Form Factor: DIMM
	Set: None
	Locator: CHANNEL A DIMM 1
	Bank Locator: Not Specified
	Type: SDRAM
	Type Detail: Synchronous
	Speed: 333 MHz (3.0 ns)

Memory Device
	Total Width: 64 bits
	Data Width: 64 bits
	Size: No Module Installed
	Form Factor: DIMM
	Set: None
	Locator: CHANNEL B DIMM 1
	Bank Locator: Not Specified
	Type: SDRAM
	Type Detail: Synchronous
	Speed: 333 MHz (3.0 ns)

Memory Array Mapped Address
	Starting Address: 0x00000000000
	Ending Address: 0x0003FFFFFFF
	Range Size: 1 GB
	Partition Width: 0

Memory Device Mapped Address
	Starting Address: 0x00000000000
	Ending Address: 0x0001FFFFFFF
	Range Size: 512 MB
	Partition Row Position: 1

Memory Device Mapped Address
	Starting Address: 0x00020000000
	Ending Address: 0x0003FFFFFFF
	Range Size: 512 MB
	Partition Row Position: 1

Hardware Security
	Power-On Password Status: Enabled
	Keyboard Password Status: Not Implemented
	Administrator Password Status: Enabled
	Front Panel Reset Status: Not Implemented

	System Power Controls
	Next Scheduled Power-on: *-* 00:00:00

Voltage Probe
	Description: +1.5V
	Location: Motherboard
	Status: OK
	Maximum Value: 3.327 V
	Minimum Value: 0.003 V
	Resolution: 12.9 mV
	Tolerance: Unknown
	Accuracy: 2.00%
	OEM-specific Information: 0x0000DC00

Voltage Probe
	Description: CPU Voltage
	Location: Motherboard
	Status: OK
	Maximum Value: 2.997 V
	Minimum Value: 0.003 V
	Resolution: 11.4 mV
	Tolerance: Unknown
	Accuracy: 2.00%
	OEM-specific Information: 0x0000DC01

Voltage Probe
	Description: +3.3V Aux
	Location: Motherboard
	Status: OK
	Maximum Value: 4.396 V
	Minimum Value: 0.004 V
	Resolution: 17.1 mV
	Tolerance: Unknown
	Accuracy: 2.00%
	OEM-specific Information: 0x0000DC02

Voltage Probe
	Description: +5V
	Location: Motherboard
	Status: OK
	Maximum Value: 6.663 V
	Minimum Value: 0.007 V
	Resolution: 26.0 mV
	Tolerance: Unknown
	Accuracy: 2.00%
	OEM-specific Information: 0x0000DC03

Voltage Probe
	Description: +12V
	Location: Motherboard
	Status: OK
	Maximum Value: 15.984 V
	Minimum Value: 0.016 V
	Resolution: 60.0 mV
	Tolerance: Unknown
	Accuracy: 2.00%
	OEM-specific Information: 0x0000DC04

Cooling Device
	Type: Fan
	Status: OK
	OEM-specific Information: 0x0000DD05

Temperature Probe
	Description: CPU0
	Location: Processor
	Status: OK
	Maximum Value: 127.0 deg C
	Minimum Value -127.0 deg C
	Resolution: 1.000 deg C
	Tolerance: Unknown
	Accuracy: Unknown
	OEM-specific Information: 0x0000DC11

Temperature Probe
	Description: System Board
	Location: Motherboard
	Status: OK
	Maximum Value: 127.0 deg C
	Minimum Value -127.0 deg C
	Resolution: 1.000 deg C
	Tolerance: Unknown
	Accuracy: Unknown
	OEM-specific Information: 0x0000DC15

Boot Integrity Services Entry Point

System Boot Information
	Status: No errors detected
1

Fingerprint authentication in Ubuntu

It seems more and more laptops come equipped with fingerprint readers lately. If you want to see support for such readers officially rolled into Ubuntu 8.10 by all means click on that mean Brainstorm logo! Update: it seems the Brainstorm voting has closed, however the discussion that entry has about security is worth checking.

I recently got an HP Pavillion xt1000 series with such hardware and while researching its fingerprint support I came across Fprint.

From the project site:

The fprint project aims to plug a gap in the Linux desktop: support for consumer fingerprint reader devices.

Previously, Linux support for such devices has been scattered amongst different projects (many incomplete) and inconsistent in that application developers would have to implement support for each type of fingerprint reader separately.

The provided packages are:

  • libpam-fprint – PAM module allowing authentication (login, sudo, etc.) via fprint
  • libfprint-dev – fingerprint library of fprint project, development headers
  • libfprint0 – fingerprint library of fprint project, which allows using the fingerprint reader found of many of the more decent notebooks
  • fprint-demo – fingerprint scan and verification graphic utility

The packages that enable fprint functionality in Ubuntu are provided by Pavel Rojtberg, I’d like to invite anyone with fingerprint readers to try them. If you find any bugs I think they can be sent to the project’s mailing list, I couldn’t find an obvious link to any open bug trackers. Oh, and don’t miss the FAQ!

There is a lenghty discussion and interesting information on Pavel’s site. I contacted him personally and he setup a Personal Package Archive (PPA) to build the Ubuntu packages very quickly! Thanks for you work, Pavel! All the development work the Fprint project has achieved is made available very easily to us Ubuntu users via the PPA service in Launchpad. This will not make it in any official Ubuntu repositories just yet, but it’s very promising so far. Above all it should not be considered a replacement for other standard authentication and security measures. 🙂

libpam-fprint + libfprint + fprint-demo packages for Ubuntu 7.10 are available as an archive at:
http://madman2k.net/files/fprint-packages.tar

Hardy Packages are available in this PPA:
deb http://ppa.launchpad.net/madman2k/ubuntu hardy main restricted universe multiverse
(add that line to your /etc/apt/sources.list file and update your repositories: sudo apt-get update from comand line or just use Synaptic.

For other distributions see: http://www.reactivated.net/fprint/wiki/Download

ScreenshotFPThe fprint-demo package provides a graphical application to enroll fingerprints and set different options. After installing that package, fprint-demo can be invoked from command line only (no menu entry yet) by issuing this command (notice the underscore instead of hyphen):
sudo fprint_demo

In order to enable fprint authentication on Ubuntu install the libpam and libfprint packages and then edit your /etc/pam.d/common-auth so it contains

auth sufficient pam_fprint.so
auth required pam_unix.so nullok_secure

At your next login attempt or sudo command from terminal, this will first try to read your fingerprint before asking your password. For testing purposes, you can expire the sudo passowrd caching by issuing « sudo -k ». Do not try to disable password login completely; this is alpha software and you might lock out yourself.

Example of command-line fingerprint enrollment:
sudo pam_fprint_enroll --enroll-finger 7

For more information regarding the current (under consideration) integration of fingerprint readers support in Ubuntu, see:
https://bugs.edge.launchpad.net/ubuntu/+source/pam/+bug/187130

 

New extensions for Ogg Vorbis audio (.oga) and Ogg Theora video (.ogv) files

Apparently Corey was right all along.

I found about this via Ogg’s entry in Wikipedia. So I did the sensible thing. 🙂

Ahhh… that felt good.

Now, can someone with proper access in Launchpad make that « Confirmed, Critical, Hardy Milestone »… or whatever you deem more appropriate 😀

 

Ubuntu Hardy gets Brother printers drivers

Well, it seems Brother printer drivers will make it into Hardy (Ubuntu 8.04, coming up next month), under GPL and Brother Software Open License Agreement – all driven by the community and with some help from Canonical.

Although I’d rather have 100% free Brother printer drivers, it’s still nice Brother has made their license clear about what can be done with their drivers, effectively opening the door to packaging by anyone:

This Agreement provides terms and conditions for license grant from Brother Industries, Ltd (« Broher »). Brother, who owns all copyrights to the software that is distributed with this Agreement (« Software ») to recipients thereof (« User »), for use of the Software. User shall have the right to use the Software only in accordance with the terms and conditions of this Agreement. Any use by User of the Software shall be deemed as its agreement hereto.
Note:

Please click on « I Accept » while holding down « Shift » or right click on « I Accept » and select « Save Target As,,, » from the menu.

Brother retains any and all copyrights to the Software. In no case this Agreement shall be construed to assign or otherwise transfer from Brother to User any copyrights or other intellectual property rights to whole or any part of the Software.

Brother grants User a non-exclusive license: to reproduce and/or distribute (via Internet or in any other manner) the Software. Further, Brother grants User a non-exclusive license to modify, alter, translate or otherwise prepare derivative works of the Software and to reproduce and distribute (via Internet or in any other manner) such modification, alteration, translation or other derivative works for any purpose.

Even nicer is actually seeing the first mention of these drivers a bit over two years ago and the path and work leading to its final packaging and testing just hours ago by many community people and even Canonical through the bug report on Launchpad and a corresponding wiki page.

I hope this raises the importance of supporting Linux properly for Brother and, who knows, perhaps they will be more visible for scanner and PC to Fax support in Ubuntu (and generally, Linux) in the near future. I would bet increasing Ubuntu + Brother customers would already justify this.

I do own an MFC model at home and it makes me think of the same comparisons I hear about the  » readiness of the Linux Desktop « . Compare this to all Hewlett-Packard does to support its printers under Linux, there still is a lot to do before both can be compared on equal grounds. Or is it ?