Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions APKBUILD
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,14 @@ depends="
phosh
greetd
greetd-phrog-schemas
libphosh"
libphosh
linux-pam"
makedepends="
cargo
cargo-auditable
foot
libphosh-dev"
libphosh-dev
linux-pam-dev"
checkdepends="xvfb-run"

_gitrev=main
Expand Down Expand Up @@ -52,6 +54,7 @@ package() {
install -d "$pkgdir"/usr/share/phrog/autostart
install -d "$pkgdir"/etc/phrog/autostart
install -Dm755 target/release/phrog -t "$pkgdir"/usr/bin/
install -Dm755 target/release/phrog-gdm-shim -t "$pkgdir"/usr/bin/
install -Dm755 data/phrog-greetd-session -t "$pkgdir"/usr/libexec/
}

Expand Down
129 changes: 129 additions & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 2 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,14 @@ anyhow = "1.0.82"
libphosh = "0.0.7"
clap = { version = "4.5.4", features = ["derive"] }
wayland-client = "0.31"
zbus = { version = "5", default-features = false, features = ["blocking", "async-io"] }
zbus = { version = "5", default-features = false, features = ["blocking", "async-io", "p2p"] }
nix = { version = "0.30", features = ["signal"] }
async-global-executor = "3.0.0"
futures-util = "0.3.30"
log = "0.4.22"
lazy_static = "^1.4"
gettext-rs = "0.7"
pam = "0.8"

[dependencies.glib]
version = "0.18"
Expand Down
19 changes: 19 additions & 0 deletions data/org.gnome.DisplayManager.phrog.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
<!DOCTYPE busconfig PUBLIC
"-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>
<policy user="root">
<allow own="org.gnome.DisplayManager"/>
</policy>

<policy context="default">
<allow send_destination="org.gnome.DisplayManager"
send_interface="org.gnome.DisplayManager.Manager"/>
<allow send_destination="org.gnome.DisplayManager"
send_interface="org.freedesktop.DBus.Properties"/>
<allow send_destination="org.gnome.DisplayManager"
send_interface="org.freedesktop.DBus.Introspectable"/>
<allow send_destination="org.gnome.DisplayManager"
send_interface="org.freedesktop.DBus.Peer"/>
</policy>
</busconfig>
14 changes: 14 additions & 0 deletions data/phrog-gdm-shim.service
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
[Unit]
Description=Phrog GNOME DisplayManager compatibility shim
Documentation=https://github.com/samcday/phrog
Conflicts=gdm.service gdm3.service
After=dbus.service systemd-logind.service

[Service]
Type=dbus
BusName=org.gnome.DisplayManager
ExecStart=/usr/bin/phrog-gdm-shim
Restart=on-failure

[Install]
WantedBy=multi-user.target
4 changes: 4 additions & 0 deletions debian/control
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,12 @@ Build-Depends:
librust-libhandy-0.11+v1-6-dev,
librust-libphosh-0.0.7-dev,
librust-nix-0.30+signal-dev,
librust-pam-0.8-dev,
librust-wayland-client-0.31-dev,
librust-zbus-5+async-io-dev (>= 4.3.1~~),
librust-zbus-5+blocking-dev (>= 4.3.1~~),
librust-zbus-5+p2p-dev (>= 4.3.1~~),
libpam0g-dev,
# Dependencies needed only for tests
at-spi2-core <!nocheck>,
dbus-daemon <!nocheck>,
Expand Down Expand Up @@ -57,6 +60,7 @@ Depends:
gnome-settings-daemon,
gnome-shell-common,
greetd,
libpam0g,
librsvg2-common,
phoc,
phosh-common,
Expand Down
2 changes: 2 additions & 0 deletions debian/phrog.install
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ data/mobi.phosh.Phrog.desktop usr/share/applications
data/mobi.phosh.Phrog.service /usr/lib/systemd/user/
data/mobi.phosh.Phrog.target /usr/lib/systemd/user/
data/systemd-session.conf usr/lib/systemd/user/gnome-session@phrog.target.d
data/phrog-gdm-shim.service usr/lib/systemd/system
data/org.gnome.DisplayManager.phrog.conf usr/share/dbus-1/system.d

# Debian-specific config
target/dist-data/phrog.toml etc/greetd
Expand Down
2 changes: 2 additions & 0 deletions debian/rules
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ override_dh_auto_build:
override_dh_auto_install:
install -D -m0755 target/$(DEB_HOST_RUST_TYPE)/debug/phrog \
$(INSTALL_DIR)/usr/bin/phrog
install -D -m0755 target/$(DEB_HOST_RUST_TYPE)/debug/phrog-gdm-shim \
$(INSTALL_DIR)/usr/bin/phrog-gdm-shim
install -D -m0755 data/phrog-greetd-session \
$(INSTALL_DIR)/usr/libexec/phrog-greetd-session

Expand Down
7 changes: 7 additions & 0 deletions phrog.spec
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ BuildRequires: dbus-daemon
BuildRequires: xorg-x11-server-Xvfb
# first-run test uses foot
BuildRequires: foot
BuildRequires: pam-devel

%if %{with vendor}
BuildRequires: pkgconfig(atk)
Expand All @@ -46,6 +47,7 @@ BuildRequires: gettext-devel
Requires: accountsservice
Requires: gnome-session
Requires: greetd
Requires: pam
Requires: phoc
Requires: phosh-osk = 1.0

Expand Down Expand Up @@ -84,6 +86,8 @@ tar -xf %{SOURCE1}
%{__install} -Dpm 0644 data/mobi.phosh.Phrog.desktop -t %{buildroot}%{_datadir}/applications/
%{__install} -Dpm 0644 target/dist-data/greetd-config.toml -t %{buildroot}%{_sysconfdir}/phrog/
%{__install} -Dpm 0644 dist/fedora/phrog.service -t %{buildroot}%{_unitdir}/
%{__install} -Dpm 0644 data/phrog-gdm-shim.service -t %{buildroot}%{_unitdir}/
%{__install} -Dpm 0644 data/org.gnome.DisplayManager.phrog.conf -t %{buildroot}%{_datadir}/dbus-1/system.d/
%{__install} -Dpm 0644 data/systemd-session.conf -T %{buildroot}%{_userunitdir}/gnome-session@phrog.target.d/session.conf
%{__install} -Dpm 0755 data/phrog-greetd-session -t %{buildroot}%{_libexecdir}/
%{__install} -d %{buildroot}%{_datadir}/phrog/autostart
Expand All @@ -108,6 +112,7 @@ dbus-run-session xvfb-run -a -s -noreset phoc -S -E ./test.sh
%license LICENSE
%doc README.md
%{_bindir}/phrog
%{_bindir}/phrog-gdm-shim
%{_datadir}/applications/mobi.phosh.Phrog.desktop
%{_datadir}/glib-2.0/schemas/mobi.phosh.phrog.gschema.xml
%{_datadir}/gnome-session/sessions/phrog.session
Expand All @@ -118,6 +123,8 @@ dbus-run-session xvfb-run -a -s -noreset phoc -S -E ./test.sh
%{_sysconfdir}/phrog/autostart
%config(noreplace) %{_sysconfdir}/phrog/greetd-config.toml
%{_unitdir}/phrog.service
%{_unitdir}/phrog-gdm-shim.service
%{_datadir}/dbus-1/system.d/org.gnome.DisplayManager.phrog.conf
%{_userunitdir}/gnome-session@phrog.target.d/session.conf
%{_userunitdir}/mobi.phosh.Phrog.service
%{_userunitdir}/mobi.phosh.Phrog.target
Expand Down
Loading
Loading