Coder Social home page Coder Social logo

service.openelec.settings's People

Contributors

bignoid avatar bumpaneer avatar chewitt avatar codesnake avatar kwiboo avatar lrusak avatar lu-fi avatar mikebuzz avatar milhousevh avatar newphreak avatar ryandesign avatar sraue avatar stefansaraev avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

service.openelec.settings's Issues

service.openelec.settings not responding after screensaver was activated

OpenELEC settings plugin is working OK until the screensaver is activated. After returning from screensaver, the OpenELEC settings menu item will not open any more. If the settings menu is open while screensaver is activated, it is not possible to return to the main menu any more. After reboot, it works again.

It also seems that bluetooth standby (Sony PS3 BD Remote) does not work because of this - the remote will be awake and continue consuming ~ 13mA.

This happens on fresh installs of both OpenELEC 4.0.7 and 4.2.0 (service.openelec.settings version 0.3.x) on a Raspberry PI. On OpenELEC 3.2.4 with addon version 0.2.20 everything is fine - settings menu works after returning from screensaver and bluetooth remote goes to sleep nicely, consuming just ~ 0.13 mA.

Google didn't find anything about such an issue. Please let me know what I can do to debug it.

I turned on debug logging in XBMC, here are some fragments (from 4.0.7):

02:10:51 T:2869949520 NOTICE: Thread LanguageInvoker start, auto delete: false
02:10:51 T:2869949520 INFO: initializing python engine.
02:10:51 T:2869949520 DEBUG: CPythonInvoker(1, /usr/share/xbmc/addons/service.openelec.settings/default.py): start processing
02:10:52 T:2869949520 NOTICE: -->Python Interpreter Initialized<--
02:10:52 T:2869949520 DEBUG: CPythonInvoker(1, /usr/share/xbmc/addons/service.openelec.settings/default.py): the source file to load is /usr/share/xbmc/addons/service.openelec.settings/default.py
02:10:52 T:2869949520 DEBUG: CPythonInvoker(1, /usr/share/xbmc/addons/service.openelec.settings/default.py): setting the Python path to /usr/share/xbmc/addons/service.openelec.settings:/usr/share/xbmc/addons/script.module.pil/lib:/usr/share/xbmc/addons/xbmc.debug/:/usr/lib/python27.zip:/usr/lib/python2.7:/usr/lib/python2.7/plat-linux2:/usr/lib/python2.7/lib-tk:/usr/lib/python2.7/lib-old:/usr/lib/python2.7/lib-dynload:/usr/lib/python2.7/site-packages:/usr/lib/python2.7/site-packages/PIL:/usr/lib/python2.7/site-packages/gtk-2.0
02:10:52 T:2869949520 DEBUG: CPythonInvoker(1, /usr/share/xbmc/addons/service.openelec.settings/default.py): entering source directory /usr/share/xbmc/addons/service.openelec.settings
02:10:52 T:2869949520 DEBUG: CPythonInvoker(1, /usr/share/xbmc/addons/service.openelec.settings/default.py): instantiating addon using automatically obtained id of "service.openelec.settings" dependent on version 2.1.0 of the xbmc.python api
02:10:52 T:2869949520 INFO: CPythonInvoker(1, /usr/share/xbmc/addons/service.openelec.settings/default.py): script successfully run
02:10:52 T:2869949520 INFO: Python script stopped
02:10:52 T:2869949520 DEBUG: Thread LanguageInvoker 2869949520 terminating
02:10:52 T:3058184192 DEBUG: ------ Window Init (/usr/share/xbmc/addons/service.openelec.settings/resources/skins/Default/720p/mainWindow.xml) ------
02:10:52 T:3058184192 INFO: Loading skin file: /usr/share/xbmc/addons/service.openelec.settings/resources/skins/Default/720p/mainWindow.xml, load type: LOAD_ON_GUI_INIT
02:10:53 T:3058184192 DEBUG: POParser: loaded 277 strings from file /usr/share/xbmc/addons/service.openelec.settings/resources/language/English/strings.po
02:10:53 T:2935923792 DEBUG: Previous line repeats 13 times.
02:10:53 T:3058184192 DEBUG: CGUIMediaWindow::GetDirectory ()
02:10:53 T:3058184192 DEBUG: ParentPath = []
02:10:53 T:3058184192 ERROR: Control 1000 in window 13001 has been asked to focus, but it can't
02:10:53 T:3058184192 DEBUG: Activating window ID: 10138
02:10:53 T:3058184192 DEBUG: ------ Window Init (DialogBusy.xml) ------
02:10:53 T:2836395088 DEBUG: POParser: loaded 277 strings from file /usr/share/xbmc/addons/service.openelec.settings/resources/language/English/strings.po
[...]
02:11:51 T:3058184192 DEBUG: CAnnouncementManager - Announcement: OnScreensaverActivated from xbmc
02:11:51 T:3058184192 DEBUG: GOT ANNOUNCEMENT, type: 4, from xbmc, message OnScreensaverActivated
02:11:51 T:3058184192 DEBUG: ------ Window Init () ------
[...]
02:11:52 T:3058184192 DEBUG: CAnnouncementManager - Announcement: OnScreensaverDeactivated from xbmc
02:11:52 T:3058184192 DEBUG: GOT ANNOUNCEMENT, type: 4, from xbmc, message OnScreensaverDeactivated
02:11:52 T:3058184192 DEBUG: Activating window ID: 10138
02:11:52 T:3058184192 DEBUG: ------ Window Init (DialogBusy.xml) ------
02:11:52 T:3058184192 DEBUG: ------ Window Deinit (DialogBusy.xml) ------
02:11:52 T:3058184192 DEBUG: ------ Window Deinit () ------
02:11:52 T:3058184192 DEBUG: Activating window ID: 10138
02:11:52 T:3058184192 DEBUG: ------ Window Init (DialogBusy.xml) ------
02:11:52 T:3058184192 DEBUG: ------ Window Deinit (DialogBusy.xml) ------

