Sunday, November 10, 2024

installing fastfetch

Installing fastfetch

Neofetch has been abandoned so fastfetch.

https://github.com/fastfetch-cli/fastfetch

 

https://idroot.us/install-fastfetch-ubuntu-24-04/


## sudo add-apt-repository ppa:fastfetch/stable

## ERROR: ppa 'fastfetch/stable' not found (use --login if private) 

 

sudo add-apt-repository ppa:zhangsongcui3371/fastfetch
sudo apt update 
 
 
old intel hd graphics on i7-4790 reported as Xeon 1200
fastfetch:
GPU: Intel Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics Con]


neofetch:
GPU: Intel HD Graphics

Install and run inxi for analysis:
inxi -SGx
 
 
Update fastfetch documentation; write python script source: 
https://github.com/fastfetch-cli/fastfetch/issues/830 
https://github.com/fastfetch-cli/fastfetch/pull/1292

 
output: manpage 
 
help2man 

https://unix.stackexchange.com/questions/34516/can-i-create-a-man-page-for-a-script 
https://www.dlab.ninja/2021/10/how-to-write-manpages-with-markdown-and.html
https://www.linux-magazine.com/Online/Features/Parsing-man-pages-for-modern-users 
https://betterprogramming.pub/man-pages-the-complete-guide-800ad93425fe
 
 
 
 

 

 

Saturday, November 2, 2024

sshd troubleshooting

 OpenBSD sshd server

 systemctl status ssh

 

 

Systematic Troubleshooting

Troubleshooting SSH Issues: A Sysadmin‘s Survival Guide

check

hostname

Is host reachable on the network?

ping host


Look at the boot log

journalctl -k -b -1










Wednesday, October 30, 2024

Apple USB keyboard (wired)

Apple USB keyboard wired

It was a hardware problem: three arrow keys were not working on the Apple KB.
 Plugged PS/2 keyboard  into mouse port.

#. Not true:

These are great keyboards but support under Ubuntu is janky.

Info:

https://wiki.archlinux.org/title/Apple_Keyboard#hid_apple_module_options

https://unix.stackexchange.com/questions/407501/make-apple-keyboard-settings-persistent-in-hid-apple-parameters

 

https://2e0pgs.github.io/blog/sysadmin/2021/04/03/apple-keyboard-ubuntu/

 

You can add the following lines to: /etc/modprobe.d/hid_apple.conf

$ cat /etc/modprobe.d/hid_apple.conf
options hid_apple fnmode=2
options hid_apple iso_layout=0

Then run sudo update-initramfs -u -k all and sudo reboot


 

mac_hid or hid_apple

 Turns out hid_apple was renamed to applespi.

echo 2 | sudo tee /sys/module/applespi/parameters/fnmode


For trackpads and laptop keyboard



https://help.ubuntu.com/community/AppleKeyboard#Change_Function_Key_behavior

https://help.ubuntu.com/community/TroubleWithAppleKbdOnUbuntu

 

 

Wednesday, August 14, 2024

macports port hints

macports.org

search for available packages

https://ports.macports.org/

 

port installed
 
 
sudo port selfupdate

 

2.4. Uninstall MacPorts

uninstall all installed packages

sudo port -fp uninstall installed

 To find the location of installed components, use the contents subcommand:

port contents libxml2
macport prefix
 
 
https://github.com/cargo-generate/cargo-generate/issues/1208#issuecomment-2182884600
sudo port deactivate libiconv cargo install cargo-generate sudo port activate libiconv

 

MacPort Cheat Sheet

 

Get description on package

port info gnutls 

 




 
 

Friday, August 9, 2024

building emacs on mac from source

Building emacs from source 

many github emacs don't build successfully
internet info outdated, changes in emacs 30.1 libjansson  not needed, gnutls deprecated
need macport information, most info on homebrew;
emacs source build works but is not packaged in a dmg
most fail when moved out of build directory
binaries download from: emacsformacos.com

 

Beautiful emacs site

https://www.masteringemacs.org/all-articles

Successful Emacs build on mac aarch64

builds for emacsforosx.com

https://github.com/caldwell/build-emacs

GNU Emacs 30.1 (build 1, aarch64-apple-darwin22.6.0, NS appkit-2299.77
 Version 13.7.4 (Build 22H420)) of 2025-03-16
Copyright (C) 2025 Free Software Foundation, Inc.


https://github.com/caldwell/build-emacs/issues/145
https://github.com/caldwell/build-emacs/issues/132
https://github.com/caldwell/build-emacs/issues/103#issuecomment-822056419

