kkAyatakaのメモ帳。

誰かの役に立つかもしれない備忘録。

2019-03-01から1ヶ月間の記事一覧

C++向けライブラリの一部実装をSwiftで行おうとして諦めた話

MacでC++のプログラミングをしているとCoreFoundationでは機能が足りないことがある。これまではObjective-Cの関数をC言語スタイルの関数にラップして使用するということをよくやっていた。 今回どうせならObjective-CではなくSwiftでやれないかと試したけど…

sd-loginでログインセッションのStateの監視をする

loginctlやsystemd/sd-login.hのAPIを用いてログインセッションなどの現在状態が取得できる。加えて、monitor APIが用意されていて、各種変更の検知/通知の受け取りが可能となっている。 sd_login_monitor_newで監視オブジェクトを生成 pollでイベントを待ち…

wの元utmp

Linuxのログイン情報の取得について調べているときに、wコマンドの実装について気になった。巡り巡って/var/run/utmpとgetutentにたどり着くんだけど、ファイルについてはwコマンドのman pageに記載があった。 getutxent APIでutmpの中身を読むことでログイ…

systemdのsd-loginでGUIセッション情報を取得する

loginctlで色々とセッション情報が取得できるのはわかったけど、じゃあプログラムから参照する方法はなんだと調べて行ったらsystemdのsd-loginに行き着いた。 systemd/sd-login.hのAPIでloginctlから得られる情報をAPI経由で取得できる systemd-develのイン…

loginctlでGUIセッションの情報を取得する

LinuxでGUI表示中のユーザーかどうか(セッションがアクティブかどうか)を調べる方法がないかと調べて行ったらloginctlに行き着いた。Linuxの(というかsystemdのか?)セッションに詳しくないのでフレーズの使い方が微妙なんだけど、概ね必要な情報は取れ…