pull config from krunnerrc or env
- setup shell
This commit is contained in:
parent
46146d547e
commit
8eec95fd64
22
krha.py
22
krha.py
@ -1,10 +1,12 @@
|
|||||||
#!/usr/bin/python3
|
#!/usr/bin/python3
|
||||||
import dbus.service
|
|
||||||
|
from configparser import ConfigParser
|
||||||
from dbus.mainloop.glib import DBusGMainLoop
|
from dbus.mainloop.glib import DBusGMainLoop
|
||||||
from gi.repository import GLib
|
from gi.repository import GLib
|
||||||
import requests
|
import dbus.service
|
||||||
import json
|
import json
|
||||||
import os
|
import os
|
||||||
|
import requests
|
||||||
|
|
||||||
DBusGMainLoop(set_as_default=True)
|
DBusGMainLoop(set_as_default=True)
|
||||||
|
|
||||||
@ -17,8 +19,22 @@ iface = "org.kde.krunner1"
|
|||||||
class Runner(dbus.service.Object):
|
class Runner(dbus.service.Object):
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
dbus.service.Object.__init__(self, dbus.service.BusName("dev.suah.krha", dbus.SessionBus()), objpath)
|
dbus.service.Object.__init__(self, dbus.service.BusName("dev.suah.krha", dbus.SessionBus()), objpath)
|
||||||
|
config = ConfigParser()
|
||||||
|
config_path = os.path.expanduser('~/.config/krunnerrc')
|
||||||
|
config.read(config_path)
|
||||||
|
|
||||||
|
try:
|
||||||
|
self.api_key = config.get('Runners][HomeAssistant', 'api_key')
|
||||||
|
except:
|
||||||
self.api_key = os.environ.get("HA_API_KEY", "")
|
self.api_key = os.environ.get("HA_API_KEY", "")
|
||||||
self.ha_url = os.environ.get("HA_URL", "").rstrip('/')
|
|
||||||
|
try:
|
||||||
|
self.ha_url = config.get('Runners][HomeAssistant', 'ha_url')
|
||||||
|
except:
|
||||||
|
self.ha_url = os.environ.get("HA_URL", "")
|
||||||
|
|
||||||
|
if self.ha_url:
|
||||||
|
self.ha_url = self.ha_url.rstrip('/')
|
||||||
|
|
||||||
@dbus.service.method(iface, in_signature='s', out_signature='a(sssida{sv})')
|
@dbus.service.method(iface, in_signature='s', out_signature='a(sssida{sv})')
|
||||||
def Match(self, query: str):
|
def Match(self, query: str):
|
||||||
|
20
shell.nix
Normal file
20
shell.nix
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
{ pkgs ? import <nixpkgs> { } }:
|
||||||
|
with pkgs;
|
||||||
|
let
|
||||||
|
pythonEnv = python3.withPackages (
|
||||||
|
p: with p; [
|
||||||
|
dbus-python
|
||||||
|
pygobject3
|
||||||
|
requests
|
||||||
|
]
|
||||||
|
);
|
||||||
|
in pkgs.mkShell {
|
||||||
|
shellHook = ''
|
||||||
|
PS1='\u@\h:\w; '
|
||||||
|
'';
|
||||||
|
buildInputs = with pkgs; [
|
||||||
|
pythonEnv
|
||||||
|
wrapGAppsHook
|
||||||
|
gobject-introspection
|
||||||
|
];
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user