1 पॉइंट द्वारा GN⁺ 11 시간 전 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • FreeBSD 15 में pkgbase, LinuxKPI ड्राइवर सुधार, और लैपटॉप सपोर्ट प्रोजेक्ट की बदौलत इतना सुधार हुआ है कि अब इसे सिर्फ सर्वर OS नहीं, बल्कि मुख्य desktop environment के रूप में भी इस्तेमाल किया जा सकता है
  • FreeBSD 14 आज़माने के बाद KDE Plasma 6, Wayland, और Intel WiFi सपोर्ट जुड़ गया है, इसलिए ThinkPad X1 Carbon पर Bluetooth को छोड़कर बाकी फ़ीचर अच्छी तरह काम करते हैं
  • इंस्टॉलेशन FreeBSD 15.1 memstick इमेज, UEFI boot, ZFS (GPT), और base system install type में Packages चुनने के आधार पर किया जाता है
  • desktop environment सेटअप के लिए ड्राइवर, power saving, devfs permissions, Linux compatibility, D-Bus, Ly, KDE, PipeWire, और hardware video acceleration तक सब कुछ चरणबद्ध तरीके से सेट करना पड़ता है
  • कुछ laptop environments में sleep से resume के बाद WiFi समस्या, Intel graphics freeze, और KDE logout के बाद process बचे रहने जैसी known issues अभी भी मौजूद हैं, और हर एक के लिए workaround चाहिए

अवलोकन

  • FreeBSD 15 में pkgbase, LinuxKPI ड्राइवर सुधार, और Laptop Support and Usability Project की रिलीज़ के कारण laptop desktop environment में बड़ा सुधार दिखता है
  • FreeBSD 14 पर desktop आज़माने के समय की तुलना में KDE Plasma 6 porting, Wayland का काम करना, और Intel WiFi का पूर्ण समर्थन अब अलग स्तर पर है
  • ThinkPad X1 Carbon पर बैटरी लाइफ़ लगभग 6~7 घंटे है, और Bluetooth को छोड़कर, जिसे आज़माया नहीं गया, डिवाइस के फ़ीचर अच्छी तरह काम करते हैं
  • नए Laptop Compatibility Matrix के ज़रिए आप देख सकते हैं कि आपके हार्डवेयर पर क्या-क्या काम करता है
  • यह गाइड Intel graphics और Intel wireless chipset के उपयोग को आधार मानता है, और दूसरे हार्डवेयर कॉन्फ़िगरेशन को प्रत्यक्ष अनुभव के दायरे से बाहर रखता है

इंस्टॉलेशन

  • FreeBSD 15.1 memstick इमेज डाउनलोड करके उसे dd से USB stick पर लिखा जाता है
    • उदाहरण के तौर पर curl -OJ से इमेज लेकर sudo dd if=FreeBSD-15.1-RELEASE-amd64-memstick.img of=/dev/sdX bs=1M conv=sync चलाया जाता है
  • इंस्टॉलेशन wizard सरल है; सिस्टम को UEFI boot पर सेट किया जाता है और disk layout में ZFS (GPT) चुना जाता है
  • base system install type पूछे जाने वाले चरण में नए pkgbase का उपयोग करने के लिए Packages चुना जाता है
  • इंस्टॉलेशन के दौरान SSH चालू कर दें तो virtual console में सीधे टाइप करने के बजाय SSH session से copy-paste किया जा सकता है
  • reboot के बाद इंस्टॉलेशन के दौरान सेट किए गए password से root account में login किया जाता है