update language files for next Helix's beta

I've made allot of changes to the Hebrew translation of the addon (and of course reviewed it), it would be nice to have the updated translation in the next beta release of Helix / OpenELEC 5.0.

Custom SSH port is overriden on reboots

While this isn't strictly supported in the UI, if you manually modify the /storage/.cache/services/sshd.conf file, you can pass an additional parameter to the SSH_ARGS variable such as -p 52245 which would run the SSH daemon on the non standard port defined. Upon rebooting however, this parameter will have been removed but other parameters such as PasswordAuthentication will remain.

I'm assuming its because the OpenELEC settings addons modifies this file on startup and because it has no port value in the actual OpenELEC settings UI, it just gets wiped out.

Currently I set chattr +i on the sshd.conf file to prevent it being written to, obviously this breaks the settings addons from writing to it.

While a specific user case, it would be nice if the settings addon didn't wipe out such arguments or if the Settings UI had a option to change the port.

Openelec addon, power saving, hdd sleep

The power saving settings for hdd sleep doesn't work as expected. At least for connected USB drives. If the power saving is enabled, the "sleep hard drive after" value isn't recognized. So, nothing happens (no sleep).

Up to version 3.0.6 only hdparm was used and this tool doesn't support usb drives. In 3.0.6 I compiled hd-idle from source, stored it under /storage and configured it in autostart.sh. Worked.
Since 3.2 hd-idle is implemented and it should be able to set a usb drive into sleep, after I activated hdd standby in settings addon. As I wrote, nothing happens and I can't see a hd-idle process.

Additional info: If I start hd-idle via autostart.sh and hdd sleep isn't enabled in the power saving section, the hd-idle process will be terminated.

For more detailed information, please have a look at my forum post [1].

[1] http://openelec.tv/forum/110-update-openelec/67056-since-3-2-0-a-process-is-killed-after-autostart-sh

wrong value for autoconnect / nameservers / timeservers saved

steps to reproduce

reboot to have a clean connman profile

 rm -rf /storage/.cache/connman/ethernet_00252288b496_cable/ && sync && reboot

after reboot. initial profile (method dhcp)

[ethernet_00252288b496_cable]
Name=Wired
AutoConnect=true
Modified=2013-06-04T15:55:37.808109Z
IPv4.method=dhcp
IPv4.DHCP.LastAddress=192.168.0.5
IPv6.method=auto
IPv6.privacy=disabled

now go to system -> openelec -> connections -> wired -> edit ->

here "connect automaticaly is enabled, don't touch it, don't change anything. just save. result:

