ubuntu 的封存

Note: Work with Meteor and NodeJs on Ubuntu 14.04

Posted in Works with tags , , , on 2017 年 01 月 16 日 by Kun-Yi

去年某個案子開始用Nodejs/Meteor 不過是北歐的合作廠商負責的 我還是只負責底層 BSP porting 用的是Yocto Distribution 本來案子被我很快的呼嚨完客戶很快的就量產 但是技術債就是這樣遲早都要還 經過半年後 客戶發現某一部份功能不太穩定 希望我這邊重新看看可不可以修正

結果卻發生怎樣都沒辦法build meteor package 重新裝了 meteor/build-essential/nodejs … 等等
還是 build failed 跟之前作案子時完全不同, 經過幾小時嘗試各種方式 然後去看build log 只知道某些 npm package 安裝 failed然後又重新裝各種 nodejs 0.10.x/npm/node-gyp … 還是無法解決 >_<

直到我重新review host 上的 gcc version 才發現目前default 用gcc-4.9, 起因是前幾周在測試 Qt5.6 ~ Qt5.8/Boot2Qt 等等時, 它需要切換到gcc-4.9 配合新的語言標準才行,

但是此時卻發生了npm install packages failed後來透過 sudo update-alternatives –config 把gcc 切回gcc 4.8 果然解決問題

 

Tips:
Debug 中 學到下列
cd ~/.meteor/
ls -al可以看到安裝的meteor version
meteor->packages/meteor-tool/<RELEASE>/<PLATFORM>/meteor
curl https://install.meteor.com > meteor.install
vim meteor.install # 可以去找RELEASE 改成想要安裝的版本, 我自己的案子目前建議還是用 “1.3.2.4″ 目前抓到的應該是 “1.4.2.3″
修改過後用 cat meteor.install | sh 就可以安裝了

廣告

Note: To disable Middle button of Mouse on Ubuntu

Posted in Linux with tags , , on 2013 年 08 月 02 日 by Kun-Yi
因為在Ubuntu 上面GTK Default 支援一個很討厭的Feature 就是用 Mouse 中間當Paste 鍵, 但是常常在Scrolling 時, 會誤觸 產生不必要的困擾
所以就找了找 Disable 這個 Feature 的方法
有說要改 GTK libarary code 對我來說實在太麻煩了
後來找到用 xinput set-button-map 的簡單方法
先用 xinput list 找出需要設定的滑鼠, 如下
kunyi@kunyi-ThinkPad-X220:~$ xinput list
⎡ Virtual core pointer                    id=2[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              id=4[slave  pointer  (2)]
⎜   ↳ Microsoft Microsoft® Nano Transceiver v2.0id=10[slave  pointer  (2)]
⎜   ↳ Microsoft Microsoft® Nano Transceiver v2.0id=11[slave  pointer  (2)]
⎜   ↳ TPPS/2 IBM TrackPoint                   id=16[slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad              id=14[slave  pointer  (2)]
⎣ Virtual core keyboard                   id=3[master keyboard (2)]
    ↳ Virtual core XTEST keyboard             id=5[slave  keyboard (3)]
    ↳ Power Button                            id=6[slave  keyboard (3)]
    ↳ Video Bus                               id=7[slave  keyboard (3)]
    ↳ Sleep Button                            id=8[slave  keyboard (3)]
    ↳ Microsoft Microsoft® Nano Transceiver v2.0id=9[slave  keyboard (3)]
    ↳ Integrated Camera                       id=12[slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard            id=13[slave  keyboard (3)]
    ↳ ThinkPad Extra Buttons                  id=15[slave  keyboard (3)]
上面是 pointer 是指標裝置 我用的是 Microsoft Microsoft® Nano Transceiver v2.0
可以看到 id=10 & id=11, 但是這個因為是 USB Device 所以id 並不會一定每次開機都是 10 & 11 會隨著我的 USB bus 有所變化
但是總不能每天改 script吧!
所幸 有pipe & grep & xargs 幫我解決這個問題, 透過下面的指令串就可以自動把id 抓出來, 然後執行 xinput set-button-map
應該有更簡單的寫法不過我試不出來 >_<
 xinput list | grep -Po ‘Microsoft.*pointer’ | grep -Po ‘id=\K[0-9]+’ | xargs -n 1 -I @ xinput set-button-map @ 1 0 3