トップ 最新 追記

yoggy's diary

〜せかいのすみっこから〜


2009-01-08

VAIO type P

あけましておめでとうございます。今年もよろしくお願いいたします。m(_ _)m

ヨドバシにVAIO type Pが展示してあったので、ちょっと触ってみました。

3178979848_09c5c50faa_m.jpg

本体が薄いのでキーボードの打鍵感は浅め。キーの大きさ&間隔に余裕があるので、普通にタイプできてなかなかいい感じでした。 スティックポインター(ThinkPadで言うところのトラックポイント)の操作感は、ちょっと慣れが必要かな?と思いました。 あと、持った感じがかなり薄く、また重さも軽いので、普段からカバンに入れて持ち運んでもいいかな?と思わせるような雰囲気でした。

個人的には、世間一般でいうところのNetbookのデザインがもっさりしたところを、SONY風にズバッと洗練させましたという印象を受けました。

ちょっとこれは久しぶりに物欲が…


2009-01-13

RubyでSOCKS4のサンプル

SOCKS4のプロトコルを知るために、試しに簡単なSOCKS4サーバを作ってみたのでメモ。

CONNECTしか対応していないとか、エラー処理が超適当とかはスルーの方向でw

#!/usr/bin/ruby
#
# socks4test.rb - SOCKS4 test program
#
# see also
#   http://en.wikipedia.org/wiki/SOCKS
#   http://ftp.icm.edu.pl/packages/socks/socks4/SOCKS4.protocol
#
require 'socket'
require 'pp'

def get_dst_addr_port(data)
  port = data[2,2].unpack("n")[0]
  host = data[4,4].unpack("C4").join(".")

  if host =~ /^0\.0\.0\./
    # socks4a hostname directive
    host = data[8,data.size-8].scan(/^.*\x00(.+)\x00$/)[0][0]
  end

  [host, port]
end

svr = TCPServer.open(12345)
pp svr.addr

while true
  Thread.start(svr.accept) do |cs|
    pp cs.peeraddr

    # クライアント -> SOCKSサーバ
    # ex:
    #   04                     バージョン
    #   01                     CONNECT要求
    #   0050     80            接続先ポート番号
    #   42f95968 66.249.89.104 接続先IP
    #   4d4f5a00 M O Z null    適当な文字列(可変。0x00が来るまで)
    req = cs.sysread(1024)

    # proxy用のsocketを作る
    (host,port) = get_dst_addr_port(req)
    puts "host=#{host}, port=#{port}"

    ps = TCPSocket.open(host,port)

    # SOCKSサーバ -> クライアント
    # ex:
    #   00       とりあえず0
    #   5a       成功0x5a,失敗0x5b
    #   0000     任意の2倍バイト
    #   00000000 任意の4倍バイト
    cs.syswrite("\x00\x5a\x00\x00\x00\x00\x00\x00")

    # 後は読み込んだデータをそのまま流すだけ
    begin
      while true
        ns = select([cs, ps],nil,[cs,ps])
        next if ns == nil
        ns[0].each{|rs|
          ws = (rs == cs) ? ps : cs
          req = rs.sysread(4096)
          ws.syswrite(req)
          ws.flush
          pp req
        }
      end
    rescue Exception => e
      # raise EOFError, if socket closed.
    end
    puts "close client socket..."
    cs.close
    ps.close
  end
end

2009-01-24

VAIO type PにUbuntu 8.10をインストールしたときのメモ

久しぶりにグッときたのでVAIO type P(VGN-P70H)を1台仕入れてみました。 完全に使えるようになったわけではないのですが、せっかくなのでUbuntu 8.10をインストールしてみたときのメモを残しておきます。

3222053488_375236b606_m.jpg

インストール前の準備

  • とりあえずVistaを起動してリカバリディスク(DVD-Rで2枚)を作成。
  • 書き込みの遅いDVDドライブを使ったのが敗因か、かれこれ3時間ぐらいかかる。もうこの地点でVistaを使う気が失せる…

Ubuntu 8.10のインストール

  • CDからubuntu-ja-8.10-desktop-i386.isoのインストーラを起動。
    • がっつりVistaとかリカバリ領域を消して/dev/sda1をswap、/dev/sda2を/としてみた。
    • インストーラがext3ファイルシステムを作れないというエラーを出す。変更したパーティションをうまく認識できていない様子。
    • fdiskを手動で実行して再起動してもう一度インストーラを走らせてみたら、無事にインストーラが走り出す。
    • インストーラの最後のあたりでVAIO type Pがハングアップ。GRUBがインストールされていない状態なので、再起動しても"Operating System Not Found..."のメッセージ…
  • 気を取り直して、ubuntu-8.10-alternate-i386.isoの方でインストール
    • ちょっと時間はかかったけどすんなり終わった。はじめからこっちでインストールしておけばよかった。