[ethernet_00252288b496_cable]
Name=Wired
AutoConnect=false
Modified=2013-06-04T15:57:35.510343Z
IPv4.method=dhcp
IPv6.method=auto
IPv6.privacy=disabled
IPv4.DHCP.LastAddress=192.168.0.5
Nameservers=192.168.0.1;
Timeservers=192.168.0.1;
Domains=lan;

also note the nameservers/timeservers values there. I didn't changed them thru the UI.

the autoconnect thing I believe is a regression, I have tested this few versions back (don't remember which one tested last) and it worked then

Upon resume, openelec downloads the same update over and over

With automatic download and installation of openelec updates ON, when there's a new update openelec downloads the update. But if you don't reboot so it will do the install and instead suspend, it will download the same update again when you resume the next time. Apparently openelec does not check if it already has downloaded the update and just downloads it again.

That is frustrating because everytime I open my htpc to watch a movie or a video clip or whatever, it downloads the update and saturates my LAN internet connection...

Can you fix it please so it downloads it only once?

Network Connections Settings Bug 5.0.8 RPi2

Tried to configure IPv4 settings to manual (using network switch) for eth0, system allows user to edit, select manual and enter IP and Subnet however on selecting either 'save' or 'connect' prompt closes and the settings are not retained (type remains 'dhcp' and not changes can be seen). Have tried saving and immediately restarting, without success.

I believe the system should save the manual settings and show type 'manual' on 'Connections' screen with the specified address displayed

use initscripts for bluez / samba

  • bluez is implemented in a slightly different way, so I haven't included it in #18 maybe move start/stop logic to service.py ?
  • samba:
  • write SAMBA_USERNAME and SAMBA_PASSWORD to service_samba.conf, will be handled by initscript
  • clean up self.samba_conf self.samba_user_conf self.samba_default_conf self.samba_username_map self.samba_nmbd_pid self.samba_smbd_pid logic. will be handled by initscript

PS3 BD Remote doesn't hibernate when system suspends

Duplicating OpenELEC/OpenELEC.tv#3345:
Looks like OE doesn't enter bluetooth hibernate mode when it go to suspend.
When screensaver starts, the remote hibernates properly: bluetooth dongle begin blinking slowly and evenly,
but when I forcibly put system to sleep mode before streensaver starts - the dongle remain flashing quickly and disorderly - as it was when system was active, so that remote remain connected, and battery lasts about 1 week only.

Updates are downloaded over HTTP with no authentication.

Currently updates are downloaded over HTTP without any authentication whatsover.
This is dangerous because anybody at a priviliged point on the network of a user of OpenELEC can trigger an update at any time and own the device.

Can't manual upgrade OE if Russian language set

If I set XBMC language to Russian,
and try to upgrade my system with 'System/Check for updates now' menu,
notification about new version available pop ups, but dialog to start upgrade doesn't shows.
Having DEBUG=yes in environment, got following in the log:

ERROR: ## OpenELEC Addon ## system::check_updates_v2 ## ERROR: (UnicodeDecodeError('ascii', '\xd0\x9f\xd0\xbe\xd1\x81\xd0\xbb\xd0\xb5\xd0\xb4\xd0\xbd\xd1\x8f\xd1\x8f \xd0\xb2\xd0\xb5\xd1\x80\xd1\x81\xd0\xb8\xd1\x8f:  ', 0, 1, 'ordinal not in range(128)'))
NOTICE: Traceback (most recent call last):
                                              File "/home/stephan/projects/openelec-4.0/build.OpenELEC-Generic.x86_64-4.0.5/service.openelec.settings-0.3.17/.install_pkg/usr/share/xbmc/addons/service.openelec.settings/resources/lib/modules/system.py", line 735, in check_updates_v2
                                            UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in position 0: ordinal not in range(128)
DEBUG: ## OpenELEC Addon ## system::manual_check_update ## exit_function

openelec -> network menu inconsistency

to reproduce - install recent devel build. go to addon > network -> wired networks -> active -> enable / disable this multiple times.
problem 1. visual glitch. you see the same menu entries "appended" to window for less than a half a second
problem 2. dup menu entries appear after few clicks on enable/disable wired. http://i.imgur.com/vGRSzTQ.png. probably related to 1.

I don't understand how menu loader works. so @lfiebach I'd appreciate if you look at this.

Updated Turkish Translation.

I finished Turkish translation on transifex. If you don't mind please update Turkish translation from transifex.

Thank you.

Can't connect wiimote anymore

With OE 4.x I can't connect the wiimote anymore by using the 1+2 button combination. I can only get it to connect by using the OE settings/bluetooth menu (using a mouse) and choosing 'trust & connect'. After that I can use the wiimote. But if I turn the wiimote off or reboot OE the wiimote can't connect itself again.

This used to work but was probably by virtue of the xbmc-wiimote add-on. Even through upgrades from 3.x to 4.x. Only upgrading to 4.2.x finally broke the wiimote functionality. I tried a clean install of 4.2.1 but that didn't help. I also can't completely revert to 3.2 or 4.0 because the xbmc-wiimote addon doesn't seem to be available anymore.

Renamed backup file cannot be recovered

Openelec OS settings accepts backup files for recovery even if they are renamed for any reason.(User can add supplementary information to the filename). It untars the file then ask confirmation if the configuration should be recovered then restarts the PC. However nothing happens. no configuration is recovered at all. The recovery is successful only if the filename is reverted back to the original.

There should be a filnename check and notification if the recovery is not possible. The best would be the successful recovery regardless of filename change.

Eliminate xbmc.sleep(100)

https://github.com/OpenELEC/service.openelec.settings/blob/master/service.py#L147

Just wondering if this is really necessary, what is it for - just to tell if xbmc.abortRequested is True?

Couldn't a blocking read from a queue be used here, with something stuffed into the queue during cxbmcm.onAbortRequested(), which would mean the main thread only "wakes" when the abort has occurred, and sleeps (blocks) at all other times?

I know it's only waking 10 times a second, but this seems to account for about 1-2% CPU on a 1GHz Pi (hard to say exactly, but it's noticeably lower when not waking every 1/10th second).

