2012/11/23

gentoo mediatomb-0.12.1-r4.ebuild compile error


uPnP serverのmediatombを最近使い始めたが、mediatomb-0.12.1-r4.ebuildでコンパイルできなくなった。
bugzillaを見るとこれに相当するか。https://bugs.gentoo.org/show_bug.cgi?id=442602
error: ‘CFG_SERVER_EXTOPTS_FFMPEGTHUMBNAILER_CACHE_DIR’ was not declared in this scope
で止まる。
config_mangager.hでは次のように。

typedef enum
{
// 途中略
#if defined(HAVE_FFMPEG) && defined(HAVE_FFMPEGTHUMBNAILER)
    CFG_SERVER_EXTOPTS_FFMPEGTHUMBNAILER_ENABLED,
    CFG_SERVER_EXTOPTS_FFMPEGTHUMBNAILER_THUMBSIZE,
    CFG_SERVER_EXTOPTS_FFMPEGTHUMBNAILER_SEEK_PERCENTAGE,
    CFG_SERVER_EXTOPTS_FFMPEGTHUMBNAILER_FILMSTRIP_OVERLAY,
    CFG_SERVER_EXTOPTS_FFMPEGTHUMBNAILER_WORKAROUND_BUGS,
    CFG_SERVER_EXTOPTS_FFMPEGTHUMBNAILER_IMAGE_QUALITY,
    CFG_SERVER_EXTOPTS_FFMPEGTHUMBNAILER_CACHE_DIR_ENABLED,
    CFG_SERVER_EXTOPTS_FFMPEGTHUMBNAILER_CACHE_DIR,
#endif
// 略
} config_option_t;

HAVE_FFMPEGTHUMBNAILERがないとCFG_SERVER_EXTOPTS_FFMPEGTHUMBNAILER_CACHE_DIRが宣言されずエラーになる模様。
最も簡単な解決法はUSE="thumbnail"とする事っぽかった。
ffmpegthumbnailerがインストールされ、無事mediatombとともにコンパイル終了。

GIRLS & PANZERすげえ面白いわ!!

2012/11/04

Gentooの/etc/make.conf

久しぶりにGentooの/etc/make.confの整理をした。
globalにおいとかなくてもいいUSE flagを削除しすっきりさせる方向で整理。例えば"python", "gnutls" use flagとかも現時点で必要がないので消した。

ACCEPT_KEYWORDS="~amd64"
CFLAGS="-O2 -march=core2 -mtune=core2 -pipe "

CHOST="x86_64-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
MAKEOPTS="-j8"
USE="X gnome gtk3 alsa pulseaudio cups crypt dbus dvd \
     ipv6 threads \
     mp3 ogg flac wma mad aac a52 vorbis cdda x264 xvid mpeg ffmpeg \
     jpeg png gif svg tiff pdf truetype \
     cjk unicode cairo \
     opengl nvidia xv ncurses xinerama \
     mmx mmxext sse sse2 sse3 ssse3 \
     -qt3support -qt -qt4 -kde -oss -arts -esd -canna"

INPUT_DEVICES="evdev joystick wacom"
VIDEO_CARDS="nvidia"
FEATURES="splitdebug"
SYNC="rsync://rsync.gentoo.org/gentoo-portage/"
ACCEPT_LICENSE="*"
PORTDIR_OVERLAY="/usr/local/portage \
/var/lib/layman/vmware"
PORTAGE_ECLASS_WARNING_ENABLE="0"
source /var/lib/layman/make.conf

今のところこんな感じ。もっとすっきりさせていきたい。

2012/10/21

sambaのパスワード


samba 3.xのpasswordの格納場所としてsmbpasswdファイルは推奨されないようだ。
確かにgentooにportageからsambaをインストールした時もシステムにsmbpasswdファイルは存在しなかった。
testparm -v | grep passで/var/lib/samba/private/smbpasswdとは出てくるがw。
実態はpassdb backend = tdbsamとなっており、ユーザ情報の格納にはtdbファイルが使用されている。
TDB(Trivial Database)というユーザ管理データベースだそうだ。
自分の環境では/var/lib/samba/private/passdb.tdbだった。
tdbファイルはバイナリファイルだが、tdbファイルの内容をdumpするtdbdumpというコマンドがあるため、中をのぞくことができる。
$ tdbdump /var/lib/samba/private/passdb.tdb
でOK。

2012/10/15

samba備忘録

今更だが、自宅でsambaを利用することにした。メインのデスクトップPCのファイルに他の端末からもアクセスできれば便利だ。
sambaの設定は/etc/samba/のsmb.confというファイルに記述して行う。
全体的な設定は[global]というところに書き、共有する部位ごとに[share]などとエントリを作っていく形式らしい。
設定項目についてまとめてみる。

[global]
workgroup = WORKGROUP # 通常はWORKGOURP?windowsの設定にもよるか
server string = Samba Server # コメントらしい
netbios name = Gentoo # NetBIOSでの名前。大文字になるようだ
browseable = Yes # 外からみえるようにするか、らしい。
os level = 35 # 各workgroupにはmaster browserある。そのなりやすさのpriority
preferred master = Yes # local master browserになろうとする

# security
security = user # ユーザ認証にする。
encrypt passwords = true
hosts allow = 192.168.0. 127. # アクセスできるホストを制御
invalid users = root # rootにはさせない
map to guest = Never # ゲストユーザは許さない方針。
guest ok = No

#
load printers = no # プリンタはなし。
log file = /var/log/samba/log.%m
max log size = 100 # (kb)

# codings
unix charset = UTF-8 # 日本語可にするにはこうしろ、とのこと。
display charset = UTF-8
dos charset = CP932

#
# Directories
#
[share]
comment = My Sharing Stuff
path = /path/to/dir
read only = No
create mode = 0777
directory mode = 0777
valid users = myname # 許可するユーザを設定。

設定を見たい場合はtestparmコマンドを使う。
詳細を見たい場合はtestparm -vでOK。
nfsとかにしようかとも迷ったが、CIFSならLinux、Windows両方からアクセスしやすいので、sambaにした。
使い始める時、sambaのユーザを追加する必要があるが、
# pdbedit -a -u myname でOK。-aはadd、-uはユーザ名。この後passwdを設定して終了。
削除するときは
# pdbedit -x -u myname でよい。
samba快適だわ。





2012/01/01

mozc.el導入

今年初投稿!

ibus-mozcを使ってるが、emacs上でibusがどうもうまく動かない。
なんか特別な設定がいるのか?前uimを使ってたときはuimは動いてたけど。

どうしてもわからないので放置していたが、このたびemacs上でも日本語を使いたいと思って
mozc.elを導入することにした。
gentooの場合は、ibus-mozcというパッケージにemacsフラグがあるので、
# USE=emacs emerge ibus-mozc
としてmozc.elをインストール。

次にmozc.elに説明があるように.emacsとかに

(require 'mozc)
(set-language-environment "Japanese")
(setq default-input-method "japanese-mozc")

と書いておく。こうするとtoggle-input-methodで切り替えができるようになる。
Shift+spaceで切り替えをしてほしいので、

(global-set-key [?\S-\ ] 'toggle-input-method) ;; shift + space

とも書いておく。

これで導入終了。やっぱりディストリビューションのサポートがあるといいわー。