インストール直後の素の状態で起動すると、こんな状態になってた。

  • X.Orgはvesaで1024x600で拡大表示されている状態。
    • このぐらいの画面サイズだと1024x600ぐらいがちょうどいいのかも。
    • でもvesaなので画面描画が遅い。
  • ホットキーは音量調整だけはできる様子。ディスプレイの明るさ調整はだめ。
    • そもそもディスプレイの明るさ調整ができない状態。
  • サウンドデバイスは認識している。普通に音は出る。
  • Wifiのドライバはath9kを使っている様子。
    • AirMac ExtremeにWPAで接続できた。
    • でもたまに接続が切れることがあり。
  • サスペンド・レジューム共にだめ。
  • CPUの速度調整は効いている様子。
  • バッテリの残り時間表時は表示できている。

いつもの環境にするために次の設定をする

  • capsキーをctrlキーに。これが設定されていない環境は軽く死ねる
  • 入力切替を半角全角キーだけに設定。ctrl+spaceは消しておかないとemacsで困る。
  • LANG=C xdg-user-dirs-gtk-updateしてフォルダの名前を英語表記に変更
  • dotfilesを別マシンから持ってきて配置
  • sudo apt-get install lv zsh screen vim
  • ちまちまFirefoxの機能拡張を入れたりしてみる

とりあえず、なんとかしたいのは次の項目。

  • GMA500向けのX.Orgの設定
  • モバイルするならサスペンドかレジュームできるように
  • 画面の明るさ設定したい。モバイルするならバッテリを節約したい

おまけでlshwの結果を貼付けておきます。

