Custom Commands & .bashrc Error

Hello I am trying to make custom commands for my fish terminal:
There is an error when I run bash:
find-the-command: "ng" is not found locally, searching in repositories... bash: ng: command not found
Also I can't create simple commands with alias:
Code in .bashrc:
alias anan 'echo ANACILIK YAPMA'
Error: bash: alias: anan:yok bash: alias: echo ANACILIK YAPMA:yok

my .bashrc:

# If not running interactively, don't do anything
[[ $- != *i* ]] && return

# Load starship prompt if starship is installed
if  [ -x /usr/bin/starship ]; then
    __main() {
        local major="${BASH_VERSINFO[0]}"
        local minor="${BASH_VERSINFO[1]}"

        if ((major > 4)) || { ((major == 4)) && ((minor >= 1)); }; then
            source <("/usr/bin/starship" init bash --print-full-init)
            source /dev/stdin <<<"$("/usr/bin/starship" init bash --print-full-init)"
    unset -f __main

# Advanced command-not-found hook
source /usr/share/doc/find-the-command/ftc.bash

# Aliases
alias dir='dir --color=auto'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias fixpacman="sudo rm /var/lib/pacman/db.lck"
alias grep='grep --color=auto'
alias grubup="sudo update-grub"
alias hw='hwinfo --short'
alias psmem10='ps auxf | sort -nr -k 4 | head -10'
alias psmem='ps auxf | sort -nr -k 4'
alias rmpkg="sudo pacman -Rdd"
alias tarnow='tar -acf '
alias untar='tar -zxvf '
alias upd='/usr/bin/update'
alias vdir='vdir --color=auto'
alias wget='wget -c '

# Help people new to Arch
alias apt-get='man pacman'
alias apt='man pacman'
alias helpme=' --shell'
alias please='sudo'
alias tb='nc 9999'

# Cleanup orphaned packages
alias cleanup='sudo pacman -Rns `pacman -Qtdq`'

# Get the error messages from journalctl
alias jctl="journalctl -p 3 -xb"

# Recent installed packages
alias rip="expac --timefmt='%Y-%m-%d %T' '%l\t%n %v' | sort | tail -200 | nl"

# Add RVM to PATH for scripting. Make sure this is the last PATH variable change.
export PATH="$PATH:$HOME/.rvm/bin"

# Load Angular CLI autocompletion.
source <(ng completion script)


## autocomplete
_jina() {
  local word="${COMP_WORDS[COMP_CWORD]}"

  if [ "$COMP_CWORD" -eq 1 ]; then
    COMPREPLY=( $(compgen -W "$(jina commands)" -- "$word") )
    local words=("${COMP_WORDS[@]}")
    unset words[0]
    unset words[$COMP_CWORD]
    local completions=$(jina completions "${words[@]}")
    COMPREPLY=( $(compgen -W "$completions" -- "$word") )

complete -F _jina jina

# session-wise fix
ulimit -n 4096
# default workspace for Executors
export JINA_DEFAULT_WORKSPACE_BASE="${HOME}/.jina/executor-workspace"

. "$HOME/.cargo/env"

I want to be able to run my custom command without additionally typing bash to terminal
I mean when I open my terminal I want to be able to use my custom command instantaly

Is your shell bash or still fish? Since I see:

By-the-way, fish is a shell, like bash, etc.
The terminal is something different, the application: Konsole, Alacritty, etc.
This is something (outside the issue) you could "study" on the Internet.
Can you provide your garuda-inxi as per topic creation template?

1 Like

Of course. Btw it is konsole (What is the diffrence btw?)

here is my garuda inxi:

Kernel: 5.18.7-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 12.1.0
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
root=UUID=28571456-42f1-47a5-b0ab-1d9540d67475 rw [email protected]
quiet quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0
Desktop: KDE Plasma v: 5.25.2 tk: Qt v: 5.15.5 info: latte-dock
wm: kwin_x11 vt: 1 dm: SDDM Distro: Garuda Linux base: Arch Linux
Type: Desktop Mobo: ASUSTeK model: TUF B450M-PLUS GAMING v: Rev X.0x
serial: <superuser required> UEFI: American Megatrends v: 2807
date: 02/01/2021
Info: model: AMD Ryzen 5 2600 bits: 64 type: MT MCP arch: Zen+ gen: 2
built: 2018-21 process: GF 12nm family: 0x17 (23) model-id: 8 stepping: 2
microcode: 0x800820D
Topology: cpus: 1x cores: 6 tpc: 2 threads: 12 smt: enabled cache:
L1: 576 KiB desc: d-6x32 KiB; i-6x64 KiB L2: 3 MiB desc: 6x512 KiB
L3: 16 MiB desc: 2x8 MiB
Speed (MHz): avg: 3018 high: 3805 min/max: 1550/3400 boost: enabled
scaling: driver: acpi-cpufreq governor: performance cores: 1: 2663 2: 3000
3: 2846 4: 3776 5: 2789 6: 3794 7: 2416 8: 2683 9: 2418 10: 3805 11: 2314
12: 3713 bogomips: 81440
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Type: itlb_multihit status: Not affected
Type: l1tf status: Not affected
Type: mds status: Not affected
Type: meltdown status: Not affected
Type: mmio_stale_data status: Not affected
Type: spec_store_bypass
mitigation: Speculative Store Bypass disabled via prctl
Type: spectre_v1
mitigation: usercopy/swapgs barriers and __user pointer sanitization
Type: spectre_v2
mitigation: Retpolines, IBPB: conditional, STIBP: disabled, RSB filling
Type: srbds status: Not affected
Type: tsx_async_abort status: Not affected
Device-1: NVIDIA GF108 [GeForce GT 630] vendor: Gigabyte driver: nvidia
v: 390.151 alternate: nouveau,nvidia_drm non-free: 390.xx+
status: legacy-active (EOL~late 2022) arch: Fermi process: 40/28nm
built: 2010-16 pcie: gen: 2 speed: 5 GT/s lanes: 16 bus-ID: 06:00.0
chip-ID: 10de:0f00 class-ID: 0300
Device-2: Microdia Dual Mode Camera (8006 VGA) type: USB
driver: hid-generic,usbhid bus-ID: 1-10:5 chip-ID: 0c45:8006 class-ID: 0301
Display: x11 server: X.Org v: 21.1.3 with: Xwayland v: 22.1.2
compositor: kwin_x11 driver: X: loaded: nvidia
unloaded: modesetting,nouveau alternate: fbdev,nv,vesa gpu: nvidia
display-ID: :0 screens: 1
Screen-1: 0 s-res: 1920x1080 s-dpi: 101 s-size: 483x272mm (19.02x10.71")
s-diag: 554mm (21.82")
Monitor-1: HDMI-0 res: 1920x1080 dpi: 102 size: 480x270mm (18.9x10.63")
diag: 551mm (21.68") modes: N/A
OpenGL: renderer: GeForce GT 630/PCIe/SSE2 v: 4.6.0 NVIDIA 390.151
direct render: Yes
Device-1: NVIDIA GF108 High Definition Audio vendor: Gigabyte
driver: snd_hda_intel v: kernel pcie: gen: 2 speed: 5 GT/s lanes: 16
bus-ID: 06:00.1 chip-ID: 10de:0bea class-ID: 0403
Device-2: AMD Family 17h HD Audio vendor: ASUSTeK driver: snd_hda_intel
v: kernel pcie: gen: 3 speed: 8 GT/s lanes: 16 bus-ID: 08:00.3
chip-ID: 1022:1457 class-ID: 0403
Sound Server-1: ALSA v: k5.18.7-zen1-1-zen running: yes
Sound Server-2: PulseAudio v: 16.1 running: no
Sound Server-3: PipeWire v: 0.3.52 running: yes
Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
vendor: ASUSTeK PRIME B450M-A driver: r8169 v: kernel pcie: gen: 1
speed: 2.5 GT/s lanes: 1 port: f000 bus-ID: 04:00.0 chip-ID: 10ec:8168
class-ID: 0200
IF: enp4s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
Local Storage: total: 530.98 GiB used: 161.88 GiB (30.5%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/sda maj-min: 8:0 vendor: Seagate model: ST3320613AS
size: 298.09 GiB block-size: physical: 512 B logical: 512 B speed: 3.0 Gb/s
type: HDD rpm: 7200 serial: <filter> rev: SD22 scheme: MBR
ID-2: /dev/sdb maj-min: 8:16 vendor: Samsung model: SSD 860 EVO 250GB
size: 232.89 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
type: SSD serial: <filter> rev: 4B6Q scheme: GPT
ID-1: / raw-size: 232.59 GiB size: 232.59 GiB (100.00%)
used: 161.88 GiB (69.6%) fs: btrfs dev: /dev/sdb2 maj-min: 8:18
ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
used: 576 KiB (0.2%) fs: vfat dev: /dev/sdb1 maj-min: 8:17
ID-3: /home raw-size: 232.59 GiB size: 232.59 GiB (100.00%)
used: 161.88 GiB (69.6%) fs: btrfs dev: /dev/sdb2 maj-min: 8:18
ID-4: /var/log raw-size: 232.59 GiB size: 232.59 GiB (100.00%)
used: 161.88 GiB (69.6%) fs: btrfs dev: /dev/sdb2 maj-min: 8:18
ID-5: /var/tmp raw-size: 232.59 GiB size: 232.59 GiB (100.00%)
used: 161.88 GiB (69.6%) fs: btrfs dev: /dev/sdb2 maj-min: 8:18
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default)
ID-1: swap-1 type: zram size: 15.53 GiB used: 269.8 MiB (1.7%)
priority: 100 dev: /dev/zram0
Message: No sensor data found. Is lm-sensors configured?
Processes: 436 Uptime: 7h 23m wakeups: 14 Memory: 15.53 GiB
used: 5.76 GiB (37.1%) Init: systemd v: 251 default: graphical
tool: systemctl Compilers: gcc: 12.1.0 alt: 11 clang: N/A Packages: 2011
pacman: 1987 lib: 545 snap: 24 Shell: fish v: 3.4.1 default: Bash v: 5.1.16
running-in: konsole inxi: 3.3.19
Garuda (2.6.4-2):
System install date:     2022-08-29
Last full system update: 2022-06-28
Is partially upgraded:   Yes
Relevant software:       NetworkManager
Windows dual boot:       No/Undetected
Snapshots:               Snapper
Failed units:            bluetooth-autoconnect.service [email protected]

Could you provide the difference between bash and fish? (arent them work together? [like bash is core and fish is wrapper (IDK btw)])

No, they are two different shells. E.g. see:
But you'll find a lot of information on the internet on fish, to check the diferences v/s bash, if needed.
If you want to use only bash, you need to change your shell, and can do it from both the Garuda Assistant and command line.
Please search in the forum, there is plenty of information about that.

1 Like

thx but cant I create my custom commands in fish? (I am using fish now)
so I have to use fish init instead of bashrc?

With fish, you have to use


But first, you have to "study" the different syntax of fish, otherwise your commands won't work.
Otherwise you can change to bash. Fish is only the default.


Thanks a lot bro I really apriciate you guys helpfulness | I have a question general about programming: Does such big projects like in garuda linux, Do you guys write all libraries with math etc. Yourself? or you are using others have built by non-contributors.

Here you will find everything, it consists of open source,
except for the graphics :smiley: ,
many tools were developed and written by the Garuda Linux Developers.
What they were created with, you can also find out there.


And remember that most of the software in a Linux distribution comes from "upstream" (the Kernel, the Desktop Environment, most of the applications).
A distribution consists in putting together these pieces, selecting and especially configuring them to the like of the developers/maintainers. All the above is not developed in a distribution, but integrated (there are exceptions of course). What is developed is normally the additional applications, often consisting in tools, which are specific to a distribution. You will often read of "Garuda Assistant" and many other things normally starting with "Garuda".
This bar between how much is only integrated and how much is developed/customized of course goes much higher for the largest distributions, which have huge resources and probably different objectives (€).
This is a concept I personally often try to enphatize to new users creating issues on applications which are only integrated into Garuda: first always search upstream.
The first step of this "upstream", since we are based on Arch, is the Arch package and relevant bugs. But also here, often Arch maintainers are often "only" packaging the applications which come from a further step upstream (they create something installable in Arch), so most likely (unless there is a packaging error), the issue must be searched upstream where the application is developed.
Just a quick reading here:

1 Like

You are right and thx a lot for help guys I really appriciate what are you doing.

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.