Implement prerequisites necessary for SearchProvider

This commit is contained in:
Felix Häcker 2019-04-25 23:01:34 +02:00 committed by Felix Häcker
parent bb0cf5b547
commit 8757fb8e9d
9 changed files with 207 additions and 217 deletions

393
Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -23,6 +23,7 @@
"--socket=pulseaudio", "--socket=pulseaudio",
"--device=dri", "--device=dri",
"--own-name=org.mpris.MediaPlayer2.Podcasts", "--own-name=org.mpris.MediaPlayer2.Podcasts",
"--own-name=org.gnome.Podcasts.Devel.SearchProvider",
"--env=USE_PLAYBING3=1" "--env=USE_PLAYBING3=1"
], ],
"build-options" : { "build-options" : {

View File

@ -23,6 +23,7 @@
"--socket=pulseaudio", "--socket=pulseaudio",
"--device=dri", "--device=dri",
"--own-name=org.mpris.MediaPlayer2.Podcasts", "--own-name=org.mpris.MediaPlayer2.Podcasts",
"--own-name=org.gnome.Podcasts.SearchProvider",
"--env=USE_PLAYBING3=1" "--env=USE_PLAYBING3=1"
], ],
"build-options" : { "build-options" : {

View File

@ -28,6 +28,7 @@ reqwest = "0.9.12"
serde_json = "1.0.39" serde_json = "1.0.39"
# html2text = "0.1.8" # html2text = "0.1.8"
html2text = { git = "https://github.com/jugglerchris/rust-html2text" } html2text = { git = "https://github.com/jugglerchris/rust-html2text" }
search-provider = { git = "https://gitlab.gnome.org/World/Rust/search-provider" }
[dependencies.gettext-rs] [dependencies.gettext-rs]
git = "https://github.com/danigm/gettext-rs" git = "https://github.com/danigm/gettext-rs"

View File

@ -65,4 +65,23 @@ podcasts_resources = gnome.compile_resources(
source_dir: meson.current_build_dir() source_dir: meson.current_build_dir()
) )
# Search Provider
service_conf = configuration_data()
service_conf.set('appid', application_id)
service_conf.set('bindir', podcasts_bindir)
configure_file(
input: 'org.gnome.Podcasts.SearchProvider.service.in',
output: '@0@.SearchProvider.service'.format(application_id),
configuration: service_conf,
install_dir: join_paths(datadir,'dbus-1', 'services')
)
search_conf = configuration_data()
search_conf.set('appid', application_id)
configure_file(
input: 'org.gnome.Podcasts.search-provider.ini',
output: '@0@.search-provider.ini'.format(application_id),
configuration: search_conf,
install_dir: join_paths(datadir, 'gnome-shell', 'search-providers'),
)
meson.add_install_script('../../scripts/compile-gschema.py') meson.add_install_script('../../scripts/compile-gschema.py')

View File

@ -0,0 +1,3 @@
[D-BUS Service]
Name=@appid@.SearchProvider
Exec=@bindir@/gnome-podcasts --gapplication-service

View File

@ -66,6 +66,7 @@
<kudos> <kudos>
<kudo>ModernToolkit</kudo> <kudo>ModernToolkit</kudo>
<kudo>HiDpiIcon</kudo> <kudo>HiDpiIcon</kudo>
<kudo>SearchProvider</kudo>
</kudos> </kudos>
<launchable type="desktop-id">@appid@.desktop</launchable> <launchable type="desktop-id">@appid@.desktop</launchable>
<url type="homepage">https://wiki.gnome.org/Apps/Podcasts</url> <url type="homepage">https://wiki.gnome.org/Apps/Podcasts</url>

View File

@ -0,0 +1,5 @@
[Shell Search Provider]
DesktopId=@appid@.desktop
BusName=@appid@.SearchProvider
ObjectPath=/org/gnome/Podcasts/SearchProvider
Version=2

0
podcasts-gtk/resources/org.gnome.Podcasts.service.in Normal file → Executable file
View File