Can work on a PR if you think this is valid.

please include HD-Idle again

In vs 0.3.11 HD-Idle was dropped. Please include this again or another measn to spindown the media hard disk.

Can't pair Sony Sixaxis Gamepad

With the new version of OpenElec Settings Add-on, I can pair easily Bluetooth device.

But not a Sony Sixaxis Gamepad. I tested it on my Gnu/Linux Laptop and it work. But not in OpenElec Settings Add-on.

Addon Czech translation

Hi,

I've completed Czech translation of service.openelec.settings addon on End of May , pls resync with Transifex project for next release.

Tnx

kob04

backup .ssh folder

Hi,

BACKUP_DIRS, which is used in do_backup includes XBMC_USER_HOME, USER_CONFIG and CONFIG_CACHE.

CONFIG_CACHE does include ./services/sshd.conf.

If you disable ssh password authentication in ./services/sshd.conf as recommended, then backup and restore your configuration, you will be locked out from ssh, as the .ssh folder which includes the authorized_keys is not backed up.

Because of this it would be very good to backup the .ssh folder as well.

Thanks
Yannik

default hostname is lowercase

The default hostname should be "OpenELEC" not "openelec" .. the avahi changes I pushed to master recently allow zeroconf broadcast of the hostname in uppper/lower case for OS that support mixed case display (if they don't support, it appears in uppercase).

Show Update Notification

I noticed in this release that when I take off Show Update Notification and then reboot, the blue image is back on.

The on/off image that turns blue when on and greyed out when off.

move lcdproc to initscript

now we start LCDd from the addon. in resources/lib/modules/system.py def set_lcd_driver

I think it would be a good idea to move this back to an initscript. as we did for bluez/avahi/samba/...

if we do this, we shoud re-use the good old /etc/init.d/63_lcdproc from openelec-3.0 branch

@sraue @lfiebach I don't know how important lcdproc is, I have no hardware to test so I don't even know how it works. I just noticed that we start it via settings addon while trying to fix a weird bug where LCDd was not restarted on driver change (see d1204b1).

if you decide to rework, consider this as very low prio. if not - feel free to close this ticket. in general I am ok with lcdproc as it is now if it works as intended. the only issue we had IMO was os.system() vs subprocess.Popen(), which is already fixed in d1204b1

clean install of 3.2.4: fc-cache error on start

After a clean install of openelec 3.2.4 I get an "fc-cache: not found" error on startup:

/sbin/init: /etc/init.d/35_fontconfig: line 34: fc-cache: not found

And yes, there is no fc-cache

OpenELEC:~ # type fc-cache
fc-cache: not found

Regardless of this error, Openelec/XBMC works without a problem.
Has the error something to do with the following point of the changelog?

  • fontconfig: do not install binaries

Forum post:
http://openelec.tv/forum/110-update-openelec/68328-since-3-2-4-fc-cache-error-on-boot

connman.py - mounting flexability

It would be very convenient if connman.py took a MountPoint beginning with "/" (ie: /storage/othervideo) to be mount point instead of tossing everything in media directory.

full access for OpenELEC settings even for non-privileged users

System: RaspberryPi, Kodi with OpenELEC version 5.0.4, Confluence theme.

A limited user account (LOCKED: programs & script windows, file manager, settings "all", add-on manager | UNlocked music windows, videos window, pictures window) has full access to Settings / OpenELEC / Services:

  • whole Samba Config including password in plaintext
  • whole SSH Config (as far as I know "root" and "openelec" with no possibility to change)

Would it be possible to allow OpenELEC menu only for master-users?

Problems pairing Bluetooth Keyboard (Apple)

Hi there,

I have problems pairing an Apple BT Keyboard in current OE devel (>3.0.3) in the OE settings plugin. The BT stack works, pairing an iPhone worked flawlessly (got asked to enter PIN in OE and then had to enter that PIN on the iPhone).

I press the Power Button on the Apple BT KB for more than 5 seconds to set it into pairing mode. Then the Apple BT KB shows up in the device list. When I press "Trust and Connect" it is shown up as connect but not at trusted. The KB is still in pairing mode and did not get asked for a PIN by OE! Needless to say the KB does not work then. After disconnecting and pressing "Trust and Connect" or "Connect" again, I just get a BT error.

Please find the respective part of the debug log here:
http://sprunge.us/iKKJ

Thanks for caring,
JC

Unable to configure maximum-length WPA/WPA2 passphrase

Reported in http://openelec.tv/forum/88-wlan/72207-wlan-advanced-configuration#113836 but I have seen similar reports in the past. The settings app GUI prevents you from entering a passphrase longer than 55-ish characters but the maximum permissible length of WPA or WPA2 keys is 63 ascii characters or 64 hex characters (and a minimum of 8 characters). If you create the connman service profile manually the connection works so this is definitely a settings-app issue.

Check storage space on boot

If /storage has < xx% free (lets say 10%) pop a message up on screen to the user on boot.

Fanart and XBMC addon backups could easily eat all space on storage

@lfiebach moving this here... could be useful I think. :-)

