• 1 Post
  • 10 Comments
Joined 1 year ago
cake
Cake day: June 3rd, 2023

help-circle





  • Before I even get there, the instructions say I should be able to run

    curl localhost:8536/api/{version}/site
    

    And it should return some json structure.

    But I see this returning 404

    lemmy_server[41511]: 2023-06-09T17:02:35.296098Z  INFO actix_web::middleware::logger: 127.0.0.1 "GET /api/0.17.3/site HTTP/1.1" 404 0 "-" "curl/7.81.0" 0.000074
    

    Is that the correct way to specify the version?

    Is there a better log than journalctl which would actually tell me what REST endpoints it is using?


  • Thank you!

    So the git based build instructions from @Grouchy@lemmy.grouchysysadmin.com works.

    What was missing for me was then the rust version and the full list of sql commands.

    1. Rust version
    
    Remove rust installed from Ubuntu apt repo (v 1.65)
    Install rust from rustup (v 1.70)
    
    2. Postgres commands
    
    sudo -iu postgres psql -c "CREATE USER lemmy WITH PASSWORD 'db-passwd';"
    sudo -iu postgres psql -c "CREATE DATABASE lemmy WITH OWNER lemmy;"
    sudo -iu postgres psql -c "ALTER USER lemmy WITH SUPERUSER;"
    
    
    

  • So I am able to build from the git repo.

    Had to remove rust from apt (v 1.65)

    And install rust from rustup (v 1.70)

    That fixes the build, but now I still get this db migrations error on startup.

    Jun 09 15:47:37 ip-x systemd[1]: Started Lemmy - A link aggregator for the fediverse.
    Jun 09 15:47:37 ip-x lemmy_server[15239]: 2023-06-09T15:47:37.238544Z  INFO lemmy_db_schema::utils: Running Database migrations (This may take a long time)...
    Jun 09 15:47:37 ip-x lemmy_server[15239]: thread 'main' panicked at 'Couldn't run DB Migrations', crates/db_schema/src/utils.rs:165:25
    Jun 09 15:47:37 ip-x lemmy_server[15239]: note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
    Jun 09 15:47:37 ip-x systemd[1]: lemmy.service: Main process exited, code=exited, status=101/n/a
    
    

    I know it can connect to the db because I see it created some tables already.

    I wonder if this is related to this warning regarding schema, which I see during the build.

    warning: /root/git-clones/lemmy/crates/api_common/Cargo.toml: `default-features` is ignored for lemmy_db_schema, since `default-features` was not specified for `workspace.dependencies.lemmy_db_schema`, this could become a hard error in the future
    

  • Thanks.

    So if I go on a mad chmod spree, making /usr/bin/lemmy_server and all of its dependencies readable/executable (which is super insecure) I finally get to this log message in journalctl:

    Jun 07 13:50:57 ip-172-31-4-153 lemmy_server[3868]: thread 'main' panicked at 'C
    ouldn't run DB Migrations', /home/ubuntu/.cargo/registry/src/index.crates.io-6f1
    7d22bba15001f/lemmy_db_schema-0.17.3/src/utils.rs:165:25
    

    Which is this code:

    pub fn run_migrations(db_url: &str) {
      // Needs to be a sync connection
      let mut conn =
        PgConnection::establish(db_url).unwrap_or_else(|_| panic!("Error connecting to {db_url}"));
      info!("Running Database migrations (This may take a long time)...");
      let _ = &mut conn
        .run_pending_migrations(MIGRATIONS)
        .unwrap_or_else(|_| panic!("Couldn't run DB Migrations"));
      info!("Database migrations complete.");
    }
    

    Hope that helps someone figure this out.

    I’m pretty unhappy that I can’t get this to work.