Windowsバッチファイルで、ドライブの空き容量を取得し変数化する

fsutilで空き容量を取得できるので、うまく文字列を取り出せば変数化できます。

fsutil volume diskfree c: | find "利用可能な空きバイト総数" > %TEMP%\diskfree.tmp
for /F "tokens=3 delims= " %%a in ( %TEMP%\diskfree.tmp ) do set DISKFREE=%%a
del /Q %TEMP%\diskfree.tmp
echo %DISKFREE%


164571160576

のように取り出せます。

だたし、数値はバイト単位のため明らかに32bitを超えています。なのでifを使うときは

if %DISKFREE:~0,-6% GTR 10000 goto end

のように、後ろ6文字を消したりして工夫してください。

GitLabでユーザー作成を無効にする

GitLab7.9にアップグレードしたところいつの間にか、ユーザー作成がデフォルトで有効になっていました。gitlab.ymlに項目がないので迷っていましたが、Webインターフェースに無効化オプションがあったみたいです。

Admin area -> Application settings 内のSignup enabledがそれです

スクリーンショット 2015-03-27 22.24.17

Android SDK Manager が32bit Windowsで起動しない

Android Studioが無事1.0リリースとなりましたが、さっそく32bit版Windows上でインストールをするとSDK Managerが起動しない現象が見られます。

原因は、(android sdk path)\tools\lib\find_java.bat:27にあります。

reg Query "HKLM\Hardware\Description\System\CentralProcessor\0" |^
find /i "x86" > NUL && set arch_ext=32 || set arch_ext=64

32bit版の場合、変数arch_extには、”32(スペース)”が代入されます。これが原因です。

回避するには、32の後ろにあるスペースを消します。

reg Query "HKLM\Hardware\Description\System\CentralProcessor\0" |^
find /i "x86" > NUL && set arch_ext=32|| set arch_ext=64

OSX10.10Yosemiteでkdepimlibsのビルドこける

==> Installing kdepimlibs from adymo/homebrew-kde
==> Downloading http://download.kde.org/stable/4.14.0/src/kdepimlibs-4.14.0.tar.xz
Already downloaded: /Library/Caches/Homebrew/kdepimlibs-4.14.0.tar.xz
==> cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/kde4 -Wdev --trace --debug-output -DKDE_DEFAULT_HOME=Library/Preferences/KDE -DCMAKE_PREFIX_PATH=/usr/local/Cellar/gettext/0.19.3 -DDOCBOOKXML_CURRENTDTD_DIR=/usr/local/
==> make
Linking CXX shared library ../lib/libakonadi-kde.dylib
Linking CXX shared module ../../../lib/kabc_net.so
[ 58%] Built target kabc_net
[ 58%] Built target akonadi-kde
make: *** [all] Error 2

https://bugs.kde.org/show_bug.cgi?id=340425

/System/Library/Frameworks/LDAP.framework/Headers/

内のldap.h,lber.hの内容がカラになってる

kdepimlibs-4.14.0.tar.xz/cmake/modules/FindLdap.cmake

がldap.h,lber.hを/System/Library/Frameworks内からヘッダーを探すようになっている

LDAP_INCLUDE_DIRを指定することで、そこから探すようになる

正しくは/usr/include/の中のldap.h,lber.hを見て欲しいので

kdepimlibs-4.14.0.tar.xz/CMakeLists.txt


set(LDAP_INCLUDE_DIR "/usr/include/")

を追加したらビルド通った

Homebrewでadymo/homebrew-kdeをインストール中、strigiのインストールでエラーが出る

akkuma-no-MacBook-Pro:~ akkuma$ brew install strigi
==> Installing strigi from adymo/homebrew-kde
==> Downloading http://www.vandenoever.info/software/strigi/strigi-0.7.8.tar.bz2
Already downloaded: /Library/Caches/Homebrew/strigi-0.7.8.tar.bz2
==> Downloading https://trac.macports.org/raw-attachment/ticket/41152/patch-libs
######################################################################## 100.0%
==> Patching
patching file libstreamanalyzer/plugins/endplugins/ffmpegendanalyzer.cpp
==> cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/kde4 -Wdev –trace –debug-output
==> make
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [libstreamanalyzer/plugins/indexers/clucenengindexer/strigiindex_cluceneng.so] Error 1
make[1]: *** [libstreamanalyzer/plugins/indexers/clucenengindexer/CMakeFiles/cluceneng.dir/all] Error 2
make: *** [all] Error 2

READ THIS: https://github.com/Homebrew/homebrew/blob/master/share/doc/homebrew/Troubleshooting.md#troubleshooting
If reporting this issue please do so at (not Homebrew/homebrew):
https://github.com/adymo/homebrew-kde/issues

Issueが上がってた
https://github.com/adymo/homebrew-kde/issues/42

brew edit clucene

でFormulaを編集

patch do
  url "http://sourceforge.net/p/clucene/bugs/_discuss/thread/ec8f649d/1024/attachment/0001-Fix-.pc-file-by-adding-clucene-shared-library.patch"
  sha1 "f3cd7272df8e258ee5bd8183b3d0c0f87d02b34d"
end

を他patchがある周辺に追加

brew reinstall clucene --build-from-source
brew install strigi

で完了

GitLabのミラーをGithubに作成する

./hook/post-updateでgit pushを実行すればOKみたいです。

まずは、対象GitLab実行ユーザーのsshキーをミラーを作成したいGithubアカウントに登録しておきます。

そして、Githubで空のリポジトリを作成しておきます。

GitLab実行ユーザー内にある対象ベアリポジトリ内で./hook/post-updateを作成し

#!/bin/bash
git push -q --mirror git@github.com:akkm/hogehoge.git &

のような内容で作成
chmod 755 ./hook/post-update
で実行権限を変更すればできそうです。

Debian wheezyにOracle JDK 7をインストール

java-package( https://packages.debian.org/wheezy/java-package )を使用します。

sources.listにcontribを追加します。


sudo nano /etc/apt/source.list

deb (リポジトリアドレス) wheezy mainとなっているところにcontribを追加します
(下は一例)


deb http://ftp.jaist.ac.jp/debian/ wheezy main contrib
deb-src http://ftp.jaist.ac.jp/debian/ wheezy main contrib

deb http://security.debian.org/ wheezy/updates main contrib
deb-src http://security.debian.org/ wheezy/updates main contrib

# wheezy-updates, previously known as 'volatile'
deb http://ftp.jaist.ac.jp/debian/ wheezy-updates main contrib
deb-src http://ftp.jaist.ac.jp/debian/ wheezy-updates main contrib

Ctrl+Oを押しEnterで保存、Ctrl+Xで終了
リポジトリを更新し、java-packageをインストールします

sudo apt-get update
sudo apt-get install java-package

Oracle JDKのtar.gzファイルをダウンロードします。
現時点ではjdk-7u55-linux-x64.tar.gzでした。

make-jpkg jdk-7u55-linux-x64.tar.gz
sudo dpkg -i oracle-j2sdk1.7_1.7.0+update55_amd64.deb

デフォルトのJavaバージョンを変更します。

sudo update-alternatives --config java

これで完了です。

$ java -version
java version "1.7.0_55"
Java(TM) SE Runtime Environment (build 1.7.0_55-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.55-b03, mixed mode)
$ javac -version
javac 1.7.0_55