Network dialog not working in addon when field is blank (Master build)

It looks like this XBMC Helix commit from @jmarshallnz has changed (or possibly broken) the behaviour of the network dialog when dealing with initially blank fields.

See forum discussion here and preceding posts (with screenshots).

Not sure if this problem needs to be fixed in the OpenELEC Settings addon (with a non-blank default field?) or if an additional fix is required in XBMC to correct the problem introduced by the above change.

Chances are this change affects more than just this addon, but I don't have any other examples to prove that - for instance, the SMB Client -> WINS server field is unaffected as the default field value is 0.0.0.0, not blank.

I'm raising this issue so that it can be addressed one way or the other, please close if decided the addon is not the right place for the fix.

To reproduce:

  1. Disable DHCP on the LAN
  2. Reboot device that has until now been using DHCP for address assignment
  3. Open OpenELEC Settings addon and assign a manual/static IP address
  4. The Gateway address will be blank and you will be unable to open the IP address dialog. The DNS address fields will be affected in the same way.

Add RunScript() parameters

Is it possible to add some RunScript() parameters so we can open certain parts of the addon from a onclick skin action. For example:

  • RunScript(service.openelec.settings?action=editconnection)
    This could open only the "Edit" window in "Connections" so you can change your connection settings.
  • RunScript(service.openelec.settings?action=updatecheck)
    This can check for any system updates.

Cheers
Nessus

Wizard network setup does not work.

The Addon runs as a service addon in xbmc.
On startup the Addon will load all files from ./resources/lib/modules and load's a class into the dicttionary dictModules.
Then it checks if an start_service function exists into the classes and call them.
Now the Main Module OE.PY checks if the Wizard already finished, if not the wizard for each class will be called.
The Problem happens into the connman.py module.
When the function "menu_connections" should create the network list, the python code stops on line 1812. The dbus get_object call does not return.