https://github.com/caldwell/build-emacs/issues/142#issuecomment-2730442280

Currently all my builds use Nix to automatically get dependencies, but it should work with manual dependency management using Homebrew/MacPorts/whatever as long as those dependencies are in your path when you run build-emacs-from-tar --no-deps (--no-deps should really be called --no-automatic-deps or something). Check the output of configure to see if it is detecting your dependencies.

Steps to resolve issue:

deleted previous build directory

git clone https://github.com/caldwell/build-emacs
./fetch-emacs-from-ftp -v ftp://ftp.gnu.org/pub/gnu/emacs
 

./build-emacs-from-tar -v -j 8 --no-deps emacs-30.1.tar.bz2 release

rustup target add x86_64-apple-darwin
make
./combine-and-package -v Emacs-30.1-13-arm64.tar.bz2

produced:
Emacs-30.1-universal.dmg

dependencies.nix

pkgs.mkShell {
  buildInputs = [
    pkgs.darwin.apple_sdk.frameworks.AppKit

    pkgs.autoconf
    pkgs.pkgconfig
    ncurses-no-nix-store
    pkgs.zlib

    pkgs.gnutls
    pkgs.jansson
    pkgs.libxml2
    pkgs.librsvg
    pkgs.tree-sitter
    pkgs.sqlite
  ];
}

Successful Emacs build on macos 12.7 x86_64 

https://github.com/imrehorvath/bundle-dylibs

https://imrehorvath.wordpress.com/2021/04/17/wanna-build-gnu-emacs-on-macos-from-source/

 

Use bundle_dylib to move libs inside Emacs.app. 


Efficient successful build 29.4 (138MByte)

https://github.com/mclear-tools/build-emacs-macos







Switch from macports to brew

MBP i5


Macbook Air M3

 

Install a few packages:

sudo port install autoconf

sudo port install automake

sudo port install texinfo

sudo port install gnutls

sudo port install pkgconfig

sudo port install libgcc13

 

EmacsWiki

gcc Emacs 

Get the source code.
# git clone --depth 1 --branch emacs-29.4 https://git.savannah.gnu.org/git/emacs.git emacs-29.4  
$ git clone git://git.savannah.gnu.org/emacs.git 
$ cd emacs
    
$ ./autogen.sh 
$ ./configure 
$ make 
$ make install
configure: error: ELisp native compiler was requested, but libgccjit was not found.
Please try installing libgccjit or a similar package. 
./configure --with-native-compilation result in libgccjit errors
  

Package Notes

libgcc-devel broken port #68421 
https://issues.guix.gnu.org/issue/57849
 
M3 build time: 11m16s
M3  build time with libgcc13: 1m12s
M1 build time:  1m5s

Compiling Emacs on Mac

builds for emacsforosx.com

https://github.com/caldwell/build-emacs

https://porkrind.org/missives/mac-os-x-codesigning-woes/


Renard mentions moving libs into a common directory to make it .app portable

https://github.com/renard/emacs-build-macosx
 

Standalone Emacs

https://gitlab.kitware.com/paraview/common-superbuild/-/blob/920d9bc5c6c69fd945df84668f50aca34cdf5f6f/cmake/scripts/fixup_bundle.apple.py


automated build 

https://github.com/jimeh/build-emacs-for-macos
credits:
https://gist.github.com/mikroskeem/0a5c909c1880408adf732ceba6d3f9ab#1-gcc-with-libgccjit-enabled

https://github.com/shshkn/emacs.d/blob/master/docs/nativecomp.md

https://gist.github.com/AllenDang/f019593e65572a8e0aefc96058a2d23e

 

Simple build script provided:


refs:


self-contained build
https://github.com/jimeh/emacs-builds

emacs plus features recent updates:

https://github.com/d12frosted/homebrew-emacs-plus

build emacs on mac using port:

https://mac4translators.blogspot.com/2017/10/evolution.html

Many other good sites:

https://www.zellysnyder.com/posts/compiling-emacs-on-macos/
https://www.mattduck.com/2021-05-upgrading-to-emacs-28.html
 
https://www.masteringemacs.org/article/speed-up-emacs-libjansson-native-elisp-compilation
https://andersmurphy.com/2021/11/14/emacs-building-from-source-on-macos.html 
https://emacs-ng.github.io/emacs-ng/build/building/
https://emacs.stackexchange.com/questions/58526/how-do-i-build-emacs-from-sources-on-macos-catalina-version-10-15-4
https://github.com/railwaycat/homebrew-emacsmacport?tab=readme-ov-file
https://www.reddit.com/r/emacs/comments/u28dji/emacs_28_with_nativecomp_on_macos_with_macports/
 

