basyura's blog

あしたになったらほんきだす。

冬休みだし年末だし kindle で漫画が捗る

2015 年仕事納め

大きめの稼働を終えた一年が終わった。今年もよく頑張った。開発は継続しているけど後半は力が抜けて惰性で進めていたように思う。今までの反動。しかたない。今月後半なんてほとんど仕事をしていなかった。明確なゴールもなく自分じゃないとできない風なのをよいことにあれもこれもと手を出してホントはやらないといけないアウトプットが出せてなかったように思う。調査やプロトタイプ作成がほとんどなので正月休みでやればいいやぐらいでいたのが良くなかった。けど、得たものも得ようとしているものもまぁまぁあったので良しとする。今年一番頑張ったと思えるのは改善活動だろう。開発効率を上げるためにはどうするか、情報共有するためにはどうするかをよく議論して実践できたと思う。健康面に関してはちょうど一年前に目が赤くなってから眼の調子が良くないのだけど、これはもうそういうものだと思うしか無さそうなのがちょっと残念。目が疲れやすい、目が充血しやすい、炎症を感じやすい、光に弱くなったといった感じなのだけど適度に目薬をさして目を休めれば大丈夫そう (いまのところは)。なかなか合ったメガネがなくて目が疲れてしまうのと、大きめのディスプレイを見てるとすぐに目が辛くなってくるのが難点。なんとかならないもんだろうか。数年前から大きめのディスプレイは辛いなと思ってはいて コンタクト + JINS-PC なら余裕だったのだが今はコンタクトが辛い。度付き JINS-PC を使っているのだけど、それではちょっとつらい。通常メガネだとノートもちょっとつらい時がある。JINS-PC のナイトユースも良さそうだけど常用するのはちょっと抵抗が在る。医者に相談しても良くも悪くも問題ないの一点張りなので、継続していろいろ試していきたい。

冬休みの宿題

  • WPF プロト作る
  • GitLab の調査
  • Jenkins の調査
  • Redmine (Bitnami) のバージョンアップ調査

また、長年の懸念事項であった cygwin の 1.7.18 から最新へのバージョンアップは

というアドバイスに従ったところ、何の問題もなく一瞬で終わってしまったので非常にありがたかった。

やること (やりたいこと) はたくさんあるのだけど、とりあえずゆっくりする。

VMWare Fusion + CentOS7 + GitLab

f:id:basyura:20151223214532p:plain:w300

まともにインストールできたのが Ubuntu だったからそれ以来ずっと Ubuntu だったのだけど、必要になったので CentOS を使ってみる。

Red Hat Enterprise Linux(以下「RHEL」と呼ぶ)との完全互換を目指したフリーのLinuxディストリビューションである。

概要
レッドハット社は、RHELに含まれているソフトウェアをオープンソースライセンスに基づき、そのソースコードを無償公開している。CentOSは、このソースコードをもとに、レッドハット社の商標や商用パッケージ等を除去したものを、リビルドしている。CentOSは、White Box Enterprise Linux、Scientific Linux等を含めて、一般に「RHELクローン」と呼ばれることもある。

開発
RHELクローンとしてはWhite Box Enterprise Linux が先にリリースされている。これが広く人気を得たことを契機に、CentOSのプロジェクトは有志のボランティアにより立ち上げられた。CentOS という呼び名は、「コミュニティベースで開発された、エンタープライズクラスのオペレーティングシステム (Community ENTerprise Operating System) 」に由来する。

CentOS - wikipedia

iso ダウンロード

VMWare Fusion で読み込み

  • HDD 50G
  • MEM 4G
  • CPU 一つ

ネットワーク設定

  • vi /etc/sysconfig/network-scripts/ifcfg-enoXXXXXX

以下のように編集

BOOTPROTO=dhcp
ONBOOT=yes
  • service network restart
  • ip addr で IP アドレスが表示されていたら OK

sudo 設定 (とりあえず全部)

[root@dlp ~]# visudo
ユーザ名    ALL=(ALL)       ALL

GitLab インストール手順にしたがって進める

インストール前のディスク容量

$ df -h
ファイルシス               サイズ  使用   残り  使用%  マウント位置
/dev/mapper/centos-root    46G  952M    45G    3%  /
devtmpfs                  2.0G     0   2.0G    0%  /dev
tmpfs                     2.0G     0   2.0G    0%  /dev/shm
tmpfs                     2.0G  8.6M   2.0G    1%  /run
tmpfs                     2.0G     0   2.0G    0%  /sys/fs/cgroup
/dev/sda1                 497M  123M   375M   25%  /boot
tmpfs                     394M     0   394M    0%  /run/user/0
tmpfs                     394M     0   394M    0%  /run/user/1000

GitLab をインストール

$ sudo yum install gitlab-ce

総ダウンロード容量: 382 M
インストール容量: 1.0 G

インストール後の容量

$ df -h
ファイルシス                サイズ  使用   残り  使用% マウント位置
/dev/mapper/centos-root    46G  2.2G   44G    5%  /
devtmpfs                  2.0G     0  2.0G    0%  /dev
tmpfs                     2.0G     0  2.0G    0%  /dev/shm
tmpfs                     2.0G  8.7M  2.0G    1%  /run
tmpfs                     2.0G     0  2.0G    0%  /sys/fs/cgroup
/dev/sda1                 497M  123M  375M   25%  /boot
tmpfs                     394M     0  394M    0%  /run/user/0
tmpfs                     394M     0  394M    0%  /run/user/1000

メモリ使用量

$ free -m
              total        used      free    shared   buff/cache   available