$ sudo lshw

   description: Notebook
   product: VGN-P70H_G
   vendor: Sony Corporation
   version: J003JKKE
   serial: ********-*******
   width: 32 bits
   capabilities: smbios-2.4 dmi-2.4
   configuration: boot=normal chassis=notebook uuid=********-****-****-****-************
 *-core
      description: Motherboard
      product: VAIO
      vendor: Sony Corporation
      physical id: 0
      version: N/A
      serial: N/A
    *-firmware
         description: BIOS
         vendor: INSYDE
         physical id: 0
         version: R1250U3 (12/08/2008)
         size: 1MiB
         capabilities: pci pnp upgrade shadowing cdboot bootselect edd int9keyboard int10video acpi usb smartbattery biosbootspecification netboot
    *-cpu
         description: CPU
         product: Intel(R) Atom(TM) CPU Z520   @ 1.33GHz
         vendor: Intel Corp.
         physical id: 8
         bus info: cpu@0
         version: 6.12.2
         serial: ****-****-****-****-****-****
         slot: N/A
         size: 1333MHz
         capacity: 1333MHz
         width: 32 bits
         clock: 133MHz
         capabilities: fpu fpu_exception wp vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx constant_tsc arch_perfmon pebs bts pni monitor ds_cpl vmx est tm2 ssse3 xtpr lahf_lm cpufreq
         configuration: id=0
       *-cache:0
            description: L2 cache
            physical id: 9
            slot: L2 Cache
            size: 512KiB
            capacity: 512KiB
            capabilities: synchronous internal write-back unified
       *-cache:1
            description: L1 cache
            physical id: a
            slot: L1 Cache
            size: 56KiB
            capacity: 56KiB
            capabilities: synchronous internal write-back
       *-logicalcpu:0
            description: Logical CPU
            physical id: 0.1
            width: 32 bits
            capabilities: logical
       *-logicalcpu:1
            description: Logical CPU
            physical id: 0.2
            width: 32 bits
            capabilities: logical
    *-memory
         description: System Memory
         physical id: b
         slot: System board or motherboard
         size: 2GiB
       *-bank
            description: SODIMM
            physical id: 0
            slot: Onboard
            size: 2GiB
            width: 64 bits
    *-pci
         description: Host bridge
         product: System Controller Hub (SCH Poulsbo)
         vendor: Intel Corporation
         physical id: 100
         bus info: pci@0000:00:00.0
         version: 06
         width: 32 bits
         clock: 33MHz
       *-display UNCLAIMED
            description: VGA compatible controller
            product: System Controller Hub (SCH Poulsbo) Graphics Controller
            vendor: Intel Corporation
            physical id: 2
            bus info: pci@0000:00:02.0
            version: 06
            width: 32 bits
            clock: 33MHz
            capabilities: pm msi bus_master cap_list
            configuration: latency=0
       *-multimedia
            description: Audio device
            product: System Controller Hub (SCH Poulsbo) HD Audio Controller
            vendor: Intel Corporation
            physical id: 1b
            bus info: pci@0000:00:1b.0
            version: 06
            width: 64 bits
            clock: 33MHz
            capabilities: pm pciexpress bus_master cap_list
            configuration: driver=HDA Intel latency=0 module=snd_hda_intel
       *-pci:0
            description: PCI bridge
            product: System Controller Hub (SCH Poulsbo) PCI Express Port 1
            vendor: Intel Corporation
            physical id: 1c
            bus info: pci@0000:00:1c.0
            version: 06
            width: 32 bits
            clock: 33MHz
            capabilities: pci pciexpress pm bus_master cap_list
            configuration: driver=pcieport-driver
          *-network
               description: Ethernet interface
               product: Marvell Technology Group Ltd.
               vendor: Marvell Technology Group Ltd.
               physical id: 0
               bus info: pci@0000:01:00.0
               logical name: eth0
               version: 10
               serial: 00:1d:ba:**:**:**
               capacity: 1GB/s
               width: 64 bits
               clock: 33MHz
               capabilities: pm vpd msi pciexpress bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
               configuration: autonegotiation=on broadcast=yes driver=sky2 driverversion=1.22 firmware=N/A latency=0 link=no module=sky2 multicast=yes port=twisted pair
       *-pci:1
            description: PCI bridge
            product: System Controller Hub (SCH Poulsbo) PCI Express Port 2
            vendor: Intel Corporation
            physical id: 1c.1
            bus info: pci@0000:00:1c.1
            version: 06
            width: 32 bits
            clock: 33MHz
            capabilities: pci pciexpress pm bus_master cap_list
            configuration: driver=pcieport-driver
          *-network
               description: Wireless interface
               product: AR928X Wireless Network Adapter (PCI-Express)
               vendor: Atheros Communications Inc.
               physical id: 0
               bus info: pci@0000:02:00.0
               logical name: wmaster0
               version: 01
               serial: 00:23:4d:**:**:**
               width: 64 bits
               clock: 33MHz
               capabilities: pm msi pciexpress msix bus_master cap_list logical ethernet physical wireless
               configuration: broadcast=yes driver=ath9k ip=***.***.***.*** latency=0 module=ath9k multicast=yes wireless=IEEE 802.11bgn
       *-usb:0
            description: USB Controller
            product: System Controller Hub (SCH Poulsbo) USB UHCI #1
            vendor: Intel Corporation
            physical id: 1d
            bus info: pci@0000:00:1d.0
            version: 06
            width: 32 bits
            clock: 33MHz
            capabilities: bus_master
            configuration: driver=uhci_hcd latency=0 module=uhci_hcd
       *-usb:1
            description: USB Controller
            product: System Controller Hub (SCH Poulsbo) USB UHCI #2
            vendor: Intel Corporation
            physical id: 1d.1
            bus info: pci@0000:00:1d.1
            version: 06
            width: 32 bits
            clock: 33MHz
            capabilities: bus_master
            configuration: driver=uhci_hcd latency=0 module=uhci_hcd
       *-usb:2
            description: USB Controller
            product: System Controller Hub (SCH Poulsbo) USB UHCI #3
            vendor: Intel Corporation
            physical id: 1d.2
            bus info: pci@0000:00:1d.2
            version: 06
            width: 32 bits
            clock: 33MHz
            capabilities: bus_master
            configuration: driver=uhci_hcd latency=0 module=uhci_hcd
       *-usb:3
            description: USB Controller
            product: System Controller Hub (SCH Poulsbo) USB EHCI #1
            vendor: Intel Corporation
            physical id: 1d.7
            bus info: pci@0000:00:1d.7
            version: 06
            width: 32 bits
            clock: 33MHz
            capabilities: pm debug bus_master cap_list
            configuration: driver=ehci_hcd latency=0 module=ehci_hcd
       *-isa
            description: ISA bridge
            product: System Controller Hub (SCH Poulsbo) LPC Bridge
            vendor: Intel Corporation
            physical id: 1f
            bus info: pci@0000:00:1f.0
            version: 06
            width: 32 bits
            clock: 33MHz
            capabilities: isa
            configuration: driver=isch_smbus latency=0 module=i2c_isch
       *-ide
            description: IDE interface
            product: System Controller Hub (SCH Poulsbo) IDE Controller
            vendor: Intel Corporation
            physical id: 1f.1
            bus info: pci@0000:00:1f.1
            logical name: scsi0
            version: 06
            width: 32 bits
            clock: 33MHz
            capabilities: ide bus_master emulated
            configuration: driver=pata_sch latency=0 module=pata_sch
          *-disk
               description: ATA Disk
               product: TOSHIBA MK6028GA
               vendor: Toshiba
               physical id: 0.0.0
               bus info: scsi@0:0.0.0
               logical name: /dev/sda
               version: BN10
               serial: *********
               size: 55GiB (60GB)
               capabilities: partitioned partitioned:dos
               configuration: ansiversion=5 signature=********
             *-volume:0
                  description: Linux swap volume
                  physical id: 1
                  bus info: scsi@0:0.0.0,1
                  logical name: /dev/sda1
                  version: 1
                  serial: ********-****-****-****-************
                  size: 2055MiB
                  capacity: 2055MiB
                  capabilities: primary nofs swap initialized
                  configuration: filesystem=swap pagesize=4096
             *-volume:1
                  description: EXT3 volume
                  vendor: Linux
                  physical id: 2
                  bus info: scsi@0:0.0.0,2
                  logical name: /dev/sda2
                  logical name: /
                  logical name: /dev/.static/dev
                  version: 1.0
                  serial: ********-****-****-****-************
                  size: 53GiB
                  capacity: 53GiB
                  capabilities: primary bootable journaled extended_attributes large_files huge_files recover ext3 ext2 initialized
                  configuration: created=2009-01-08 06:23:34 filesystem=ext3 modified=2009-01-24 12:15:42 mount.fstype=ext3 mount.options=ro,errors=remount-ro,data=ordered mounted=2009-01-24 12:15:42 state=mounted
 *-network DISABLED
      description: Ethernet interface
      physical id: 1
      logical name: pan0
      serial: 7e:c1:04:**:**:**
      capabilities: ethernet physical
      configuration: broadcast=yes driver=bridge driverversion=2.3 firmware=N/A link=yes multicast=yes