Scan for networks while in AP-mode and connect to them.

For now the only (kind of normal) way to connect Openelec to a wireless network is to connect Openelec wired on a network with a monitor attached and use your phone/tablet as a remote (if the webserver is enabled of course) or connect a mouse to it.

It should be nice if the option to scan for wireless networks, while Openelec is in AP-mode, is available trough a web interface which can be visited from a browser on a pc, laptop, tablet or phone. On one of these devices you can select and connect to a wireless netwerk and when connected to a wireless network, AP-mode turns off and you can find Openelec with a random XBMC remote and connect to Openelec from any device in the network.

network autoconnect

At OE install and set up network connection ... i get some strange behaviour.

At beginning auto connect is on.

Then I go to network settings, change dhcp -> manual, change network ip , ok , save.

After this change the auto connect is off. Next reboot no network connection :(

optional vpn support

vpn support should be optional, for people who compile OE without PPTP_SUPPORT or/and OPENVPN_SUPPORT

IMO, the easiest way (if not posible to ask connman whether it supports vpn / what types are supported) is to check the content of /usr/lib/connman/plugins-vpn/

if /usr/lib/connman/plugins-vpn does not exist -> hide "virtual private networks" in addon -> network
if /usr/lib/connman/plugins-vpn exists, check the contents, and enable ONLY those types that make sense in addon -> network -> vpn -> add new vpn -> vpn type ->

network window is not available

Hello,
network window is not available when dbus report the p2p technologie.
downgrade connman from 1.25 to 1.22 solves the problem.

here is the python dbus command used in the connman.py script:

OpenELEC:/ # python
Python 2.7.3 (default, Sep 7 2014, 03:55:42)
[GCC 4.9.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.

import dbus
dbusSystemBus = dbus.SystemBus()
dbusConnmanManager = dbus.Interface(dbusSystemBus.get_object('net.connman' , '/'), 'net.connman.Manager')
technologie_properties = dbusConnmanManager.GetTechnologies()
for (path, technologie) in technologie_properties:
... print path
... print technologie
...
/net/connman/technology/p2p
dbus.Dictionary({dbus.String(u'Connected'): dbus.Boolean(False, variant_level=1), dbus.String(u'Tethering'): dbus.Boolean(False, variant_level=1), dbus.String(u'Type'): dbus.String(u'p2p', variant_level=1), dbus.String(u'Name'): dbus.String(u'P2P', variant_level=1), dbus.String(u'Powered'): dbus.Boolean(False, variant_level=1)}, signature=dbus.Signature('sv'))
/net/connman/technology/wifi
dbus.Dictionary({dbus.String(u'Connected'): dbus.Boolean(False, variant_level=1), dbus.String(u'Tethering'): dbus.Boolean(False, variant_level=1), dbus.String(u'Type'): dbus.String(u'wifi', variant_level=1), dbus.String(u'Name'): dbus.String(u'WiFi', variant_level=1), dbus.String(u'Powered'): dbus.Boolean(True, variant_level=1)}, signature=dbus.Signature('sv'))
/net/connman/technology/ethernet
dbus.Dictionary({dbus.String(u'Connected'): dbus.Boolean(True, variant_level=1), dbus.String(u'Tethering'): dbus.Boolean(False, variant_level=1), dbus.String(u'Type'): dbus.String(u'ethernet', variant_level=1), dbus.String(u'Name'): dbus.String(u'Wired', variant_level=1), dbus.String(u'Powered'): dbus.Boolean(True, variant_level=1)}, signature=dbus.Signature('sv'))
^C
KeyboardInterrupt

Samba configuration

It would great if Samba could be better configured in xbmc than it is now. Prefereably to have a new window in which all settings which are currently in samba.conf could be manipulated.

If this would be accepted, I can work on this.

implement xkb variants

for each keyboard layout, parse /usr/share/X11/xkb/rules/base.xml
variantList -> variant -> for each -> description and name.

if there are variants available for a layout - display an entry (two for layout1 and layout2) in addon -> system -> keyboard. another way is to show second menu to select variant (if available) after selecting layout.

there should be always default "" (for no variant). save the name into .cache/xbc/layout -> XKBVARIANT=...

if you implement it as a second popup menu - it must be clear that it is "variant selection dialog", and the selection must be presented in the addon UI after changing.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.