Native m1 builds

https://cpufun.substack.com/p/setting-up-the-apple-m1-for-native

https://github.com/jimeh/build-emacs-for-macos/issues/47

Create signing Certificate




m3 pkgs:
port installed
The following ports are currently installed:
  autoconf @2.72_0 (active)
  cctools @949.0.1_3+xcode (active)
-   cowsay @3.7.0_0 (active)
  curl-ca-bundle @8.12.1_0 (active)
  db48 @4.8.30_5 (active)
  gcc13 @13.3.0_2+stdlib_flag (active)
  gcc13-libcxx @13.3.0_2+clang16 (active)
  gcc_select @0.1_10 (active)
  gdbm @1.24_0 (active)
  gettext-runtime @0.22.5_0 (active)
  gmp @6.3.0_0 (active)
  gnutls @3.7.11_1 (active)
  icu @76.1_0 (active)
  isl @0.24_1 (active)
  ld64 @3_6+ld64_xcode (active)
  ld64-xcode @2_6 (active)
  libffi @3.4.6_1 (active)
  libgcc @9.0_0 (active)
  libgcc13 @13.3.0_2+stdlib_flag (active)
  libgcc14 @14.2.0_3+stdlib_flag (active)
  libiconv @1.17_0 (active)
  libidn2 @2.3.8_0 (active)
  libmpc @1.3.1_0 (active)
  libtasn1 @4.20.0_0 (active)
  libunistring @1.3_0 (active)
  libxml2 @2.13.6_0 (active)
  libxslt @1.1.42_0 (active)
  lz4 @1.10.0_0 (active)
  m4 @1.4.19_1 (active)
  mpfr @4.2.1_0 (active)
  ncurses @6.5_0 (active)
  nettle @3.10_0 (active)
  p11-kit @0.25.5_0 (active)
  perl5.34 @5.34.3_1 (active)
  pkgconfig @0.29.2_0 (active)
  readline @8.2.013_0 (active)
  texinfo @7.2_0+perl5_34 (active)
  xz @5.6.4_0 (active)
  zlib @1.3.1_0 (active)
  zstd @1.5.6_0 (active)



m1 pkgs:
The following ports are currently installed:
  autoconf @2.72_0 (active)
  automake @1.16.5_0 (active)
  brotli @1.1.0_0 (active)
  bzip2 @1.0.8_0 (active)
  cctools @949.0.1_3+xcode (active)
  curl @8.8.0_1+ssl
  curl @8.9.1_1+brotli+http2+idn+psl+ssl+zstd (active)
  curl-ca-bundle @8.8.0_0
  curl-ca-bundle @8.9.1_0 (active)
  db48 @4.8.30_5 (active)
  gdbm @1.24_0 (active)
  gettext-runtime @0.22.5_0 (active)
  gmp @6.3.0_0 (active)
  gnutls @3.7.11_0 (active)
  icu @74.2_0 (active)
  isl @0.24_1 (active)
  ld64 @3_6+ld64_xcode (active)
  ld64-xcode @2_6 (active)
  libedit @20240517-3.1_0 (active)
  libffi @3.4.6_1 (active)
  libgcc @8.0_0 (active)
  libgcc13 @13.3.0_1+stdlib_flag (active)
  libgcc14 @14.2.0_1+stdlib_flag (active)
  libgit2 @1.7.2_0+threadsafe (active)
  libiconv @1.17_0 (active)
  libidn2 @2.3.7_0 (active)
  libmpc @1.3.1_0 (active)
  libpsl @0.21.5-20240306_0 (active)
  libssh2 @1.11.0_0 (active)
  libtasn1 @4.19.0_0 (active)
  libunistring @1.2_0 (active)
  libxml2 @2.13.3_0 (active)
  libxslt @1.1.42_0 (active)
  lz4 @1.9.4_0
  lz4 @1.10.0_0 (active)
  m4 @1.4.19_1 (active)
  mpfr @4.2.1_0 (active)
  ncurses @6.5_0 (active)
  nettle @3.10_0 (active)
  nghttp2 @1.62.1_0 (active)
  openssl @3_18 (active)
  openssl3 @3.3.1_1 (active)
  p11-kit @0.25.5_0 (active)
  pcre2 @10.44_0 (active)
  perl5.34 @5.34.3_1 (active)
  pkgconfig @0.29.2_0 (active)
  readline @8.2.001_0 (active)
  starship @1.19.0_0
  starship @1.20.1_0 (active)
  texinfo @7.1_0 (active)
  xz @5.4.7_0 (active)
  zlib @1.3.1_0 (active)
  zstd @1.5.6_0 (active)




 

 



