I'm integrating google assistant on linux febora os. The latest version of google assistant is throwing an error for google-assistant-demo sample.
(env) [root#artik ~]# /env/bin/google-assistant-demo
usage: google-assistant-demo [-h] [--credentials OAUTH2_CREDENTIALS_FILE]
--device_model_id DEVICE_MODEL_ID
[--project_id PROJECT_ID]
google-assistant-demo: error: the following arguments are required: --device_model_id
I'm failing to registering the device model.
(env) [root#artik ~]# googlesamples-assistant-devicetool register --model 'my-model-identifier' \
> --type LIGHT --trait action.devices.traits.OnOff \
> --manufacturer 'Assistant SDK developer' \
> --product-name 'Assistant SDK light' \
> --description 'Assistant SDK light device' \
> --device 'my-device-identifier' \
> --nickname 'My Assistant Light'
Usage: googlesamples-assistant-devicetool register [OPTIONS]
Error: Missing option "--client-type". Choose from SERVICE, LIBRARY
What is this register the device model? Google assistant will not work without registering the device model?
I am not sure what issue you have. Can you not add the client-type argument to your command to register it?
(env) [root#artik ~]# googlesamples-assistant-devicetool register --model 'my-model-identifier' \
> --type LIGHT --trait action.devices.traits.OnOff \
> --manufacturer 'Assistant SDK developer' \
> --product-name 'Assistant SDK light' \
> --description 'Assistant SDK light device' \
> --device 'my-device-identifier' \
> --nickname 'My Assistant Light'
> --client-type 'SERVICE'
Using the SDK expects a Device Model and Device Id, as mentioned in the documentation.
If you're using the Google Assistant Library (with hotword) you should enter LIBRARY. Otherwise you should use SERVICE.
Try to register the model online with the Actions Console
Tutorial: Register the Device Model
Related
I'm trying to run an Xorg server in Docker, due to the host OS not having any X installed, nor can it preserve installed packages between updates (however, Docker containers are preserved).
My goal is to run an X app in "kiosk" mode (no desktop environment, no window manager, just a single X app taking up the whole display), confined to the Docker container - specifically, Chromium to open the web management interface of the host (which is embedded in the distro).
After reading a swathe of Xorg/Xinput articles, setup guides, manuals and whatnot, and I'm still not sure what's going wrong.
This is my current Dockerfile:
FROM alpine:3.16
# Install Xorg
RUN \
apk add --no-cache \
xorg-server eudev mesa \
xinput xinit xhost evtest \
xf86-input-libinput xf86-video-fbdev xf86-input-evdev \
dbus xrandr xset xsetroot \
xeyes libinput mesa-dri-swrast mesa-dri-gallium mesa-egl
# Install Chromium
RUN \
apk add --no-cache \
chromium
CMD [ "/usr/bin/xinit", "/usr/bin/chromium-browser", "--no-sandbox", "--kiosk" ]
Then run it by passing in all the necessary udev entries:
docker run --rm -it \
--device=/dev/input \
--device=/dev/console \
--device=/dev/dri \
--device=/dev/fb0 \
--device=/dev/tty \
--device=/dev/tty1 \
--device=/dev/vga_arbiter \
--device=/dev/snd \
--cap-add=SYS_TTY_CONFIG \
alpine-xorg:latest http://172.17.0.1:8123/
In my case, I'm trying to use a 7" touchscreen HDMI display, designed for Raspberry Pis (however, I'm not using a Pi, but an Intel based mini PC).
Xorg logs aren't much help, they contain just init information about Xinput, no devices identified or anything.
Here's the log: https://paste-bin.xyz/65152
I've also fiddled around with evtest - in my case, /dev/input/event3 corresponds to the touchscreen's input, and evtest successfully recognises them: https://paste-bin.xyz/65154
However xinput doesn't even see these as a possible device:
a369b238e0f1:/var/log# xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
According to the Xorg logs, the appropriate init scripts have been loaded:
[ 3724.820] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
/usr/share/X11/xorg.conf.d/10-evdev.conf exists, and contains all the needed entries:
#
# Catch-all evdev loader for udev-based systems
# We don't simply match on any device since that also adds accelerometers
# and other devices that we don't really want to use. The list below
# matches everything but joysticks.
Section "InputClass"
Identifier "evdev pointer catchall"
MatchIsPointer "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
EndSection
Section "InputClass"
Identifier "evdev keyboard catchall"
MatchIsKeyboard "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
EndSection
Section "InputClass"
Identifier "evdev touchpad catchall"
MatchIsTouchpad "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
EndSection
Section "InputClass"
Identifier "evdev tablet catchall"
MatchIsTablet "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
EndSection
Section "InputClass"
Identifier "evdev touchscreen catchall"
MatchIsTouchscreen "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
EndSection
Where is this setup going wrong, why can't xinput register the evdev devices when the necessary events are clearly there and usable?
I am using the below script for publishing the ipa to appcenter.
ipaPath=<PATH TO MY IPA FILE>
echo "Found ipa at $ipaPath"
if [[ -z ${ipaPath} ]]
then
echo "No ipas were found, skip publishing to App Center"
else
appcenter login
appcenter distribute release \
--group Collaborators \
--file "${ipaPath}" \
--release-notes 'App submission' \
--app <username_or_organization>/<application_identifier> \
--quiet
fi
I need to exit if the login is failed and don't want to run the distribute command. how to check the login status and handle the error?
You could use command substitution to capture the result of appcenter login into a variable, then search the variable contents for a specific string (or lack of). For example:
reply="$(appcenter login --token ${token})"
if [[ $reply == *"Error"* ]]; then
echo "A problem occurred! ${reply}"
else
appcenter distribute release
...
fi
Getting libgdbm.so not found error, couldn't resolve even after installing proper package. Also I couldn't find proper documentation on compiling from source and installing.
To build avahi on Ubuntu I would suggest the following steps:
sudo apt-get build-dep avahi # (you'll need to have enabled deb-src lines in /etc/apt/sources.list for this to work, or you can use the software settings to enable source packages)
Then additionally install xml2man and python-gi-dev
sudo apt install python-gi-dev xml2man
Then configure with these options:
./configure --disable-gtk --disable-qt3 --disable-mono
Avahi always errors about a build dependency it can't find, requiring you to explicitly disable those items. Above I suggest to disable some old toolkits (gtk2 and qt3) plus mono support. If you get other errors you can generally use a similar --disable-X option to disable those. But for Ubuntu generally you can compile almost everything else.
gtk and qt3 is disabled by default in the latest git, but not the latest release.
A quick place to check for the required ubuntu deps would be the travis configuration: https://github.com/lathiat/avahi/blob/master/.travis.yml
Out of curiosity, what is the reason you're building from source? The Avahi packages in Ubuntu 16.04 should work well.
Compilation steps:
1) Install dependency
export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/
sudo apt-get install libqt4-dev libtool libglib2.0-dev intltool build-essential libgtk2.0-dev libdaemon-dev xmltoman
2) Generate configure file
bash autogen.sh
Ignore following error
checking for QT5... no
configure: error: Package requirements ( Qt5Core >= 5.0.0 ) were not met:
No package 'Qt5Core' found
3) Create makefile
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-static \
--disable-mono \
--disable-monodoc \
--disable-python \
--disable-qt3 \
--disable-qt4 \
--disable-qt5 \
--disable-gdbm \
--enable-core-docs \
--with-distro=none \
--with-systemdsystemunitdir=no \
--disable-shared \
--disable-gtk
4) Make and install
make
sudo make install
[Edit] if debugging with custom logs/code use --disable-shared in configure else changes wont reflect.
I'm trying to sign my electron app using electron-osx-sign:
electron-packager . $APP --platform=darwin --arch=x64 \
--out dist \
--ignore=build \
--ignore=config/development.json \
--overwrite \
--prune \
--icon=appicon.icns \
--app-bundle-id="com.example.myapp" \
--build-version=$BUILD --app-version=$VERSION \
electron-osx-sign "dist/myapp/myapp.app" \
--identity="$DEVELOPER_KEY"
it keeps showing the following error:
Command failed: codesign --sign Developer ID Application: XXXXXXXXXX --force dist/myapp/myapp.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework
where Developer ID Application: XXXXXXXXXX is a valid cert.
My electron-osx-sign version is 0.4.4 and electron-packager is 8.0.0
Anyone can help?
Thanks.
After some googling, it seems there are some problems using codesign on macOS 10.12,
Please refer to this post.
I've also post the solution in this link on the electron-osx-sign GitHub issue page.
I've tried reading many tutorials.
I've spent hours on google, and stackoverflow trying answer.
So far I've read: Trying to compile the FFMPEG libraries for iPhoneOS platform with armv6 and arv7 architecture FFMPEG integration on iphone/ ipad project and https://github.com/lajos/iFrameExtractor few of the many.
I'm trying to build this library for iOS 7/Xcode 5 compatibility but it's not working.
A common error I'd get is:
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
yasm/nasm not found or too old. Use --disable-yasm for a crippled build.
If you think configure made a mistake, make sure you are using the latest
version from Git. If the latest version fails, report the problem to the
ffmpeg-user#ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net.
Include the log file "config.log" produced by configure as this will help
solving the problem.
I'd also get many more once that is finished. Such as:
rm: illegal option -- .
usage: rm [-f | -i] [-dPRrvW] file ...
unlink file
make: *** [clean] Error 64
I've mostly tried using this command to start, but it always crashes on "make clean":
./configure \
--cc=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc \
--as='/usr/local/bin/gas-preprocessor.pl /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc' \
--sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk \
--target-os=darwin \
--arch=arm \
--cpu=cortex-a8 \
--extra-cflags='-arch armv7' \
--extra-ldflags='-arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk' \
--prefix=compiled/armv7 \
--enable-cross-compile \
--enable-nonfree \
--enable-gpl \
--disable-armv5te \
--disable-swscale-alpha \
--disable-doc \
--disable-ffmpeg \
--disable-ffplay \
--disable-ffprobe \
--disable-ffserver \
--disable-asm \
--disable-debug
To use the mooncatventures (our) ffmpegdecoderFramework, go into build settings
click on the arch and remove the armv7s.
you must also change build active architechure only to no.
This answer from mientus worked for me :
https://stackoverflow.com/a/19370679/661720
Support universal ffmpeg library for iOS7 and XCode5:
Install gas-preprocessor
Click on the ZIP icon to download
https://github.com/mansr/gas-preprocessor. Copy gas-preprocessor.pl to
/usr/bin directory. Change permission of gas-preprocessor.pl by
setting the privilege to Read & Write for all.
Download my shell script from: https://gist.github.com/m1entus/6983547
Run sh build-ffmpeg.sh.