• @kmirl
    link
    English
    499 months ago
    fuck() {
        sudo $(fc -ln -1)
    } 
    

    This function takes the last command and puts sudo in front of it. Actually used it in a zoom call at work without thinking and it took a second to realize why everyone was laughing. Not my invention–came across it years ago on stackoverflow or someplace and thought it was funny/useful.

    kmirl@tux:~$ ls /root
    ls: cannot open directory '/root': Permission denied
    kmirl@tux:~$ fuck
    [sudo] password for kmirl: 
    bin  debs  docs  Mail 
    
      • @subtext
        link
        139 months ago

        According to this super user question, someone said that !! won’t work in a function, so you must use the fc -ln -1 command in a subshell instead. Note the response that says eval shouldn’t be used (not sure why)

          • @subtext
            link
            19 months ago

            Oh good point, I didn’t think about that

        • Johanno
          link
          fedilink
          49 months ago

          Eval shouldn’t be used on userinput. Meaning that if smb other than you may use this to change the system he could put malicious code in the eval part.

          Probably doesn’t matter on shell level

      • @Cinnamon3431
        link
        39 months ago

        no because it takes the previous command and adds sudo to it right?

    • Rustmilian
      link
      English
      15
      edit-2
      9 months ago
      alias fuck='sudo $(fc -ln -1)'
      
  • @[email protected]
    link
    fedilink
    269 months ago

    Lazy vim way I do it:

    ggVG"wY:q! followed by sudo !! then VG"wp:x

    Grab entire file and stuff it in register W

    Exit file

    Reopen sudo

    Select all and replace with register W them write

    • @rtxnM
      link
      English
      289 months ago

      Now I understand how the Adeptus Mechanicus feel when they perform a ritual power-on.

      • @[email protected]
        link
        fedilink
        29 months ago

        Yeah learning about tee from this thread honestly.

        It’s been interesting realizing I had such a useful tool at my disposal but never knew

  • Björn Tantau
    link
    fedilink
    159 months ago

    Is there an editor that can request root privileges without restarting it? That would be quite useful.

  • @[email protected]
    link
    fedilink
    119 months ago

    Kwrite/Kate asks you for password. Seriously, why can’t they all just use pkexec or some abstraction of it?

    Sadly, i currently borked all Qt apps on my Gtk setup.

    • @cybersandwich
      link
      29 months ago

      Neovim, the one true vim, why hast thou forsaken me.

      • StarDreamer
        link
        fedilink
        English
        29 months ago

        Iirc the specific reason behind this is

        • sudo by default requires a tty to run
        • vim’s bang spawns a tty to execute commands
        • nvim’s bang executes the command directly, then pipes the output to nvim

        As a result, sudo (without args) can’t work in nvim as it doesn’t have a tty to prompt the user for passwords. Nvim also used to do what vim did, but they found out spawning the tty was causing other issues (still present in vim) so they changed it.

        • dream_weasel
          link
          fedilink
          1
          edit-2
          9 months ago

          There must be more to this. I just launched a terminal and created a file to test with nvim on arch and it works perfectly fine.

          Take a file, sudo chown root:root filename, sudo chmod 700 filename, edit with nvim and save with :w !sudo tee % then reload. Works fine.

          I’m on arch with suckless st.

          Edit:

          Made a demo vid - https://youtu.be/YKZuAvoSW5g

  • @[email protected]
    link
    fedilink
    4
    edit-2
    9 months ago

    I am here for one reason and one reason alone: source anime is Watamote, episode 12 @18:36

    Tomoko tries to approach a girl, but the wind confuses her and she runs away in embarrassment, even though the girl was really friendly and would have liked to talk to her.

    In the meme, this scene is used to parallel the feeling of an external system blocking an operation that both participants would agree to.

    A similar feeling could be memed with the “myth of consensual sex” format.

  • @[email protected]
    link
    fedilink
    49 months ago

    sudoedit is more secure btw. Many editors are not built to be ran as root, and this copies the file to a temo directory, edits it without root, and then overwrites the original file on save with root.

  • ѕєχυαℓ ρσℓутσρє
    link
    fedilink
    4
    edit-2
    9 months ago

    Use suda.vim for automatically dealing with such cases. Works with neovim as well.

    I’ll also recommend adding the following to your init.lua or some config file because suda doesn’t play nicely with nvim -d or vimdiff.

    -- Disable Suda in diff views
    if not vim.api.nvim_win_get_option(0, 'diff') then
        vim.g.suda_smart_edit = 1
    end
    

    The vimscript version of the same would be:

    " Disable Suda in diff views
    if ! &diff
        let g:suda_smart_edit = 1
    endif