2023年8月11日 星期五

Arch Linux - 透過 Flatpak 使用 Application

 ArchLinux

-------
正在解決依賴關係…
:: 有 7 個提供者可供 xdg-desktop-portal-impl:
:: 軟體庫 extra
   1) xdg-desktop-portal-gnome  2) xdg-desktop-portal-gtk
   3) xdg-desktop-portal-hyprland  4) xdg-desktop-portal-kde  5) xdg-desktop-portal-lxqt
   6) xdg-desktop-portal-wlr  7) xdg-desktop-portal-xapp
--------

安裝 com.prusa3d.PrusaSlicer 後,執行時會出錯。

----------------
$ flatpak run com.prusa3d.PrusaSlicer
sh: warning: setlocale: LC_ALL: cannot change locale (zh_TW.UTF-8)
--------------------------------------------------------------------------
Message: 23:26:30: Starting PrusaSlicer flatpak with entrypoint script
--------------------------------------------------------------------------
/app/bin/entrypoint: line 12: warning: setlocale: LC_ALL: cannot change locale (zh_TW.UTF-8)
Message: 23:26:30: WARN: Executing prusa-slicer with locale workaround zh_TW.UTF-8
[ajax@aj-arch-pc ~]$ [2023-08-11 23:26:30.470612] [0x00007f30355fed40] [trace]   Initializing StaticPrintConfigs
An error occured while setting up locale.
You may need to reconfigure the missing locales, likely by running the "locale-gen" and "dpkg-reconfigure locales" commands.
PrusaSlicer will now terminate.

locale::facet::_S_create_c_locale name not valid
---------------

使用 sh 進去看

------------------
$ flatpak run  --command=sh com.prusa3d.PrusaSlicer
sh: warning: setlocale: LC_ALL: cannot change locale (zh_TW.UTF-8)
[com.prusa3d.PrusaSlicer ~]$ 
....
[com.prusa3d.PrusaSlicer ~]$ ls -l /usr/lib/locale/zh_TW.utf8
lrwxrwxrwx 1 nfsnobody nfsnobody 44 Aug 11 21:26 /usr/lib/locale/zh_TW.utf8 -> ../../share/runtime/locale/zh/lib/zh_TW.utf8
[com.prusa3d.PrusaSlicer ~]$ ls /usr/lib/locale/../../share/runtime/locale/
(此目錄 /usr/share/runtime/locale/ 是空的)
------------------


2023年8月10日 星期四

頭燈改 18650 鋰電池

在蝦皮買的淘寶貨,一口氣買了好幾個,一個不到台幣50元。

最開始是買一個來用用看,覺得蠻輕巧方便的,缺點是裡面的電池實在太小,使用時間好短,充飽後用不到一個小時就沒電。還好,它的體積夠大,直徑剛好夠塞進 18650 的鋰電池。剛好手邊有一堆便宜的18650電池,就試著改改看,想説便宜,失敗就算了,比較不會心疼。不過,後來因為它裡面的紅線接電池負極,黑線接電池正極,害我很直覺的把紅線焊正極,黑線焊負極,把電路板燒壞了,還是心疼了一晚。

把內部卡到的隔板切除,剛剛好把 18650 電池塞進去,只是電池稍長一點。把沒電路板的一端挖通,再用3D印表機印一個延伸蓋,用烙鐵焊起來。改裝後,使用時間變得長很多,生活中很好用,因此一口氣又再買好幾個來改,可以到處放一個,隨時可用。

買到的充電頭燈,輕便亮度夠,有聚光和不聚光兩種模式。目前能找到最便宜的,一個不到新台幣 40元。

拆開後,內部構造很簡單,兩個 LED燈,一塊小電路板。半導體技術進步好快,很多小裝置都是一個小小的 IC 就解決了,價錢也很便宜。


電池的大小比一比,如下圖。

塞進 18650 電池後,一端凸出一點,用3D印一個蓋子,再用烙鐵焊接在一起。

完成後的成品如下,看起來不太違和,使用時間也變得長很多。


延伸蓋使用 openscad 描述,內容如下

------------------
fn=32;
ex_h = 4.5;
ex_d = 19.5;
thk = 3;

module cap_body() {
    difference() {
        cylinder(d=ex_d+thk*2, h=ex_h+thk, $fn=fn*2);
        translate([0, 0, -1]) cylinder(d=ex_d, h=ex_h+1, $fn=fn*2);
    }
}

module cyl_fillet() {
    difference() {
        cylinder(d=ex_d+10, h=ex_h+10, $fn=fn*2);
        translate([0, 0, -2]) cylinder(d1=ex_d+15, d2=6, h=ex_d+5, $fn=fn*2);
    }
}

difference() {
    cap_body();
    cyl_fillet();
}
---------------------

換下來的 14500 鋰電池,大小和 3號電池一樣,遙控器沒電就順手拿來代用。一顆鋰電池取代兩顆乾電池,其中一個空槽就用電線短路。








網誌存檔