{"id":301066,"date":"2025-06-18T23:45:34","date_gmt":"2025-06-18T23:45:34","guid":{"rendered":"https:\/\/peraltafinancing.com\/uncategorized\/use-vial-in-linux-without-configuring-udev-and-remain-secure\/"},"modified":"2025-06-18T23:45:34","modified_gmt":"2025-06-18T23:45:34","slug":"use-vial-in-linux-without-configuring-udev-and-remain-secure","status":"publish","type":"post","link":"https:\/\/fivemor.com\/?p=301066","title":{"rendered":"Use Vial in Linux Without Configuring udev (and Remain Secure)"},"content":{"rendered":"<p> <br \/>\n<\/p>\n<div>\n<p class=\"last-updated\"><em>Last updated on April 6, 2025<\/em><\/p>\n<p><a href=\"https:\/\/get.vial.today\/\">Vial<\/a> is a GUI program that can configure <a href=\"https:\/\/qmk.fm\/\">QMK<\/a> input devices in real time. In Linux, the default configuration usually stops Vial from accessing the input devices. The <a href=\"https:\/\/get.vial.today\/manual\/linux-udev.html\">official document suggests configuring udev rules<\/a>. For someone who doesn&#8217;t frequently configure via Vial, this seems to be overkilling and a bit insecure. After all, it opens up the access to the input devices to the user indefinitely, which may be exploited by malicious software.<\/p>\n<p>In this post, I discuss a method that uses Vial in Linux without configuring udev. I believe this method is more secure than configuring udev. Furthermore, this method is arguably more convenient if you only use Vial occasionally.<\/p>\n<h2>With the Vial Web App<\/h2>\n<p>First, visit the <a href=\"https:\/\/vial.rocks\/\">Vial web app<\/a> in a supported <a href=\"https:\/\/www.chromium.org\/chromium-projects\/\">Chromium-based browser<\/a>. Click &#8220;Start Vial&#8221; and the web app now should hang, due to insufficient permissions to access the input device. Open a new browser tab and visit chrome:\/\/device-log\/. You&#8217;ll see a line like the following:<\/p>\n<pre>Failed to open '\/dev\/hidrawN': FILE_ERROR_ACCESS_DENIED<\/pre>\n<p>Where <code>N<\/code> is a number. This is saying that the browser is unable to access the device <code>\/dev\/hidrawN<\/code>, which represents the QMK input device in Linux.<\/p>\n<p>Then grant yourself with the read and write permissions to this input device with the following command:<\/p>\n<pre><code class=\"language-shell\">sudo setfacl -m \"u:${USER}:rw\" \/dev\/hidrawN<\/code><\/pre>\n<p>Refresh the Vial page and try again. You should be able to access the device now.<\/p>\n<p>After configuring, to remove the permissions, simply unplug and plug the input device back in, or execute the following command:<\/p>\n<pre><code class=\"language-shell\">sudo setfacl -x \"u:${USER}\" \/dev\/hidrawN<\/code><\/pre>\n<p>Or, if you are OK with leaving the permissions in place for a while, you can do nothing and the permissions will be gone the next time you reboot or unplug the input device.<\/p>\n<h2>With the Vial Desktop App<\/h2>\n<p>So far I couldn&#8217;t find out a way to figure out the device file (<code>\/dev\/hidrawN<\/code>) from the Vial desktop app. I would recommend following the steps in the previous section to figure out the device file that represents the input device and grant permissions, and then use the Vial desktop app to access the input device.<\/p>\n<\/p><\/div>\n\n","protected":false},"excerpt":{"rendered":"<p>Last updated on April 6, 2025 Vial is a GUI program that can configure QMK input devices in real time. In Linux, the default configuration usually stops Vial from accessing the input devices. The official document suggests configuring udev rules. For someone who doesn&#8217;t frequently configure via Vial, this seems to be overkilling and a [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[133155],"tags":[133157,19046,25552,2765,133158,133156],"dealstore":[],"offerexpiration":[],"class_list":["post-301066","post","type-post","status-publish","format-standard","hentry","category-gnu-linux","tag-configuring","tag-linux","tag-remain","tag-secure","tag-udev","tag-vial"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Use Vial in Linux Without Configuring udev (and Remain Secure) - Som2ny Network<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fivemor.com\/?p=301066\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Use Vial in Linux Without Configuring udev (and Remain Secure) - Som2ny Network\" \/>\n<meta property=\"og:description\" content=\"Last updated on April 6, 2025 Vial is a GUI program that can configure QMK input devices in real time. In Linux, the default configuration usually stops Vial from accessing the input devices. The official document suggests configuring udev rules. For someone who doesn&#8217;t frequently configure via Vial, this seems to be overkilling and a [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fivemor.com\/?p=301066\" \/>\n<meta property=\"og:site_name\" content=\"Som2ny Network\" \/>\n<meta property=\"article:published_time\" content=\"2025-06-18T23:45:34+00:00\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fivemor.com\/?p=301066#article\",\"isPartOf\":{\"@id\":\"https:\/\/fivemor.com\/?p=301066\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\/\/fivemor.com\/#\/schema\/person\/b85e3c3dc0e1daea076524dc8810c371\"},\"headline\":\"Use Vial in Linux Without Configuring udev (and Remain Secure)\",\"datePublished\":\"2025-06-18T23:45:34+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fivemor.com\/?p=301066\"},\"wordCount\":352,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fivemor.com\/#organization\"},\"keywords\":[\"Configuring\",\"Linux\",\"Remain\",\"Secure\",\"udev\",\"Vial\"],\"articleSection\":[\"GNU\/Linux\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fivemor.com\/?p=301066#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fivemor.com\/?p=301066\",\"url\":\"https:\/\/fivemor.com\/?p=301066\",\"name\":\"Use Vial in Linux Without Configuring udev (and Remain Secure) - Som2ny Network\",\"isPartOf\":{\"@id\":\"https:\/\/fivemor.com\/#website\"},\"datePublished\":\"2025-06-18T23:45:34+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fivemor.com\/?p=301066#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fivemor.com\/?p=301066\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fivemor.com\/?p=301066#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/fivemor.com\/?bp_activities=1\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Use Vial in Linux Without Configuring udev (and Remain Secure)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fivemor.com\/#website\",\"url\":\"https:\/\/fivemor.com\/\",\"name\":\"Som2ny Network\",\"description\":\"Daily Deals\",\"publisher\":{\"@id\":\"https:\/\/fivemor.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fivemor.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/fivemor.com\/#organization\",\"name\":\"Som2ny Network\",\"url\":\"https:\/\/fivemor.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/fivemor.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/fivemor.com\/wp-content\/uploads\/2026\/07\/4a0953c4-logo-300x86-1.png\",\"contentUrl\":\"https:\/\/fivemor.com\/wp-content\/uploads\/2026\/07\/4a0953c4-logo-300x86-1.png\",\"width\":300,\"height\":86,\"caption\":\"Som2ny Network\"},\"image\":{\"@id\":\"https:\/\/fivemor.com\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/fivemor.com\/#\/schema\/person\/b85e3c3dc0e1daea076524dc8810c371\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/fivemor.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/729ae85bf62b9917e93538db2f2688ca?s=96&r=g&default=https%3A%2F%2Ffivemor.com%2Fwp-content%2Fplugins%2Fbuddypress-first-letter-avatar%2Fimages%2Fdefault%2F96%2Flatin_a.png\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/729ae85bf62b9917e93538db2f2688ca?s=96&r=g&default=https%3A%2F%2Ffivemor.com%2Fwp-content%2Fplugins%2Fbuddypress-first-letter-avatar%2Fimages%2Fdefault%2F96%2Flatin_a.png\",\"caption\":\"admin\"},\"sameAs\":[\"https:\/\/fivemor.com\"],\"url\":\"https:\/\/fivemor.com\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Use Vial in Linux Without Configuring udev (and Remain Secure) - Som2ny Network","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fivemor.com\/?p=301066","og_locale":"en_US","og_type":"article","og_title":"Use Vial in Linux Without Configuring udev (and Remain Secure) - Som2ny Network","og_description":"Last updated on April 6, 2025 Vial is a GUI program that can configure QMK input devices in real time. In Linux, the default configuration usually stops Vial from accessing the input devices. The official document suggests configuring udev rules. For someone who doesn&#8217;t frequently configure via Vial, this seems to be overkilling and a [&hellip;]","og_url":"https:\/\/fivemor.com\/?p=301066","og_site_name":"Som2ny Network","article_published_time":"2025-06-18T23:45:34+00:00","author":"admin","twitter_card":"summary_large_image","twitter_misc":{"Written by":"admin","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fivemor.com\/?p=301066#article","isPartOf":{"@id":"https:\/\/fivemor.com\/?p=301066"},"author":{"name":"admin","@id":"https:\/\/fivemor.com\/#\/schema\/person\/b85e3c3dc0e1daea076524dc8810c371"},"headline":"Use Vial in Linux Without Configuring udev (and Remain Secure)","datePublished":"2025-06-18T23:45:34+00:00","mainEntityOfPage":{"@id":"https:\/\/fivemor.com\/?p=301066"},"wordCount":352,"commentCount":0,"publisher":{"@id":"https:\/\/fivemor.com\/#organization"},"keywords":["Configuring","Linux","Remain","Secure","udev","Vial"],"articleSection":["GNU\/Linux"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fivemor.com\/?p=301066#respond"]}]},{"@type":"WebPage","@id":"https:\/\/fivemor.com\/?p=301066","url":"https:\/\/fivemor.com\/?p=301066","name":"Use Vial in Linux Without Configuring udev (and Remain Secure) - Som2ny Network","isPartOf":{"@id":"https:\/\/fivemor.com\/#website"},"datePublished":"2025-06-18T23:45:34+00:00","breadcrumb":{"@id":"https:\/\/fivemor.com\/?p=301066#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fivemor.com\/?p=301066"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fivemor.com\/?p=301066#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/fivemor.com\/?bp_activities=1"},{"@type":"ListItem","position":2,"name":"Use Vial in Linux Without Configuring udev (and Remain Secure)"}]},{"@type":"WebSite","@id":"https:\/\/fivemor.com\/#website","url":"https:\/\/fivemor.com\/","name":"Som2ny Network","description":"Daily Deals","publisher":{"@id":"https:\/\/fivemor.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fivemor.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/fivemor.com\/#organization","name":"Som2ny Network","url":"https:\/\/fivemor.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/fivemor.com\/#\/schema\/logo\/image\/","url":"https:\/\/fivemor.com\/wp-content\/uploads\/2026\/07\/4a0953c4-logo-300x86-1.png","contentUrl":"https:\/\/fivemor.com\/wp-content\/uploads\/2026\/07\/4a0953c4-logo-300x86-1.png","width":300,"height":86,"caption":"Som2ny Network"},"image":{"@id":"https:\/\/fivemor.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/fivemor.com\/#\/schema\/person\/b85e3c3dc0e1daea076524dc8810c371","name":"admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/fivemor.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/729ae85bf62b9917e93538db2f2688ca?s=96&r=g&default=https%3A%2F%2Ffivemor.com%2Fwp-content%2Fplugins%2Fbuddypress-first-letter-avatar%2Fimages%2Fdefault%2F96%2Flatin_a.png","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/729ae85bf62b9917e93538db2f2688ca?s=96&r=g&default=https%3A%2F%2Ffivemor.com%2Fwp-content%2Fplugins%2Fbuddypress-first-letter-avatar%2Fimages%2Fdefault%2F96%2Flatin_a.png","caption":"admin"},"sameAs":["https:\/\/fivemor.com"],"url":"https:\/\/fivemor.com\/?author=1"}]}},"_links":{"self":[{"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/posts\/301066","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=301066"}],"version-history":[{"count":0,"href":"https:\/\/fivemor.com\/index.php?rest_route=\/wp\/v2\/posts\/301066\/revisions"}],"wp:attachment":[{"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=301066"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=301066"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=301066"},{"taxonomy":"dealstore","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fdealstore&post=301066"},{"taxonomy":"offerexpiration","embeddable":true,"href":"https:\/\/fivemor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fofferexpiration&post=301066"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}