autostart-scripts ディレクトリの目的

autostart-scripts ディレクトリの目的

ユーザーは自分のディレクトリ.desktopにファイルを配置できます~/.config/autostart/Gnomeでログイン(セッション開始)時にスクリプトを実行する、または実際にFreedesktop規格に準拠するすべての環境

しかし、私のopenSUSE Leap 42.2 Gnome 3システムには、各ユーザーのディレクトリに加えて、各ユーザーのためのディレクトリも~/.config/autostart/あります~/.config/autostart-scripts/。私はこのディレクトリが、ユーザーがログイン時にそのスクリプトをファイルにラップすることなく実行したい高速で汚れたスクリプトのダンプグラウンドとして機能すると仮定しましたが、そのディレクトリに配置したスクリプトはログイン.desktop時に実行されませんでした。

検索エンジンは、ディレクトリに関するいくつかの詳細を提供します。このディレクトリの目的~/.config/autostart-scriptsと、その中でスクリプトを実行するための要件を知っている人はいますか?

答え1

なぜなら(例えばユーザーVillapxが見つかりました。)KDE Plasma 5autostart-scriptsのソースコードにこのディレクトリがあります。私はこれがPlasma 5の文書化されていない機能であると仮定し、KDEでこのプロファイルを実行しようとしました。

私はKDEがそれを使用すると信じているので、私は他のデスクトップ環境に合わせて自分のシステムを調整して動作させることができました。そのために、次の場所にシステム自動起動デスクトップファイルを追加しました/etc/xdg/autostart/exec-autostart

[Desktop Entry]
Exec=autostart-exec.sh
Icon=system-run
NotShowIn=KDE
Terminal=false
TerminalOptions=
Type=Application

これは、ディレクトリ内のすべてのスクリプトを呼び出すスクリプトを参照しますautostart-scripts(元のディレクトリを使用して決定されます)。自動起動仕様):

#!/bin/sh

shopt -s nullglob # Ensure shell expansion with 0 files expands to an empty list, rather than trying to read the "*.sh" file

if [ -z "$XDG_CONFIG_HOME" ]; then
    XDG_CONFIG_HOME=~/.config
fi
for f in "$XDG_CONFIG_HOME/autostart-scripts/"*.sh; do
    test -x "$f" && . "$f" || true
done

答え2

私は通常のGoogleユーザーのためにこのディレクトリにいくつかの追加情報を追加するために来ました。 KDEは2021年にこのディレクトリの動作方法を変更したように見え(人々に広く知らずに一部の人々を迷惑させます)、「一方的に」このディレクトリを「古い自動起動スクリプト」に移動し、それぞれ/home/userに.desktop ファイルを作成します。 /.config/autostarts ディレクトリにあるスクリプトです。

https://bugs.kde.org/show_bug.cgi?id=436439 古いバグレポート
https://bbs.archlinux.org/viewtopic.php?id=267220 議論する
https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/736 公式声明:

現在$XDG_CONFIG_HOME/autostart-scriptsのスクリプトはシステムモード(https://bugs.kde.org/show_bug.cgi?id=433987)。このPRは、クラシックモードとシステム起動モードで処理できるように、XDG_CONFIG_HOME / autostart内の単純な.desktopファイルに移行します。このようにして、他のデスクトップ環境で見ることができます(自動起動スクリプトはkdeのユニークな機能です)。 xdg構成層を使用すると、システムレベルでログインスクリプトを定義することもできます。移行すると、既存のログインスクリプトのそれぞれに対応する.desktopファイルが作成されます。ログインスクリプトがシンボリックリンクの場合は削除され、.desktopファイルはソースを指します。 KCMもこの新しい形式を使用するように更新されました。ログインスクリプトは引き続き表示されます(kdeサービスタイプを使用して区別してください)。新しいスクリプトを追加すると、$ XDG_CONFIG_HOME / autostart-scriptsへのシンボリックリンクを作成する代わりに、$ XDG_CONFIG_HOME / autostartに.desktopファイルが生成されます。また、事前実行(env)スクリプトをUIのログインスクリプトから分離します。以前はサポートされていましたが、同じカテゴリにマージされました。

2023年にもファイルは自動的に移動されるようです。

関連情報