OS

[Mac] TextMateがオープンソースになってやってきた

あのテキストエディタがオープンソース化されたのがつい先日だったのですがどんどん改良が加えられて以前は不都合があった日本語の取り扱いもかなり改善されています。
ソースはgithubに公開されているのですがバイナリも置かれているので頑張ってコンパイルしないでもすぐに試す事が出来ます。

RORが世に出たときにあっという間にコードを書いていたのがこのTextMateでその頃凄く憧れた思いでがあります。日本語に難あり、しかも高いとなって手が出ていなかったので結構楽しみです。

プログラムエディタとしてbundleという機能で色々入力支援をしてくれるのが最大の特徴で使いこなすのは結構大変そうですが最後は便利になりそうなのでちょっとづつ勉強していきたいです。

Untitled

こちらはC言語のソースコードの場合、色が着いて、関数等が▼でまとめられたりな感じの事が出来ます。まだ

Api cc  scm  textmate

Githubからの自力でする場合には、こちらに必要な物も書いてあるので出来るかと思います。

git submodule update –init

ちょっと使ってみたいという人はこちらのバイナリをダウンロードすると良いかと思います。自動アップデート確認の機能もあるので便利そうです。

Downloads · textmate/textmate · GitHub

ちなみにソースが提供されたときのこのエントリーが面白かった。

本の虫: TextMate 2の数多くのバグを修正するpull request

Windowsでもアプリケーションのバージョンを最新に保つ

職場でもちょっとした課題になっていたのですがフリーソフト・オープンソフトウェアのバージョンが古いために(そういう意味では商品のソフトだってアップされていないのが多いけどね)セキュリティ上問題があるということ。

image
photo credit: Sanctuary photography → No Longer Active via photo pin cc

 

WindowsのOSなどはまだアップデートが定期的に流れてくるので問題がないけど「勝手に」入れたアプリケーションが問題だという話。MacOSでは最近は AppStore経由で購入した場合アップデートも一元的に実施できるため、アプリのバージョンが上がれば半自動的には最新版になる。囲い込みと言われたりするけどその点でLinux同様にアプリのレポジトリが一元化されているメリットは通常のユーザには非常に大きいと思う。

Windowsの場合にはまだそのような仕組みもなくまた、Linuxなどのようにレポジトリなどもないため更新は各アプリケーション単位で行う必要があり実際このコストは結構バカにならないのですよね。

 

誠 Biz.ID:3分LifeHacking:インストール済みソフトの更新を自動的に実行する(Windows編)

先日、こちらの記事でこの悩ましい問題を解決してくれるソフトを見つけることが出来ました。「AppliStation」です。このアプリは管理されているアプリの導入と、既存に導入されているアプリのアップデートをすることができます。非常に嬉しいのはアプリケーション(EXE)だけでなくDLLなども対象にしてくれているところでしょうか。

 

ダウンロードはこちらから行なって下さい。

AppliStation : ソフトウェア管理システム

このAppliStatoinは、500以上のアプリケーションの最新版を持っていて管理してくれるためローカルに入っているアプリと付きあわせて最新版をダウンロードしてくれるすぐれものです。

起動するとパターンファイルをダウンロードしてその後アプリケーションのリストが表示されます。個々に記載されているアプリをアップデートできるようです。「ソフトウェアの更新」をクリックします。

image

するとアップデート可能なリストが表示されます。ここで×マークがついているのはサイレントインストール可能なアプリケーションのようです。

image

非常に楽にアプリケーションが更新できます。問題になりそうなアプリは覗いたとしてもDLLなど普段気にしていないものも対象とされているのが非常にありがたいですね。網羅性としてはかなりメジャーなものは含まれているので助かります。また機能的に有効かは不明ですがウィルススキャンもされるようですので安全にアプリケーションが導入できそうです。

 

アプリケーションのアップデートは機能の追加だけでなくセキュリティの問題の解消やバグフィックスなどが含まれているケースが多いのでぜひ最新の状態にしておきたいですね。最近アプリには独自に起動時にバージョンチェックをするものも多いのですがノートパソコンで利用している都合もあるのですがアプリが起動時に「オンライン」ではない事が多く結果としてチェックしていないケースが多々有りました。

「セキュリティ上の理由によりご利用のアカウントが無効」と表示された。

突然、Macから警告が出てアカウントのパスーワドをリセットした。

システム環境設定

何が原因でこのような事になったのかは不明だけど、最終的には「パスワードのリセット」を選択してその後の画面で表示される指示に従っていく事で新しいパスワードを入れる事になった。

新しくパスワードを設定しようとしたところ英語大文字を含める事が条件のようで以前のパスワードポリシーは使用できなかった。その影響で無効になったのだろうか? 正直かに不正に利用されようとしてこうなったのかもしれず何か嫌だな。

今回は無事にリセットできたけど、ネットを見ると出来なかったりする事もあるみたいで怖いですね。 昨今パスワードも難しくしようとすればいくらでも出来るのだけど iPhoneから物を買うときに入力しなければ行けないのでどうしても打ちやすい(覚えておきやすい)物にしてしまうのですよね。。。

強固なパスワードを作る(覚えるのが大変ですが)場合には、アプリ等で今は簡単にできるのでそういった物でランダムな数字を生成した方が良いと思います。 私は普段は 1passwordを利用しているので一般的なWebサービスでは複雑な文字になっています。

1Password App
カテゴリ: 仕事効率化
価格: ¥4,300

Mountain Lion でiPhoneとメモの同期を試す

さっそく試しに入れてみました @tokida です。