Wednesday, July 17, 2024

using git; rust doc guessing game

using git

 

git init

git add .

git commit . -m "initial commit"

git status .

git log gen-man.py

Clone a repo

git clone https://github.com/Macchina-CLI/macchina.git

Using git stash

Use git stash when you want to record the current state of the working directory and the index, but want to go back to a clean working directory.

https://opensource.com/article/21/4/git-stash

git stash

Update local repo to latest commit

git pull git://git.savannah.gnu.org/emacs emacs-30.1

Files to exclude from version control

.gitignore
https://github.com/github/gitignore/blob/main/Rust.gitignore
 
https://github.com/github/gitignore/blob/main/Haskell.gitignore
 

and for other languages.

git - the simple guide

MS Class Github Foundations


 

git config user.email querqus@blair-pop.local

git commit -m "how preview" man_page.py


How to Delete a Forked Repository in GitHub?

https://lifeincoding.com/how-to-delete-a-forked-repository-in-github/  

Clone repo from a specific date 

 https://forums.freebsd.org/threads/git-download-source-from-a-specific-date.81558/ 

git clone https://github.com/zed-industries/zed.git
git log --after="2023-05-17 13:00" --before="2023-10-17 13:00"
git reset --hard 291d35f337b6a9b49beff2c2d40aa741ace843a4

 

 Rust update to next version


rustup update > up.txt 2>&1
it worked:
info: syncing channel updates for 'stable-aarch64-apple-darwin'
info: latest update on 2024-11-28, rust version 1.83.0 (90b35a623 2024-11-26)
info: downloading component 'rust-std' for 'wasm32-wasi'
info: downloading component 'rust-src'
info: downloading component 'cargo'
info: downloading component 'clippy'
info: downloading component 'rust-docs'
info: downloading component 'rust-std'
info: downloading component 'rustc'
info: downloading component 'rustfmt'
info: removing previous version of component 'rust-std' for 'wasm32-wasi'
info: removing previous version of component 'rust-src'
info: removing previous version of component 'cargo'
info: removing previous version of component 'clippy'
info: removing previous version of component 'rust-docs'
info: removing previous version of component 'rust-std'
info: removing previous version of component 'rustc'
info: removing previous version of component 'rustfmt'
info: installing component 'rust-std' for 'wasm32-wasi'
info: installing component 'rust-src'
info: installing component 'cargo'
info: installing component 'clippy'
info: installing component 'rust-docs'
info: installing component 'rust-std'
info: installing component 'rustc'
info: installing component 'rustfmt'
info: syncing channel updates for '1.80-aarch64-apple-darwin'
info: checking for self-update

stable-aarch64-apple-darwin updated - rustc 1.83.0 (90b35a623 2024-11-26) (from rustc 1.79.0 (129f3b996 2024-06-10))
1.80-aarch64-apple-darwin unchanged - rustc 1.80.1 (3f5fd8dd4 2024-08-06)

info: cleaning up downloads & tmp directories

Programming a Guessing Game

Rust Book: Guessing Game

 

Monday, July 15, 2024

cargo-generate bug iconv libiconv match libraries

linking error between macOS and macport provided libiconv library #1208

The problem is widespread and long lasting with many long discussions.

_libiconv or _iconv undefined symbol on Mac OSX

 

R-Problems with iconv on macOS

Longstanding GHC linking issues when multiple iconv libraries are installed on macOS (Haskell #18743)

 

long discussion:

MacOS iconv linkage misdetection (also deprecation warnings) #830

 

libiconv breaks compatibility with OS-provided #57821

 

rav1e @0.6.6: iconv linking fails, expecting symbols from MacOS's iconv lib #68026

rav1e: build fails due to git_allocator missing members #68178


 

Examples of possible fixes: 

ghc: Bugfixes for test and iconv linking #8523

Fix i/macOS libc++ initialization on early instrumentation #194

frida/frida-core

 

solution: libiconv on Mac OS X


FindIconv: Problem on macOS with mac ports


I can't imagine how cmake could possibly help you with this problem. The only thing cmake does is tell you where libiconv is located. It should not matter at all to your application whether it tells you about a system copy of libiconv like the one in /usr on macOS or a third-party copy of libiconv like the one in /opt/local provided by MacPorts, so long as you use both the headers and the library from the same place. The only way the problem you're experiencing could occur is if you're using the headers from one place and the library from another, so Don't Do That.