danhper / fundle

A minimalist package manager for fish shell
MIT License
375 stars 22 forks source link

Unknown option "name_path" #16

Closed iampeterbanjo closed 8 years ago

iampeterbanjo commented 8 years ago

My terminal output is

Installing edc/bass
read: Unknown option “name_path”
/home/iampeterbanjo/.config/fish/functions/fundle.fish (line 248):      echo $name_path | sed -e 's/:/ /' | read -l -a name_path

I do have $name_path set which just outputs an empty line i.e echo $name_path

I'm running Fedora 23

Can you please help?

danhper commented 8 years ago

Hi and thanks for reporting! Could you tell me what version of fish you are using please?

iampeterbanjo commented 8 years ago

Hi, thanks for getting back to me

My version 2.2 x86_64

I installed it from the repo this morning - wget http://download.opensuse.org/repositories/shells:fish:release:2/Fedora_23/shells:fish:release:2.repo

danhper commented 8 years ago

Thank you for the details, I am going to take a look!

iampeterbanjo commented 8 years ago

I think it is some issue with Fedora's shell. I had similar problem's using Fisherman. It said "alias is not defined" fisherman line:2. I traced it to a line that was using the read command with the -a flag i.e read -la alias. If removed the flag so the line was read -l alias fisherman ran without warnings except grep: warning: GREP_OPTIONS is deprecated; please use an alias or script

So I decided to move to Ubuntu which is working well

danhper commented 8 years ago

Hi, I just tried on a clean Fedora 23 box but I could not reproduce the issue.

Here is the Vagrantfile I used

Vagrant.configure(2) do |config|
  config.vm.box = "fedora23"
  config.vm.box_url = "https://download.fedoraproject.org/pub/fedora/linux/releases/23/Cloud/x86_64/Images/Fedora-Cloud-Base-Vagrant-23-20151030.x86_64.vagrant-virtualbox.box"

  config.vm.provision "shell" do |s|
    s.inline = <<SCRIPT
    dnf config-manager --add-repo http://download.opensuse.org/repositories/shells:fish:release:2/Fedora_23/shells:fish:release:2.repo
    dnf install -y wget git fish
    sudo -H -u vagrant mkdir -p .config/fish/functions
    sudo -H -u vagrant wget https://raw.githubusercontent.com/tuvistavie/fundle/master/functions/fundle.fish -O .config/fish/functions/fundle.fish
    echo -e "fundle plugin 'edc/bass'\nfundle plugin 'tuvistavie/fish-theme-afowler'\n\nfundle init" | sudo -H -u vagrant tee .config/fish/config.fish
    sudo -H -u vagrant fish -c 'fundle install'
SCRIPT
  end
end

It would be really nice if you could try to get something that can be reproduced inside a VM. Thank you.

iampeterbanjo commented 8 years ago

Thank you for your time. it looks like something weird happened - mine was a fresh install on my laptop too

danhper commented 8 years ago

@iampeterbanjo No problem, I guess my comment was a little too late :smile: I wonder what was the issue. Anyway, let's keep that closed, if someone else has the same issue we will reopen!

iampeterbanjo commented 8 years ago

:+1: :)

andreicek commented 7 years ago

I'm having the same problem on RASPBIAN JESSIE LITE.

read: Unknown option “name_path”
/home/andrei/dotfiles/fish/functions/fundle.fish (line 248):        echo $name_path | sed -e 's/:/ /' | read -l -a name_path
                                                                             ^
in function “__fundle_init”,
    called on line 366 of file “/home/andrei/dotfiles/fish/functions/fundle.fish”,
    with parameter list “”

in function “fundle”,
    called on standard input,
    with parameter list “init”

       read - read - read line of input into variables

read - read line of input into variables
   Synopsis
       read [OPTIONS] [VARIABLES...]

read: Type “help read” for related documentation

fish: Could not expand string “$name_path[2]”
/home/andrei/dotfiles/fish/functions/fundle.fish (line 249):        __fundle_profile_or_run $profile __fundle_load_plugin $name_path[1] $name_path[2] $fundle_dir $profile
                                                                                                                                                 ^
in function “__fundle_init”,
    called on line 366 of file “/home/andrei/dotfiles/fish/functions/fundle.fish”,
    with parameter list “”

in function “fundle”,
    called on standard input,
    with parameter list “init”