ほんとはもう少し様子見用かと思っていたのですが勢いで入れてしまいました。何よりもこんな何簡単にアップデートできるのが非常に嬉しいです。値段的にもだいぶ押さえられて数年前に比べれば雲泥の差ですね。Windowsも今後はかなり安い価格帯だそうなのでアップデートする人は増えるのではないでしょうか。 Mountain Lionはアプリ入れる感覚ですものね。

メモ  これは新規で作成したメモです  アップデート中

色々昨日はあるかと思うのですが 「メモ」が iCloudで同期されるようになったのが嬉しいです。ほんとは日々仕事でWindowsでなければもっと色々喜んだ思うのですが(messageとかね)

メモはiCloudで同期していなかったのでiPhone側の設定を変更して同期してみます。

設定から「メモ」が同期をとれるように「ON」にしておきます。

IMG_4276
IMG_4276 Photo by tokiyan

メモのアプリにも「アカウント」があるのでiCloudを選択しておきましょう(または全てのメモ)最初ローカルのメモを見ていたので同期されずに悩んでいました。

IMG_4278
IMG_4278 Photo by tokiyan

メモなんて基本的なアプリがいままで同期されていなかった(メールボックス経由ではどうきとかありましたが)のが Mountain Lion になってPC側にアプリも登場して非常に便利に使えそうになりました。

自分の中ではメモアプリの需要がかなり高まりそうな予感です。

[Linux] 一般ユーザのプロセスをポート1024番未満でBindする方法

ircdプログラムを導入しようとしてどうにも6667ポートで通信が出来ないのではまっていたのですが(6667は相変わらずつながらない)その際に別のポートにすればと思って443とか880とか適当にしていたのですが、Permission Deinedになっていました。

これIPのポート番号が1024未満(特権ポート privileged ports)に該当して、特権プロセス(CAP_NET_BIND_SERVICE ケーパビリティを持つプロセス)でないとアクセス出来ないことを無視していたために発生していました。初歩的な事でした。

実際にはrootユーザであればバインドして利用することが可能となりますが ircdのサービスの起動ユーザが irc 等であったたのでバインドが出来ない状態でした。ユーザを変更れば可能かもしれませんがプロセス自体にこの特権を与えることもできます。

この特権を個別にプロセスに付与するために、Linuxではケーパビリティという機能があり特権を少しづつ割り当てることができます。

$ sudo setcap CAP_NET_BIND_SERVICE+ep /usr/sbin/ngircd    
$ sudo getcap /usr/sbin/ngircd     
/usr/sbin/ngircd = cap_net_bind_service+ep

という設定を行います。この状態で起動すると

Jul 23 18:14:15 ubuntu ngircd[3286]: Reading configuration from "/etc/ngircd/ngircd.conf" ...    
Jul 23 18:14:15 ubuntu ngircd[3286]: No SSL server key configured, SSL disabled.     
Jul 23 18:14:15 ubuntu ngircd[3286]: Warning: Error during SSL initialization, continuing ...     
Jul 23 18:14:15 ubuntu ngircd[3287]: Running as user irc(39), group irc(39), with PID 3287.     
Jul 23 18:14:15 ubuntu ngircd[3287]: Not running with changed root directory.     
Jul 23 18:14:15 ubuntu ngircd[3287]: IO subsystem: epoll (hint size 100, initial maxfd 100, masterfd 4).     
Jul 23 18:14:15 ubuntu ngircd[3287]:Now listening on [0::]:1022 (socket 8).
Jul 23 18:14:15 ubuntu ngircd[3287]:Now listening on [0.0.0.0]:1022 (socket 9). 

という形で起動することができます。
参考までに権限を取り外すと

$ sudo setcap -r /usr/sbin/ngircd    
$ sudo getcap /usr/sbin/ngircd

起動すると

Jul 23 18:17:13 ubuntu ngircd[3325]: Reading configuration from "/etc/ngircd/ngircd.conf" ...    
Jul 23 18:17:13 ubuntu ngircd[3325]: No SSL server key configured, SSL disabled.     
Jul 23 18:17:13 ubuntu ngircd[3325]: Warning: Error during SSL initialization, continuing ...     
Jul 23 18:17:13 ubuntu ngircd[3326]: Running as user irc(39), group irc(39), with PID 3326.     
Jul 23 18:17:13 ubuntu ngircd[3326]: Not running with changed root directory.     
Jul 23 18:17:13 ubuntu ngircd[3326]: IO subsystem: epoll (hint size 100, initial maxfd 100, masterfd 4).     
Jul 23 18:17:13 ubuntu ngircd[3326]:Can't bind socket to address 0:::1022 - Permission denied
Jul 23 18:17:13 ubuntu ngircd[3326]:Can't bind socket to address 0.0.0.0:1022 - Permission denied

Jul 23 18:17:13 ubuntu ngircd[3326]: Server isn't listening on a single port!     
Jul 23 18:17:13 ubuntu ngircd[3326]: ngircd exiting due to fatal errors!

となり、1022番ポートではバインド出来ずPermission Deniedとなります。

 

参考文献

 

それにしてもngircdですがディフォルトのポート6667,6668,6669では相変わらず動かないのはなぜでしょうか? ローカルでBindはできているため別の理由によりつながらない模様です。ちょっと原因はさっぱりでした。ここ数年Linux界隈から遠ざかっていたので色々物忘れが激しいです。Ubuntuではセキュリティの機構としてAppArmorなども導入されておりそちらが原因なのか最初かなり悩んでしまいました。なかなか難しいものですね。

上部へスクロール