नवीनतम पैकेजों का उपयोग

  • FreeBSD ports tree की दो branches होती हैं: quarterly और latest
  • quarterly साल में चार बार ports tree को snapshot के रूप में स्थिर करता है, और उसके बीच third-party packages को केवल महत्वपूर्ण security patches मिलते हैं
  • latest एक rolling release मॉडल है, जिसमें मुख्य package updates उपलब्ध होते ही मिल जाते हैं
  • default setting quarterly repository की होती है, और latest पर स्विच करने के लिए /usr/local/etc/pkg/repos में एक override file बनाई जाती है
  • repository URL को pkg+https://pkg.FreeBSD.org/${ABI}/latest और kmods_latest_${VERSION_MINOR} पर सेट करने के बाद pkg update और pkg upgrade चलाए जाते हैं

हार्डवेयर डिवाइस, ड्राइवर, ट्यूनिंग

  • बूटलोडर समायोजन

    • /boot/loader.conf में बूटलोडर प्रतीक्षा समय, destructive dtrace को निष्क्रिय करना, shared memory और process limits बढ़ाना सेट किया जा सकता है
    • Intel Speed Shift को सपोर्ट करने वाले सिस्टम में machdep.hwpstate_pkg_ctrl="0" के साथ हर core को अपनी power state खुद सेट करने दी जा सकती है
    • PCI power saving, तेज soreceive(), network queue length बढ़ाना, और ZFS transaction timeout बढ़ाना सेट करके desktop और laptop उपयोग के हिसाब से सिस्टम को ढाला जा सकता है
  • kernel modules

    • cpuctl और coretemp को kld_list में जोड़कर CPU जानकारी और तापमान देखना सक्षम किया जा सकता है
    • H-TCP congestion control algorithm तेज और लंबी दूरी वाले internet जैसे नेटवर्क में बेहतर performance के लिए बनाया गया है, और इसे cc_htcp module के रूप में उपयोग किया जा सकता है
    • ThinkPad में button actions के लिए acpi_ibm module की ज़रूरत होती है
  • sysctl समायोजन

    • /etc/sysctl.conf में keymap change restrictions, core dump निष्क्रिय करना, ASLR से जुड़ी settings, ICMP redirect block करना, और IP redirect निष्क्रिय करना जैसी security settings लागू की जा सकती हैं
    • कुछ security guides W^X, hardlink checks, और दूसरे users के processes देखने पर रोक की सिफारिश करते हैं, लेकिन यहाँ यह माना गया है कि ये settings ज़्यादा समस्याएँ पैदा करती हैं, इसलिए इन्हें comment out किया गया है
    • network performance settings इस धारणा पर TCP buffers और queues बढ़ाती हैं कि default values LAN latency के लिए optimize की गई हैं, ताकि बड़े RTT connections पर बेहतर काम हो सके
    • desktop optimization के लिए shared memory swap रोकना, scheduler preemption threshold बढ़ाना, और सामान्य users को mount की अनुमति देना सेट किया गया है
    • laptop power saving के लिए hw.snd.latency=7 के साथ audio responsiveness कम की जाती है
  • WiFi

    • WiFi support LinuxKPI और नए iwlwifi driver की वजह से पहले की तुलना में काफ़ी बेहतर हुआ है
    • wireless card support की जाँच iwlwifi supported chipset list में की जा सकती है, और ज़रूरी firmware fwget -v से install किया जाता है
    • पुराने कार्ड पर नया iwlwifi इस्तेमाल करने के लिए मौजूदा iwm driver load को devmatch_blocklist="if_iwm" से रोकना पड़ सकता है
    • 802.11n और 802.11ac default रूप से disabled रहते हैं, इसलिए compat.linuxkpi.iwlwifi_11n_disable="0" और compat.linuxkpi.iwlwifi_disable_11ac="0" settings की ज़रूरत होती है
    • rc.conf में wlan0 device बनाकर WPA DHCP powersave सेट करने पर wpa_supplicant(8) WiFi नेटवर्क को manage करता है
    • network management के लिए wpa_supplicant.conf(5) को सीधे edit किया जा सकता है या networkmgr का graphical interface इस्तेमाल किया जा सकता है
    • networkmgr को superuser privileges चाहिए, और operator group को बिना password इसे चलाने देने के लिए sudoers rule रखा जा सकता है
    • FreeBSD 15.1-RELEASE के iwlwifi driver में suspend/resume से जुड़ी ज्ञात समस्याएँ हैं
  • CPU और graphics

    • नवीनतम CPU microcode को cpu-microcode package install करने के बाद loader.conf में boot के समय load होने के लिए सेट किया जाता है
    • CPU power saving के लिए performance_cx_lowest=Cmax और economy_cx_lowest=Cmax के साथ low C-state सक्षम किए जाते हैं, जिससे battery usage और heat कम होती है
    • नए Intel processors में अब powerd(8) चलाने की ज़रूरत नहीं है
    • Intel graphics driver के लिए drm-kmod install करने के बाद i915kms को boot पर load होने के लिए सेट किया जाता है
  • डिवाइस permissions और compatibility

    • desktop सिस्टम में सामान्य users को GPU, video, backlight, और USB devices नियंत्रित करने देने के लिए devfs rules जोड़े जाते हैं
    • /etc/devfs.rules में drm/*, video*, backlight/*, usb/* के permissions और group तय किए जाते हैं, और devfs_system_ruleset=localrules सेट किया जाता है
    • Linux binaries चलाने के लिए Linuxulator को linux_enable=YES के साथ सक्षम किया जाता है, और ज़रूरत पड़ने पर /compat/linux के तहत devfs, tmpfs, fdescfs, linprocfs, linsysfs mount किए जाते हैं
    • exFAT या NTFS जैसे filesystem mount करने के लिए fusefs kernel module load किया जाता है
    • webcam support के लिए webcamd, v4l-utils, v4l_compat install करना और webcamd_enable=YES सेट करना अपेक्षित है
    • printers के लिए CUPS और cups-filters चाहिए, और operator group को printer configure करने देने के लिए cups-files.conf बदला जाता है
    • CUPS settings GUI ब्राउज़र में localhost:631 पर उपलब्ध होता है
  • laptop power और ThinkPad backlight

    • laptop में inactive USB devices को power-saving state में भेजने के लिए /etc/rc.local में usbconfig और power_save चलाए जाते हैं
    • ThinkPad backlight keys को काम कराने के लिए acpi_ibm module load करना, dev.acpi_ibm.0.handlerevents="0x10 0x11" सेट करना, और devd rules चाहिए
    • /usr/local/libexec/thinkpad-brightness script मौजूदा brightness के आधार पर 2, 5, 10 के steps में brightness बढ़ाती या घटाती है
    • script को execute permission देकर और devd restart करने के बाद यह व्यवहार लागू होता है
    • hardware और driver settings पूरी करने के बाद reboot करके यह जाँचा जाता है कि बदलावों ने सिस्टम को खराब तो नहीं किया

फ़ायरवॉल

  • यह कॉन्फ़िगरेशन सभी सिस्टम पर फ़ायरवॉल चलाने के लिए है, और default example SSH को छोड़कर सभी incoming connections को block करता है
  • /etc/pf.conf में egress interface को असली network interface नाम से बदलें और केवल SSH port को TCP inbound के लिए allow करें
  • voice और video calls के लिए UDP 1024:65535 range को allow करें
  • pf_enable=YES सेट करें और service pf start से फ़ायरवॉल शुरू करें

periodic scripts निष्क्रिय करना

  • FreeBSD में default रूप से कई periodic(8) scripts शामिल हैं जो hard disk scan करती हैं, internet से जुड़ती हैं, और email भेजती हैं
  • पूरी सूची periodic.conf(5) में देखी जा सकती है
  • सामान्य desktop users के लिए इनमें से केवल कुछ tasks ही उपयोगी होते हैं, और अधिकांश को सुरक्षित रूप से निष्क्रिय किया जा सकता है
  • उदाहरण configuration में daily, weekly, monthly, और security से जुड़े backup, status reports, mail queue, और security check output tasks को बड़ी संख्या में NO पर सेट किया गया है

user accounts

  • local user account बनाकर उसे operator, video, wheel groups में जोड़ा जाता है
  • operator device और printer configuration के लिए चाहिए, और video GPU devices तक पहुँच के लिए ज़रूरी है
  • wheel group का उपयोग sudo के साथ root privileges वाले commands चलाने के लिए होता है
  • sudo install करने के बाद sudoers file में %wheel ALL=(ALL:ALL) ALL सेट किया जाता है

लोकेल, समय, SSH, प्रमाणपत्र

  • लोकेल

    • लॉगिन shell environment variables login.conf(5) में सेट किए जाते हैं, और इसमें charset=UTF-8 तथा lang=en_US.UTF-8 जोड़े जाते हैं
    • बदलाव लागू करने के लिए cap_mkdb /etc/login.conf से login database को फिर से build किया जाता है
    • non-login shell के लिए /etc/profile.d/locale.sh में LANG और CHARSET सेट किए जाते हैं
  • NTP और time zone

    • सिस्टम clock को up-to-date रखने के लिए ntpd(8) की आवश्यकता होती है
    • ntp.conf में FreeBSD pool NTP servers और access restriction settings रखी जाती हैं
    • अगर इंस्टॉलेशन के दौरान time zone सेट नहीं किया गया था, तो /usr/share/zoneinfo/America/New_York को /etc/localtime से symbolic link किया जाता है
  • openssh-portable

    • FreeBSD base system का ssh बहुत सारे patches के साथ आता है, और ports का शुद्ध openssh-portable अधिक पसंद किया जाता है
    • नए version में sshd configuration file /usr/local/etc/ssh के अंतर्गत स्थित होती है
    • /etc/rc.conf में base sshd को बंद करके openssh_enable=YES के साथ नई service चलाई जाती है
    • अगर $PATH नहीं बदला जाए, तो ssh command base system के /usr/bin/ssh का ही उपयोग करती रहती है
    • सभी users के लिए ports version को प्राथमिकता देने हेतु login.conf में path का क्रम ऐसा बदला जाता है कि /usr/local पहले आए, और फिर database को दोबारा build किया जाता है
  • टर्मिनल, प्रमाणपत्र, D-Bus

    • FreeBSD का termcap(5) database Linux में आम तौर पर मिलने वाले database की तुलना में अधिक सरल है, और XTerm-आधारित terminals में bright colors render नहीं हो सकते
    • terminfo-db इंस्टॉल करके इस समस्या को ठीक किया जा सकता है
    • FreeBSD डिफ़ॉल्ट रूप से केवल कुछ standard certificate authorities पर भरोसा करता है, इसलिए Mozilla का पूरा CA bundle ca_root_nss इंस्टॉल किया जाता है
    • KDE और आज के कई desktop features के लिए D-Bus आवश्यक है, और इसे dbus_enable=YES तथा service dbus start से सक्षम किया जाता है

Ly display manager

  • आम तौर पर desktop session शुरू करने के लिए SDDM जैसे graphical display manager का उपयोग किया जाता है, लेकिन लिखे जाने के समय FreeBSD पर यह Wayland session को स्थिर रूप से शुरू नहीं कर पाता
  • SDDM लगभग काम करता है, लेकिन कई key combinations session को बंद कर देने वाला bug मौजूद है
  • फिलहाल तरीका यह है कि console-आधारित Ly display manager से Wayland session शुरू किया जाए
  • Ly daemon के रूप में नहीं चलता, बल्कि /etc/ttys में virtual console को /usr/local/bin/ly_wrapper चलाने के लिए सेट किया जाता है
  • /etc/gettytab में Ly entry जोड़कर और reboot करने पर, या kill -HUP 1 से init को refresh करने पर, Ly login prompt दिखाई देता है
  • config.ini में xinitrc=null, xsessions=null, shell=false, waylandsessions=/usr/local/share/wayland-sessions सेट करके Wayland session का उपयोग बाध्य किया जा सकता है

फ़ॉन्ट, KDE, desktop apps

  • वेबसाइटें सही तरह render हों, इसके लिए Cantarell, Droid, Inconsolata, Noto, Noto Emoji, Roboto, Ubuntu, webfonts जैसे standard fonts इंस्टॉल किए जाते हैं
  • KDE और desktop components के लिए kde, kdegraphics, kdemultimedia, kdeutils, phonon-mpv, pipewire, pulseaudio, wireplumber आदि इंस्टॉल किए जाते हैं
  • desktop apps के उदाहरणों में Chromium, Firefox, LibreOffice, Thunderbird, Signal Desktop, Wine, Emacs Wayland, Git, mpv, tmux आदि शामिल हैं
  • कुछ desktop features PipeWire पर निर्भर करते हैं, और taskbar preview PipeWire के बिना काम नहीं करता प्रतीत होता है
  • /usr/local/etc/xdg/autostart/pipewire.desktop autostart file के जरिए PipeWire को अपने आप शुरू किया जा सकता है
  • kwallet में SSH key passphrase सहेजने के लिए KDE environment में SSH_ASKPASS_REQUIRE=prefer और SSH_ASKPASS=/usr/local/bin/ksshaskpass export किया जाता है

हार्डवेयर वीडियो acceleration

  • उपयुक्त packages इंस्टॉल करने पर अधिकांश Intel GPUs पर हार्डवेयर वीडियो acceleration का उपयोग किया जा सकता है
  • हार्डवेयर वीडियो acceleration अधिक smooth video playback और बेहतर battery life देता है
  • आवश्यक packages हैं libva-intel-media-driver, libva-utils, libvdpau-va-gl, vdpauinfo
  • user को drm device के जरिए GPU तक पहुंच चाहिए, इसलिए उसका video group में होना आवश्यक है
  • कुछ applications को hardware offload का लाभ लेने के लिए अतिरिक्त configuration की आवश्यकता हो सकती है
  • Chromium Browser

    • FreeBSD पर Chromium में hardware video decoding के लिए पहले बहुत से command-line flags की जरूरत पड़ती थी
    • लिखे जाने के समय Chromium का hardware video decoding बिना अलग flags के काम करता है
  • MPV

    • mpv.conf में hwdec=vaapi-copy, vo=gpu-next, vd-lavc-dr=yes, audio-channels=stereo सेट करने पर कम CPU उपयोग के साथ HD वीडियो चलाया जा सकता है

ज्ञात समस्याएँ और उनके वर्कअराउंड

  • ढक्कन खोलने पर लैपटॉप तुरंत फिर से suspend हो जाता है

    • KDE चल रहा हो तो desktop environment को ACPI lid event पहचानकर suspend और resume को handle करना चाहिए
    • ThinkPad पर एक bug आता है जिसमें ढक्कन खोलते ही लैपटॉप फिर से suspend हो जाता है
    • इसका वर्कअराउंड है KDE power settings में lid switch action को disable करना, और devd के साथ lid बंद होने पर native suspend configure करना
    • /usr/local/libexec/kde-suspend script KDE login user की screen lock करती है, फिर 0.5 सेकंड रुककर acpiconf -s3 से S3 suspend state में जाती है
    • /etc/devd/kde-suspend.conf rule ACPI Lid 0x00 event पर उस script को चलाता है
  • logout के बाद process बचे रहते हैं

    • FreeBSD में KDE session से logout के बाद कुछ process अनिश्चित समय तक चलते रह सकते हैं
    • Chromium कभी-कभी ऐसी स्थिति में फँस जाता है जहाँ वह एक CPU core का 100% उपयोग करता है
    • systemd-आधारित Linux distribution में systemd-logind user session से जुड़े process बंद कर देता है, लेकिन FreeBSD KDE environment में यही मान्यता लागू नहीं होती
    • KDE के logout-time cleanup script feature का उपयोग करके baloo_file, chrome, dirmngr, pipewire, signal-desktop, wireplumber आदि को बंद किया जाता है
    • /usr/local/etc/xdg/plasma-workspace/shutdown/cleanup.sh को executable बनाकर यह लागू किया जाता है
  • user switching काम नहीं करता

    • FreeBSD में desktop user switching पुराने ConsoleKit2 bug की वजह से टूटा हुआ है
    • ताकि user इसे आज़मा न सकें, /usr/local/etc/xdg/kdeglobals में action/start_new_session=false और action/switch_user=false सेट किया जाता है
  • suspend से लौटने के बाद WiFi टूट जाता है

    • FreeBSD 15.1-RELEASE में suspend से लौटने के बाद WiFi टूटने वाला iwlwifi bug है
    • इसका वर्कअराउंड है suspend से पहले wlan0 interface को बंद करना और resume के बाद फिर से शुरू करना
    • /usr/local/etc/rc.d/iwlwifi_fix script service netif stop wlan0 और service netif start wlan0 को suspend/resume command से जोड़ती है
    • इस script को execute permission देकर iwlwifi_fix_enable="YES" से enable किया जाता है
    • fix पहले ही 15-STABLE में commit हो चुका है, और FreeBSD 15.2 आने पर यह वर्कअराउंड शायद ज़रूरी न रहे
  • लैपटॉप audio रुक जाता है

    • कुछ laptops में i915 bug है जो hard lockup पैदा करता है
    • इस समस्या के साथ dmesg में hdac0: Command timeout 2 जैसी error भी दिखाई देती है
    • समाधान है compat.linuxkpi.i915_disable_power_well=0 loader tunable सेट करना
  • graphics freeze और GPU hang

    • FreeBSD 15.1 में default DRM driver 6.6 से 6.12 पर अपग्रेड हुआ है
    • लगता है कि नए version में कुछ Intel chips पर graphics freeze और dmesg में GPU HANG message लाने वाला bug है
    • स्थिर वर्कअराउंड है पुराने version drm-66-kmod का उपयोग जारी रखना
  • console idle timeout नहीं है

    • FreeBSD कुछ साल पहले पुराने syscons(4) console driver से UEFI-native vt(4) driver पर स्विच हुआ था
    • vt console में blanktime support नहीं है, इसलिए X11 या Wayland session न हो तो screen बंद करने का व्यावहारिक तरीका नहीं है
    • क्योंकि Ly TTY console पर चलता है, इसलिए जब कोई login नहीं होता तब भी screen चालू रहती है
    • single-user laptop में यह बड़ी समस्या नहीं है, लेकिन multi-user workstation में login prompt LCD panel पर burn-in कर सकता है
  • GTK4 app icons गायब हैं

    • उपयोग में लिया गया GTK4 app Dino IM XMPP client है, और उसके कई icons render नहीं हो रहे थे तथा वह KDE font settings का पालन भी नहीं कर रहा था
    • portals disable करते ही समस्या तुरंत हल हो गई
    • वर्कअराउंड है export GDK_DEBUG=no-portals सेट करना
  • audio playback के दौरान रुक-रुक कर चलना

    • Pulseaudio में audio file चलाते समय कभी-कभी crackling और skipping होती है
    • daemon.conf में default-fragments = 8 और default-fragment-size-msec = 5 पर default value बढ़ाने से समस्या हल हो जाती है

1 टिप्पणियां

 
Lobste.rs की टिप्पणियाँ
  • यह लेख सराहनीय है, लेकिन ऐसा लगता है कि मैनुअल स्टेप्स बहुत ज़्यादा हैं उन चीज़ों के लिए जो इंस्टॉलर को खुद करनी चाहिए

    • ऐतिहासिक रूप से FreeBSD का laptop support आधा-अधूरा ही काम करता था, और वह भी ज़्यादातर उत्साही उपयोगकर्ताओं के स्तर पर
      हाल के समय में Linux से Wi-Fi और graphics drivers को port करने में काफी मेहनत हुई है, इसलिए अब कहीं ज़्यादा लोग इसे laptop पर इस्तेमाल कर सकते हैं
      अभी इसकी स्थिति 2000 के दशक के Linux जैसी कही जा सकती है; काम अभी भी बहुत बाकी है, लेकिन यह frontier पर चल रहा काम है
    • प्रगति धीमी है, लेकिन साफ़ तौर पर हो रही है। 10~15 साल पहले Linux भी इतना अच्छा नहीं था, और FreeBSD भी आखिरकार वहाँ तक पहुँच जाएगा
  • “अगर इंस्टॉलेशन के दौरान लगभग बारह स्टेप्स खुद न करने पड़ें, तो क्या वह मशीन सच में मेरी है?” /s, लेकिन पूरी तरह /s भी नहीं
    मैं यह टिप्पणी अभी एक सेकंड-हैंड Thinkpad T14 Gen 1 पर लिख रहा हूँ, जो मैंने OpenBSD को बिना बहुत झंझट चलाने के लिए खरीदा था
    FreeBSD अभी तक नहीं आज़माया, लेकिन शायद आज़माऊँगा; और मेरा self-built NAS ZFS pool के साथ FreeBSD 15 चला रहा है
    FreeBSD Foundation का laptop compatibility पर काम वाकई सराहनीय लगता है
    फिलहाल माहौल 2000 के दशक के Linux जैसा है, लेकिन जैसा मूल पोस्ट में कहा गया, “काम मौजूद है, और वह frontier पर हो रहा काम है”

  • 2010 के दशक के उत्तरार्ध से मैं बहुत सावधानी से चुने गए laptops पर FreeBSD को daily driver की तरह इस्तेमाल कर रहा हूँ
    उस समय FreeBSD desktop setup में सचमुच बहुत छेड़छाड़ करनी पड़ती थी, इसलिए मैंने उसे scripts में बदलकर Git repository में रखा और लगातार सुधारता रहा
    उदाहरण के लिए, भविष्य में Wayland पर Sway की तरफ़ जाना पड़ेगा यह सोचकर मैंने StumpWM से i3 पर स्विच किया
    अब desktop installer पर काम चल रहा है, इसलिए लगता है कि @technomancy की वाजिब बात का समाधान हो सकता है, और इससे मेरी setup scripts का बड़ा हिस्सा बेकार भी हो सकता है
    https://wiki.freebsd.org/desktop-installer

  • यह पंक्ति पढ़कर अच्छा लगा: “LinuxKPI और नए iwlwifi driver की बदौलत खराब Wi-Fi support वाले दिन काफ़ी हद तक पीछे छूट चुके हैं। अगर आपके पास आम Intel card है, तो उसके बस काम करने की संभावना अच्छी है”
    मैंने desktop पर FreeBSD 13/14 भी आज़माया था, लेकिन driver limitations की वजह से speed बहुत धीमी थी, इसलिए उसे जारी रखना मुश्किल था
    अच्छा है कि यह सीमा हट रही है, और अगली बार जब desktop पर कुछ नया आज़माने का मन होगा, तो FreeBSD को फिर से देखने का इरादा है

  • दिलचस्प बात यह है कि RTL8812 Wi-Fi driver FreeBSD में बहुत पहले से, अगर सही याद है तो 10 साल से भी ज़्यादा समय से था, जबकि Linux में यह लगभग kernel 6.13 के आसपास जाकर शामिल हुआ
    Linux में यह इतने लंबे समय तक out-of-tree module क्यों बना रहा, यह मुझे ठीक से नहीं पता। शायद licensing की वजह रही हो