追記

現状のまとめ

関連記事

本日のツッコミ(全1件) [ツッコミを入れる]

W.Dee [僕もtype PにUbuntu 8.10入れました。 症状はまるっきり同じなのでちょくちょく見させていただきたいです..]


2009-01-28

LDRのピンをdelicious.comに投稿するスクリプト

最近、通勤中にAeroReaderを使ってるのですが、ピンした物をいちいちブックマークし直すのがめんどくさくなってきたので作ってみました。

それPla(ryな気がするとか、LDRのpinをdel.icio.usに投げるのを作ってみたというずばりそのものがあったりするのですが、Rubyのリハビリがてら作ってみました。

#!/usr/bin/ruby
#
# p2d.rb - Livedoor ReaderのPinをまとめてdelicious.comにブックマークするスクリプト
#

$KCODE='utf8'

require 'rubygems'
require 'pit'
require 'mechanize'
require 'json'
require 'cgi'
require 'open-uri'

ldr_cnf = Pit.get('reader.livedoor.com', :require => {
  'username' => 'your username in reader.livedoor.com',
  'password' => 'your password in reader.livedoor.com'
})
del_cnf = Pit.get('delicious.com', :require => {
  'username' => 'your username in delicious.com',
  'password' => 'your password in delicious.com'
})

agent = WWW::Mechanize.new
agent.user_agent_alias = 'Windows Mozilla'

# login LDR
page = agent.get('http://reader.livedoor.com/reader/')
form = page.form_with(:name => 'loginForm')
form.livedoor_id = ldr_cnf['username']
form.password = ldr_cnf['password']
agent.submit(form)

# get all pin
page = agent.post('http://reader.livedoor.com/api/pin/all')pin = JSON::parse(page.body)# post bookmarks
#   see also : http://delicious.com/help/api
post_error = false
pin.each{|p|
  uri = 'https://api.del.icio.us/v1/posts/add'
  uri << "?url=#{CGI.escape(p['link'])}&description=#{CGI.escape(p['title'])}&tags=%2ap2d"

  open(uri,:http_basic_authentication => [del_cnf['username'],del_cnf['password']]){|f|
    res = f.read
    post_error = true unless res =~ /done/
  }
}

# clear all pin
unless post_error
  api_key = agent.cookie_jar.jar['reader.livedoor.com']['reader_sid'].value
  agent.post('http://reader.livedoor.com/api/pin/clear', 'ApiKey' => api_key)
end

pit,mechanize,jsonあたりはrubygemsでインストールしてみてください。

$ sudo gem install pit mechanize json

2009-01-29

VAIO type PにUbuntuを入れてみる話の続き

いろいろ試している最中なのですが、少しもどかしい状態に…

とりあえず現状のメモです。

Ubuntu 8.04をインストールしてみたら…

moblinのxserver-xorg-video-psbが使える

サスペンド・レジュームができない

  • 現状で確実にフリーズする
  • xserver-xorg-video-psbのせいなのかどうかは不明…

Ubuntu 9.04をインストールしてみたら…

※ 8.10をインストールしたあと、/etc/apt/sources.listをjauntyに書き換えて9.04にした状態で試しています。

サスペンド・レジュームができる

  • 電車とかで使うときにこれができるとかなりうれしい。

moblinのxserver-xorg-video-psbが使えず、今のところVESAしか使えてない。

  • 描画が遅い
  • バックライトの明るさ調整ができない
    • 明るさ最大になってしまうので、ちょっと画面がまぶしい

まとめると

現状では、こんな感じです

8.049.04
X.Org△(vesa)
バックライトの明るさ調整×
サスペンド×
Wifi○(ath9kの手動インストール必要)
サウンド
ホットキー△(音量調整だけ使える)△(音量調整だけ使える)
CPUの速度調整(SpeedStep)

というわけで…

現状で普段はUbuntu 9.04を使っているのですが、個人的にバックライト調整と サスペンドのどちらをとるかで、ちょっと悩ましい状態になっています。

xserver-xorg-video-psbがUbuntu 8.10や9.04環境で使えればいいのですが、 以下のような困った状態になっているっぽい雰囲気です。

  • Ubuntu 8.10,9.04環境ではX.Orgのバージョンが7.4
    • Ubuntu 8.04のX.Orgのバージョンは7.3、Ubuntu 8.10からは7.4が採用されている
  • X.Org 7.4用のxserver-xorg-video-psbが現状ない状態?
  • linux-ubuntu-modules-2.6.24にはxserver-xorg-video-psbが使うdrm-poulsboがあるのに、2.6.26や2.6.28にはない?
    • どうもxserver-xorg-video-psb以外にカーネル側での対応も必要そうな雰囲気

xserver-xorg-video-psbのソースコード中のコメントを見ると…

/**************************************************************************
 *
 * Copyright (c) Intel Corp. 2007.
 * All Rights Reserved.
 *
 * Intel funded Tungsten Graphics (http://www.tungstengraphics.com) to
 * develop this driver.
 *

…と書いてあったりするので、IntelとTungsten GraphicsにはがんばってX.Org 7.4用の xserver-xorg-video-psb環境を整備してほしいなぁ…と思ってる次第です。

今後も、もう少し調べながらVAIO type PをUbuntuで使っていきたいと思っています。

追記

現状のまとめ

関連記事

本日のツッコミ(全8件) [ツッコミを入れる]

Before...

yoggy [試してみたのですが、xserver-xorg-video-psbが入ってないと一般的な仕組みでの明るさ調整ができない..]

野田篤司 [マツドサイエンティストこと野田です。私のブログ読んでいただいて、有難うございます。 LOOX U と Type P ..]

yoggy [Ubuntu 9.04環境でサスペンドできるのは、おそらくカーネル(2.6.28)に標準で入っているath9kを使っ..]

masuidrive [うちでは、Wubiを使って8.10を入れてから、同じように9.04に上げて使っています。 psbドライバが8.10以..]

masuidrive [輝度調整できました。 setpci -s 00:02.0 F4.B=80 00〜FFで調整。10以下にすると文字が見..]

yoggy [おお、輝度調整できるのを確認しました。やったー]

masuidrive [このコマンドが便利ですよ。あとはファンクションキーで変更できればいいんですけどね。 http://www.nvne..]


トップ 最新 追記

2003|01|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|
2010|01|02|03|