Mem:           3932         817      1161        58         1952        2736
Swap:          4095           0      4095

インストール箇所もろもろ

  • /opt/gitlab
  • /opt/gitlab/sv/postgresql
  • /var/opt/gitlab/gitlab-rails/
  • /opt/gitlab/embedded/bin/ruby
  • /opt/gitlab/embedded/include/ruby-2.1.0/ruby
  • /opt/gitlab/embedded/include/ruby-2.1.0/x86_64-linux/ruby
  • /opt/gitlab/embedded/lib/ruby
  • /opt/gitlab/embedded/lib/ruby/gems/2.1.0/gems/chef-12.5.1/spec/data/standalone_cookbook/vendor/bundle/ruby
  • /opt/gitlab/embedded/lib/ruby/gems/2.1.0/gems/coderay-1.1.0/lib/coderay/scanners/ruby
  • /opt/gitlab/embedded/service/gem/ruby
  • /opt/gitlab/embedded/service/gem/ruby/2.1.0/gems/mail-2.6.3/lib/mail/parsers/ragel/ruby
  • /opt/gitlab/embedded/service/gem/ruby/2.1.0/gems/rouge-1.10.1/lib/rouge/demos/ruby

感想

ネットワーク接続で躓いてしまったけど・・・それ以外は GitLab のインストールも簡単すぎて逆にびっくり。
GUI 付き Ubuntu で GitLab を動かしてた時はもっさりしてる印象だったのだけど、ホストの mac から繋いだらそんなことは無いようなので一安心。

僕が伝えたかったこと、古川享のパソコン秘史

本書は、古川享がアスキーに入社した頃のパソコン黎明期から、マイクロソフトの日本法人であるマイクロソフト株式会社設立の過程、MS-DOSから現在のWindowsに至るパソコンのOS(基本ソフト)がデファクトスタンダードになる過程、日本のパソコンの標準マシンであったNECの98シリーズが一時代を築き、その後、世界標準のDOS/Vマシンに移行する過程など、パソコンの進化の激動の時代を中心に、それぞれの時代の様々な現場で何が起こっていたのか、そこで輝いていた人たちの知られざる活躍を語ったものです。

僕が伝えたかったこと、古川享のパソコン秘史

面白いなぁと思いながら読み進めていたら半分過ぎたあたりで終わって Appendix に移ったのはちょっと残念だった。続きが読みたい。

既存のものを完全に否定するのではなく、既存のものと組み合わせる

ごもっとも。

Git for Windows - Git Bashメモ

VMWare Fusion に入れてた Windows10 が REGSTRY ERROR で頻繁にクラッシュするようになったので OS 入れ直し。そのタイミングで Git for Windows を入れ直したのだけどユーザフォルダ配下にインストールされてた。そういう風に変わったんだと思っていたのだけど・・・

Git for Windows v2.6.3's installer failed to elevate privileges automatically (reported three times, making it a charm), and as a consequence Git for Windows 2.6.3 was frequently installed per-user by mistake

Git for Windows 2.6.4

ということでバグだったっぽい・・・。2.6.32.6.4 にアップデート。タスクバーのアイコンが白くなってしまうアクシデントもあったけど、IconCache.db を削除後に OS 再起動したら直った。

設定メモ

mintty でインストール

.inputrc

set convert-meta off
set meta-flag on
set output-meta on
set kanji-code utf-8

.vimrc

set encoding=utf-8
"set termencoding=cp932
set termencoding=utf-8
set fileencoding=utf-8

.bashrc

alias ls='ls --show-control-chars'
alias la='ls -la --show-control-chars'

PS1='\[\033]0;Git Bash\007\]'  # set window title
PS1="$PS1"'\n'                 # new line
PS1="$PS1"'\[\033[33m\]'       # change to brownish yellow
PS1="$PS1"'\w'                 # current working directory
if test -z "$WINELOADERNOEXEC"
then
        GIT_EXEC_PATH="$(git --exec-path 2>/dev/null)"
        COMPLETION_PATH="${GIT_EXEC_PATH%/libexec/git-core}"
        COMPLETION_PATH="${COMPLETION_PATH%/lib/git-core}"
        COMPLETION_PATH="$COMPLETION_PATH/share/git/completion"
        if test -f "$COMPLETION_PATH/git-prompt.sh"
        then
                . "$COMPLETION_PATH/git-completion.bash"
                . "$COMPLETION_PATH/git-prompt.sh"
                PS1="$PS1"'\[\033[36m\]'  # change color to cyan
                PS1="$PS1"'`__git_ps1`'   # bash function
        fi
fi
PS1="$PS1"'\n'                 # new line
PS1="$PS1"'$ '                 # prompt: always $
PS1="$PS1"'\[\033[0m\]'        # change color

_netrc (.netrc では認識してくれない)

  • VMWare Fusion 8 にしたら ssh でドメインを認識してくれなくて push できなくなった・・・?
machine github.com
login xxxxxx
password yyyyyy

C# - プロパティ

C# はプロパティがあるから簡単に書けて便利っていう話があるけど
そんなこと無いよなと RaisePropertyChanged を書きながら思う日々。

public string _Message;
public string Message
{
    get
    {
        return _Message; 
    }
    set
    {
        _Message = value;
        RaisePropertyChanged();
    }
}

簡潔に書いてこんな↓感じか。

public string _Message;
public string Message {
    get { return _Message; }
    set { _Message = value;
          RaisePropertyChanged();
    }
}

setter で受けたら自動的に RaisePropertyChanged するプロパティを作って ↓ な感じで書けないかなぁ (未検証)。

[RiasePropertyChanged]
public string Message { get; set; }