From 66b79a70bb70b95f335c7773625c706ce89a5943 Mon Sep 17 00:00:00 2001 From: Xiangfu Liu Date: Mon, 7 Feb 2011 11:56:48 +0800 Subject: [PATCH] move those files to nanonote-files package --- data/qi_lb60/files/etc/asound.state | 69 --- data/qi_lb60/files/etc/directfbrc | 7 - data/qi_lb60/files/etc/fw_env.config | 11 - .../etc/triggerhappy/triggers.d/poweroff.conf | 13 - .../01-optimization-for-ben-nanonote | 5 - data/qi_lb60/files/root/.mplayer/config | 5 - data/qi_lb60/files/root/.netsurf/Choices-fb | 6 - data/qi_lb60/files/root/.tclshrc | 546 ------------------ data/qi_lb60/files/root/.vimrc | 2 - data/qi_lb60/files/usr/bin/fw_setenv_default | 13 - data/qi_lb60/files/usr/lib/tcl8.5/init.tcl | 1 - data/qi_lb60/files/usr/share/qmaps/ben.qmap | Bin 10312 -> 0 bytes 12 files changed, 678 deletions(-) delete mode 100644 data/qi_lb60/files/etc/asound.state delete mode 100644 data/qi_lb60/files/etc/directfbrc delete mode 100644 data/qi_lb60/files/etc/fw_env.config delete mode 100755 data/qi_lb60/files/etc/triggerhappy/triggers.d/poweroff.conf delete mode 100644 data/qi_lb60/files/etc/uci-defaults/01-optimization-for-ben-nanonote delete mode 100644 data/qi_lb60/files/root/.mplayer/config delete mode 100644 data/qi_lb60/files/root/.netsurf/Choices-fb delete mode 100644 data/qi_lb60/files/root/.tclshrc delete mode 100644 data/qi_lb60/files/root/.vimrc delete mode 100755 data/qi_lb60/files/usr/bin/fw_setenv_default delete mode 100644 data/qi_lb60/files/usr/lib/tcl8.5/init.tcl delete mode 100644 data/qi_lb60/files/usr/share/qmaps/ben.qmap diff --git a/data/qi_lb60/files/etc/asound.state b/data/qi_lb60/files/etc/asound.state deleted file mode 100644 index f727b09f3..000000000 --- a/data/qi_lb60/files/etc/asound.state +++ /dev/null @@ -1,69 +0,0 @@ -state.LB60 { - control.1 { - comment.access 'read write' - comment.type INTEGER - comment.count 1 - comment.range '0 - 3' - iface MIXER - name 'Master Playback Volume' - value 2 - } - control.2 { - comment.access 'read write' - comment.type INTEGER - comment.count 1 - comment.range '0 - 31' - iface MIXER - name 'Capture Volume' - value 23 - } - control.3 { - comment.access 'read write' - comment.type BOOLEAN - comment.count 1 - iface MIXER - name 'Master Playback Switch' - value true - } - control.4 { - comment.access 'read write' - comment.type INTEGER - comment.count 1 - comment.range '0 - 3' - iface MIXER - name 'Mic Capture Volume' - value 0 - } - control.5 { - comment.access 'read write' - comment.type BOOLEAN - comment.count 1 - iface MIXER - name 'Line Capture Switch' - value false - } - control.6 { - comment.access 'read write' - comment.type BOOLEAN - comment.count 1 - iface MIXER - name 'Mic Capture Switch' - value false - } - control.7 { - comment.access 'read write' - comment.type BOOLEAN - comment.count 1 - iface MIXER - name 'Output Mixer Bypass Switch' - value false - } - control.8 { - comment.access 'read write' - comment.type BOOLEAN - comment.count 1 - iface MIXER - name 'Output Mixer DAC Switch' - value true - } -} diff --git a/data/qi_lb60/files/etc/directfbrc b/data/qi_lb60/files/etc/directfbrc deleted file mode 100644 index f3178810a..000000000 --- a/data/qi_lb60/files/etc/directfbrc +++ /dev/null @@ -1,7 +0,0 @@ -no-deinit-check - -mode=320x240 - -# log-file=/root/.directfb.log -# no-cursor -# debug diff --git a/data/qi_lb60/files/etc/fw_env.config b/data/qi_lb60/files/etc/fw_env.config deleted file mode 100644 index 328a16cd3..000000000 --- a/data/qi_lb60/files/etc/fw_env.config +++ /dev/null @@ -1,11 +0,0 @@ -# Configuration file for fw_(printenv/saveenv) utility. -# Up to two entries are valid, in this case the redundant -# environment sector is assumed present. -# Notice, that the "Number of sectors" is ignored on NOR. - -# MTD device name Device offset Env. size Flash sector size Number of sectors -/dev/mtd0 0x100000 0x1000 0x80000 -/dev/mtd0 0x180000 0x1000 0x80000 - -# NAND example -#/dev/mtd0 0x4000 0x4000 0x20000 2 diff --git a/data/qi_lb60/files/etc/triggerhappy/triggers.d/poweroff.conf b/data/qi_lb60/files/etc/triggerhappy/triggers.d/poweroff.conf deleted file mode 100755 index 3e2648a16..000000000 --- a/data/qi_lb60/files/etc/triggerhappy/triggers.d/poweroff.conf +++ /dev/null @@ -1,13 +0,0 @@ -# This is an example configuration for the triggerhappy daemon (thd) -# please note that every file to be processed must end in ".conf" -# -# To view a list of supported event codes, use "thd --listevents" or -# "thd --dump /dev/input/event*" -# -# Format: -# -# -# values for key events are 1 (pressed), 0 (released) or 2 (held) -# -## control an mpd instance -KEY_POWER 1 /sbin/poweroff diff --git a/data/qi_lb60/files/etc/uci-defaults/01-optimization-for-ben-nanonote b/data/qi_lb60/files/etc/uci-defaults/01-optimization-for-ben-nanonote deleted file mode 100644 index 237668a6c..000000000 --- a/data/qi_lb60/files/etc/uci-defaults/01-optimization-for-ben-nanonote +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh - -/etc/init.d/atd disable -/etc/init.d/led disable -/etc/init.d/telnet disable diff --git a/data/qi_lb60/files/root/.mplayer/config b/data/qi_lb60/files/root/.mplayer/config deleted file mode 100644 index 9bb8b6ac3..000000000 --- a/data/qi_lb60/files/root/.mplayer/config +++ /dev/null @@ -1,5 +0,0 @@ -sub-fuzziness=1 -utf8=1 -volume=10 -vo=sdl -ac=tremor diff --git a/data/qi_lb60/files/root/.netsurf/Choices-fb b/data/qi_lb60/files/root/.netsurf/Choices-fb deleted file mode 100644 index 23660066a..000000000 --- a/data/qi_lb60/files/root/.netsurf/Choices-fb +++ /dev/null @@ -1,6 +0,0 @@ -fb_input_devpath:/dev/input -fb_input_glob:event* -window_width:320 -window_height:240 -fb_depth:32 -fb_toolbar_layout:cblfsrut diff --git a/data/qi_lb60/files/root/.tclshrc b/data/qi_lb60/files/root/.tclshrc deleted file mode 100644 index fcbf50186..000000000 --- a/data/qi_lb60/files/root/.tclshrc +++ /dev/null @@ -1,546 +0,0 @@ -global tcl_interactive -if {[info exists tcl_interactive] && $tcl_interactive > 0} { - -# ripped from http://wiki.tcl.tk/16139 - -foreach {var val} { - PROMPT {tclsh$::tcl_patchLevel> } - HISTORY "" - HISTORY_BUFFER 500 - COMPLETION_MATCH "" -} { - if {![info exists env($var)]} { - set env($var) $val - } -} -foreach {var val} { - CMDLINE "" - CMDLINE_CURSOR 0 - CMDLINE_LINES 0 - HISTORY_LEVEL -1 -} { - set env($var) $val -} -unset var val - -set forever 0 - -# Resource & history files: -set HISTFILE $env(HOME)/.tclsh_history - -proc ESC {} { - return "\033" -} - -proc readbuf {txt} { - upvar 1 $txt STRING - - set ret [string index $STRING 0] - set STRING [string range $STRING 1 end] - return $ret -} - -proc goto {row {col 1}} { - switch -- $row { - "home" {set row 1} - } - print "[ESC]\[${row};${col}H" nowait -} - -proc gotocol {col} { - print "\r" nowait - if {$col > 0} { - print "[ESC]\[${col}C" nowait - } -} - -proc clear {} { - print "[ESC]\[2J" nowait - goto home -} - -proc clearline {} { - print "[ESC]\[2K\r" nowait -} - -proc getColumns {} { - set cols 0 - if {![catch {exec stty -a} err]} { - regexp {rows \d+; columns (\d+)} $err -> cols - } - return $cols -} - -proc prompt {{txt ""}} { - global env - - set prompt [subst $env(PROMPT)] - set txt "$prompt$txt" - foreach {end mid} $env(CMDLINE_LINES) break - - # Calculate how many extra lines we need to display. - # Also calculate cursor position: - set n -1 - set totalLen 0 - set cursorLen [expr {$env(CMDLINE_CURSOR)+[string length $prompt]}] - set row 0 - set col 0 - - # Render output line-by-line to $out then copy back to $txt: - set found 0 - set out [list] - foreach line [split $txt "\n"] { - set len [expr {[string length $line]+1}] - incr totalLen $len - if {$found == 0 && $totalLen >= $cursorLen} { - set cursorLen [expr {$cursorLen - ($totalLen - $len)}] - set col [expr {$cursorLen % $env(COLUMNS)}] - set row [expr {$n + ($cursorLen / $env(COLUMNS)) + 1}] - - if {$cursorLen >= $len} { - set col 0 - incr row - } - set found 1 - } - incr n [expr {int(ceil(double($len)/$env(COLUMNS)))}] - while {$len > 0} { - lappend out [string range $line 0 [expr {$env(COLUMNS)-1}]] - set line [string range $line $env(COLUMNS) end] - set len [expr {$len-$env(COLUMNS)}] - } - } - set txt [join $out "\n"] - set row [expr {$n-$row}] - - # Reserve spaces for display: - if {$end} { - if {$mid} { - print "[ESC]\[${mid}B" nowait - } - for {set x 0} {$x < $end} {incr x} { - clearline - print "[ESC]\[1A" nowait - } - } - clearline - set env(CMDLINE_LINES) $n - - # Output line(s): - print "\r$txt" - - if {$row} { - print "[ESC]\[${row}A" nowait - } - gotocol $col - lappend env(CMDLINE_LINES) $row -} - -proc print {txt {wait wait}} { - # Sends output to stdout chunks at a time. - # This is to prevent the terminal from - # hanging if we output too much: - while {[string length $txt]} { - puts -nonewline [string range $txt 0 2047] - set txt [string range $txt 2048 end] - if {$wait == "wait"} { - after 1 - } - } -} - -################################ -# Key bindings -################################ -proc handleEscapes {} { - global env - upvar 1 keybuffer keybuffer - set seq "" - set found 0 - while {[set ch [readbuf keybuffer]] != ""} { - append seq $ch - - switch -exact -- $seq { - "\[A" { ;# Cursor Up (cuu1,up) - handleHistory 1 - set found 1; break - } - "\[B" { ;# Cursor Down - handleHistory -1 - set found 1; break - } - "\[C" { ;# Cursor Right (cuf1,nd) - if {$env(CMDLINE_CURSOR) < [string length $env(CMDLINE)]} { - incr env(CMDLINE_CURSOR) - } - set found 1; break - } - "\[D" { ;# Cursor Left - if {$env(CMDLINE_CURSOR) > 0} { - incr env(CMDLINE_CURSOR) -1 - } - set found 1; break - } - "\[H" - - "\[7~" - - "\[1~" { ;# home - set env(CMDLINE_CURSOR) 0 - set found 1; break - } - "\[3~" { ;# delete - if {$env(CMDLINE_CURSOR) < [string length $env(CMDLINE)]} { - set env(CMDLINE) [string replace $env(CMDLINE) \ - $env(CMDLINE_CURSOR) $env(CMDLINE_CURSOR)] - } - set found 1; break - } - "\[F" - - "\[K" - - "\[8~" - - "\[4~" { ;# end - set env(CMDLINE_CURSOR) [string length $env(CMDLINE)] - set found 1; break - } - "\[5~" { ;# Page Up } - "\[6~" { ;# Page Down } - } - } - return $found -} - -proc handleControls {} { - global env - upvar 1 char char - upvar 1 keybuffer keybuffer - - # Control chars start at a == \u0001 and count up. - switch -exact -- $char { - \u0004 { ;# ^d - if { $env(CMDLINE_CURSOR) <= 0 } { - print "exit\n" nowait - doExit - } - } - \u0003 { ;# ^c - print "^C\n" nowait - doExit - } - \u0008 - - \u007f { ;# ^h && backspace ? - if {$env(CMDLINE_CURSOR) > 0} { - incr env(CMDLINE_CURSOR) -1 - set env(CMDLINE) [string replace $env(CMDLINE) \ - $env(CMDLINE_CURSOR) $env(CMDLINE_CURSOR)] - } - } - \u001b { ;# ESC - handle escape sequences - handleEscapes - } - } - # Rate limiter: - set keybuffer "" -} - -proc shortMatch {maybe} { - # Find the shortest matching substring: - set maybe [lsort $maybe] - set shortest [lindex $maybe 0] - foreach x $maybe { - while {![string match $shortest* $x]} { - set shortest [string range $shortest 0 end-1] - } - } - return $shortest -} - -proc handleCompletion {} { - global env - set vars "" - set cmds "" - - # First find out what kind of word we need to complete: - set wordstart [string last " " $env(CMDLINE) \ - [expr {$env(CMDLINE_CURSOR)-1}]] - incr wordstart - set wordend [string first " " $env(CMDLINE) $wordstart] - if {$wordend == -1} { - set wordend end - } else { - incr wordend -1 - } - set word [string range $env(CMDLINE) $wordstart $wordend] - - if {[string trim $word] == ""} return - - set firstchar [string index $word 0] - - # Check if word is a variable: - if {$firstchar == "\$"} { - set word [string range $word 1 end] - incr wordstart - - # Check if it is an array key: - set x [string first "(" $word] - if {$x != -1} { - set v [string range $word 0 [expr {$x-1}]] - incr x - set word [string range $word $x end] - incr wordstart $x - if {[uplevel #0 "array exists $v"]} { - set vars [uplevel #0 "array names $v $word*"] - } - } else { - foreach x [uplevel #0 {info vars}] { - if {[string match $word* $x]} { - lappend vars $x - } - } - } - } else { - if {$firstchar == "\[" || $wordstart == 0} { - if {$firstchar == "\["} { - set word [string range $word 1 end] - incr wordstart - } - # Check commands: - foreach x [info commands] { - if {[string match $word* $x]} { - lappend cmds $x - } - } - } else { - # Check commands anyway: - foreach x [info commands] { - if {[string match $word* $x]} { - lappend cmds $x - } - } - } - if {$wordstart != 0} { - # Check variables anyway: - set x [string first "(" $word] - if {$x != -1} { - set v [string range $word 0 [expr {$x-1}]] - incr x - set word [string range $word $x end] - incr wordstart $x - if {[uplevel #0 "array exists $v"]} { - set vars [uplevel #0 "array names $v $word*"] - } - } else { - foreach x [uplevel #0 {info vars}] { - if {[string match $word* $x]} { - lappend vars $x - } - } - } - } - } - - set maybe [concat $vars $cmds] - set shortest [shortMatch $maybe] - if {"$word" == "$shortest"} { - if {[llength $maybe] > 1 && $env(COMPLETION_MATCH) != $maybe} { - set env(COMPLETION_MATCH) $maybe - clearline - set temp "" - foreach {match format} { - vars "35" - cmds "1;32" - } { - if {[llength $match]} { - append temp "[ESC]\[${format}m" - foreach x [set $match] { - append temp "[file tail $x] " - } - append temp "[ESC]\[0m" - } - } - print "\n$temp\n" - } - } -} - -proc handleHistory {x} { - global env - - set hlen [llength $env(HISTORY)] - incr env(HISTORY_LEVEL) $x - if {$env(HISTORY_LEVEL) > -1} { - set env(CMDLINE) [lindex $env(HISTORY) end-$env(HISTORY_LEVEL)] - set env(CMDLINE_CURSOR) [string length $env(CMDLINE)] - } - if {$env(HISTORY_LEVEL) <= -1} { - set env(HISTORY_LEVEL) -1 - set env(CMDLINE) "" - set env(CMDLINE_CURSOR) 0 - } elseif {$env(HISTORY_LEVEL) > $hlen} { - set env(HISTORY_LEVEL) $hlen - } -} - -################################ -# History handling functions -################################ - -proc getHistory {} { - global env - return $env(HISTORY) -} - -proc setHistory {hlist} { - global env - set env(HISTORY) $hlist -} - -proc appendHistory {cmdline} { - global env - set old [lsearch -exact $env(HISTORY) $cmdline] - if {$old != -1} { - set env(HISTORY) [lreplace $env(HISTORY) $old $old] - } - lappend env(HISTORY) $cmdline - set env(HISTORY) \ - [lrange $env(HISTORY) end-$env(HISTORY_BUFFER) end] -} - -################################ -# main() -################################ - -proc rawInput {} { - fconfigure stdin -buffering none -blocking 0 - fconfigure stdout -buffering none -translation crlf - exec stty raw -echo -} - -proc lineInput {} { - fconfigure stdin -buffering line -blocking 1 - fconfigure stdout -buffering line - exec stty -raw echo -} - -proc doExit {{code 0}} { - global env HISTFILE - - # Reset terminal: -# print "[ESC]c[ESC]\[2J" nowait - lineInput - - set hlist [getHistory] - if {[llength $hlist] > 0} { - set f [open $HISTFILE w] - foreach x $hlist { - # Escape newlines: - puts $f [string map { - \n "\\n" - "\\" "\\b" - } $x] - } - close $f - } - - ___exit $code -} - -# Load history if available: -if {[llength $env(HISTORY)] == 0} { - if {[file exists $HISTFILE]} { - set f [open $HISTFILE r] - set hlist [list] - foreach x [split [read $f] "\n"] { - if {$x != ""} { - # Undo newline escapes: - lappend hlist [string map { - "\\n" \n - "\\\\" "\\" - "\\b" "\\" - } $x] - } - } - setHistory $hlist - unset hlist - close $f - } -} - -rawInput - -rename exit ___exit -proc exit args doExit - -proc tclline {} { - global env - set char "" - set keybuffer [read stdin] - set env(COLUMNS) [getColumns] - - while {$keybuffer != ""} { - if {[eof stdin]} return - set char [readbuf keybuffer] - if {$char == ""} { - # Sleep for a bit to reduce CPU time: - after 40 - continue - } - - if {[string is print $char]} { - set x $env(CMDLINE_CURSOR) - - if {$x < 1 && [string trim $char] == ""} continue - - set trailing [string range $env(CMDLINE) $x end] - set env(CMDLINE) [string replace $env(CMDLINE) $x end] - append env(CMDLINE) $char - append env(CMDLINE) $trailing - incr env(CMDLINE_CURSOR) - } elseif {$char == "\t"} { - handleCompletion - } elseif {$char == "\n" || $char == "\r"} { - if {[info complete $env(CMDLINE)] && - [string index $env(CMDLINE) end] != "\\"} { - lineInput - print "\n" nowait - uplevel #0 { - global env - - # Run the command: - if { [catch $env(CMDLINE) res] } { - print "[ESC]\[1;31m\[[ESC]\[0;31mError[ESC]\[1;31m\][ESC]\[0m " - } - if {$res != ""} { - print "$res\n" - } - - # Append HISTORY: - set env(HISTORY_LEVEL) -1 - appendHistory $env(CMDLINE) - - set env(CMDLINE) "" - set env(CMDLINE_CURSOR) 0 - set env(CMDLINE_LINES) {0 0} - } - rawInput - } else { - set x $env(CMDLINE_CURSOR) - - if {$x < 1 && [string trim $char] == ""} continue - - set trailing [string range $env(CMDLINE) $x end] - set env(CMDLINE) [string replace $env(CMDLINE) $x end] - append env(CMDLINE) $char - append env(CMDLINE) $trailing - incr env(CMDLINE_CURSOR) - } - } else { - handleControls - } - } - prompt $env(CMDLINE) -} -tclline - -fileevent stdin readable tclline -vwait forever -doExit -} diff --git a/data/qi_lb60/files/root/.vimrc b/data/qi_lb60/files/root/.vimrc deleted file mode 100644 index eeb1bf201..000000000 --- a/data/qi_lb60/files/root/.vimrc +++ /dev/null @@ -1,2 +0,0 @@ -set encoding=utf-8 -set term=xterm diff --git a/data/qi_lb60/files/usr/bin/fw_setenv_default b/data/qi_lb60/files/usr/bin/fw_setenv_default deleted file mode 100755 index ebd696537..000000000 --- a/data/qi_lb60/files/usr/bin/fw_setenv_default +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh - -fw_setenv bootargs mem=32M console=tty0 console=ttyS0,57600n8 ubi.mtd=2 rootfstype=ubifs root=ubi0:rootfs rw rootwait -fw_setenv bootcmd nand read 0x80600000 0x400000 0x200000\;bootm -fw_setenv bootargsfromsd mem=32M console=tty0 console=ttyS0,57600n8 rootfstype=ext2 root=/dev/mmcblk0p1 rw rootwait -fw_setenv bootcmdfromsd mmc init\; ext2load mmc 0 0x80600000 /boot/uImage\; bootm -fw_setenv bootdelay 0 -fw_setenv baudrate 57600 -fw_setenv loads_echo 1 -fw_setenv stdin serial -fw_setenv stderr serial -fw_setenv stdout serial - diff --git a/data/qi_lb60/files/usr/lib/tcl8.5/init.tcl b/data/qi_lb60/files/usr/lib/tcl8.5/init.tcl deleted file mode 100644 index d9e8195d1..000000000 --- a/data/qi_lb60/files/usr/lib/tcl8.5/init.tcl +++ /dev/null @@ -1 +0,0 @@ -source /root/.tclshrc diff --git a/data/qi_lb60/files/usr/share/qmaps/ben.qmap b/data/qi_lb60/files/usr/share/qmaps/ben.qmap deleted file mode 100644 index 286b83727cbf7b10bc0a6c68dbcf920cc4134482..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10312 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 ef%E^^5#Pe|@OSa&NW`D;_tg0^iT}arcH#f